2016年8月20日土曜日

ローソク足の順序変更 その2 移動平均乖離率

 先のローソク足の順序変更で議論したものを関数化した。次のようなチャートになる。

チャート中の赤い曲線はオープンギャップ(当日始値/前日終値-1)の値である。また、ローソク足は、実際の金額ではなくて、始値からの比率とした。例えば、終値については 終値/始値-1 の値である。そのほかも同じで、始値は0となる。
オープンギャップだけではもったいないので、ほか指数でも同様にソートしてローソク足を表示するようにしてみた。
関数名はsortChartで第1引数に日足4本値データ、第2引数に指数を書く。5日移動平均からの乖離率を指数とするには次のように使う。


第2引数 lag(Delt(SMA(Cl(z),5),Cl(z))) について説明する。zは日足4本値データxts型で、Cl(z)はその終値である。SMAは移動平均を求める関数で、SMA(Cl(Z),5)で5日移動平均を求めている。Deltは比率を求める関数で、Delt(a,b)でb/a-1を計算する。Delt(SMA(Cl(z),5),Cl(z))で5日移動平均からの乖離率となる。lagを付けないとピッタリ符合するのだが、前日の終値の乖離率から判断するのだからlagが必要だ。チャートの赤い線が乖離率である。



同様に25日移動平均からの乖離率でみると


参考までにソースは次の通り

8行め中ほどのinfo(z)は私設の関数。zのコード・銘柄名・市場・業種と、次の1は貸借銘柄を意味する文字列を返す。もしも万が一このコードを動かしてみたいと思われるのならば、この部分を削除し、先頭に library(quantmod) と入れれば動くと思われる。 

9行めのコメントは10行めと取り換えると、指数をチャート内に表示するように縮尺する。

第2引数を省略するとオープンギャップを採用する。

各値がわかるように、データフレームを返すようにしてある。

0 件のコメント:

コメントを投稿