目次
概要
この記事では、以下の内容を扱います。
・ボラティリティ(Volatility)の使い道の紹介
・ボラティリティ(Volatility)を表示させるMT4のインジケーターの紹介
ボラティリティ(Volatility)とは
ボラティリティ(Volatility)とは価格の変動率です。
ボラティリティが低いことは、値動きが活発でないことを意味します。
逆に、ボラティリティが高いことは、値動きが活発であることを意味します。
ボラティリティは、ボラと略されて呼ばれることがあり、「ボラが低い」「ボラが高い」という表現を見かけることがあります。
ボラティリティの利用方法
ボラティリティが低い場合、以下のような特徴があります。
・相場の参加者が少ないことを示唆
・方向性が定まっていないレンジ相場であることが多い
・値動きの上下の幅が小さい→利益を伸ばしづらい
そのため、ボラティリティが低い場合は取引を避けるという判断に利用できたりします。
ボラティリティの確認方法
ボラティリティの高低を判断する方法・流儀はいくつかあります。
この記事では、ボリンジャーバンドの上バンドと下バンドの間の幅で判断する方法を扱います。
通貨ペアによって、ボラティリティがあると判断する閾値は変わってきます。
※書籍だと『世界一わかりやすい! FXチャート実践帳 スキャルピング編』(二階堂 重人)のP59が参考になります。
ボラティリティの使い方
ボラティリティは、トレードするかしないかのフィルターとして使用することが多いと思われます。
エントリーのシグナルとしては使いづらいです。
※シグナルとして、全く使えないわけではありません。
ボラティリティが低い状態から高い状態に移行する時は、新しいトレンドが形成される兆候となる場合があります(いわゆる、スクイーズ状態からエクスパンション状態の移行)。この際に順張りするとかは、考えられます。
以下のようにパターンをまとめることができます。
ボラティリティが小さい→大きい
新たな秩序の形成(トレンドの始まり)
ボラティリティが大きい→小さい
現在の秩序の消失(トレンドの終わり)
ソースコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 |
//+------------------------------------------------------------------+ //| ProjectName | //| Copyright 2012, CompanyName | //| http://www.companyname.net | //+------------------------------------------------------------------+ #property indicator_separate_window #property indicator_buffers 5 #property indicator_color1 LightBlue #property indicator_color2 DeepSkyBlue #property indicator_color3 Red //値が200と400の部分にラインを引いておく #property indicator_level3 400 #property indicator_level4 200 #property indicator_separate_window // 指標バッファ double BufUp[]; double BufDown[]; double BufMain[]; double BufUpperAllow[]; double BufLowerAllow[]; // 外部パラメータ extern int BandsPeriod=21; extern double BandsDeviation=3.0; extern int SignalGap=10; extern double VariationLimit=60; extern ENUM_APPLIED_PRICE applied_price=PRICE_CLOSE; // 初期化関数 int init() { // 指標バッファの割り当て SetIndexBuffer(0,BufMain); SetIndexBuffer(1,BufUp); SetIndexBuffer(2,BufDown); SetIndexBuffer(3,BufUpperAllow); SetIndexBuffer(4,BufLowerAllow); SetIndexStyle(0,DRAW_LINE); SetIndexStyle(1,DRAW_LINE); SetIndexStyle(2,DRAW_LINE); SetIndexStyle(3,DRAW_ARROW,STYLE_SOLID,1,Aquamarine); SetIndexStyle(4,DRAW_ARROW,STYLE_SOLID,1,Red); SetIndexArrow(3,241); SetIndexArrow(4,242); // 指標ラベルの設定 return(0); } // スタート関数 int start() { int limit=Bars-IndicatorCounted(); for(int i=limit-1; i>=0; i--) { double dev=iBands(NULL,0,BandsPeriod,1,0,applied_price,MODE_UPPER,i) -iBands(NULL,0,BandsPeriod,1,0,applied_price,MODE_LOWER,i); BufMain[i]=dev/Point; if(BufMain[i]>=BufMain[i+1]) { BufUp[i]=BufMain[i]; BufDown[i]=EMPTY_VALUE; } else { BufUp[i]=EMPTY_VALUE; BufDown[i]=BufMain[i]; } // 下記2行は補間のため。 if(BufUp[i]!=EMPTY_VALUE && BufUp[i+1]==EMPTY_VALUE) BufUp[i+1]=BufMain[i+1]; if(BufDown[i]!=EMPTY_VALUE && BufDown[i+1]==EMPTY_VALUE) BufDown[i+1]=BufMain[i+1]; //現在の傾きと1つ前の傾きの差分を求める。 double variation=(BufMain[i]-BufMain[i+1])-(BufMain[i+1]-BufMain[i+2]); //傾きが急激に変化した場合、矢印を表示する if(variation>VariationLimit) { BufUpperAllow[i]=BufMain[i]+SignalGap*Point; } if(variation<-VariationLimit) { BufLowerAllow[i]=BufMain[i]-SignalGap*Point; } } return(0); } //+------------------------------------------------------------------+ |
説明
ボリンジャーバンドの+3σと-3σの差分(つまり6σ分)を下のサブウィンドウで表示しています。
この値が大きければ、ボラティリティがあると判断できます。
参考のために200Pointと400Pointのラインを引いています。
タイムフレームが1Hであれば、200 Point以下でボラがなく、400Point以上で、ボラが高すぎると判断しています。
(使用する通貨、タイムフレームによって最適なラインは異なります。)
ボラティリティが小さくなれば、赤色になります。
ボラティリティが大きくなれば、青色になります。
また、急激にボラティリティが変化している場合は矢印マークが表示されます。
色の変わるロジックは以下のサイトを参考に作成しました。
https://fai-fx.hatenadiary.org/entry/20100721/1279644067
作成動機
ビクトリーメソッドと呼ばれる非常に有名な情報商材がある。
(サイト主もビクトリーメソッドは購入しています)
その手法では、一定以下のボラティリティでは取引すべきでないという説明がある。
そこで、ボラティリティが視覚的にわかるインジケーターが欲しくなって作成した。
~FXを始めてみませんか?~
XMは、口座を開設するだけで、3000円のボーナスが無料でもらえます。
資金はないけど、FXを試しに挑戦してみたい方でも大丈夫です。
(サイト主もXMを使用しています)