無料チャートアプリ、TradingViewでインジケーターを自作する ~ ④ DMAを表示する
おはこんばんわ!たこやきです。
今回は、無料チャートアプリ「TradingView」のインジケーター自作第4弾として、
「DMA(Displaced Moving Average:ずらした移動平均線)を3本表示させる」方法について、解説させていただきます。。
「DMA」ってなに?
「DMA」とは、 「Displaced Moving Average:ずらした移動平均線」 のことです。
個人投資家として著名な、ジョー・ディナポリ氏が考案した「ディナポリ手法」に必要な、すこし特殊なインディケーターになります。
特殊と言っても、要は
普通の移動平均線(SMA)を、右にずらして表示させている
だけのことです。
実際の細かい設定については、以下の通り。
短期:期間 3、移動 3
中期:期間 7、移動 5
長期:期間 25、移動 5
現在、FXにおいてよく使用される手法のようですが、もともとジョー・ディナポリ氏は株式の先物で使っていた手法だそうです。
ですので、株式や仮想通貨の売買にも活用できそうですね。
「ディナポリ手法」には他に「フィボナッチ・リトレースメント」「フィボナッチ・エキスパンション」「MACD」「ストキャスティクス」などを使用するそうです。
ですがここでは、ディナポリ手法そのものへの解説はせず、あくまで「DMA」の設定の仕方についての解説とさせていただきます。
DMAの特徴・メリットは?
DMAは、SMAをN日間、未来にずらして表示しています。
その分、ローソク足から少しずれて表示されることになります。
通常、トレンド中においても、ちょっとした上昇・下落や持ち合いなど、今のトレンドに逆らう値動きはしょっちゅう発生するかと思います。
このような値動きの事を、ディナポリ氏は「ちゃぶつき」と称したそうです。
通常のSMAだと、この「ちゃぶつき」が短期SMAとかぶりやすく、トレンド継続か、それとも転換か迷う局面があります。
ですが、DMAだと未来にずれて表示されている分、小さな値動きではローソク足がDMAとクロスせず、トレンドの把握に迷いが生じにくくなります。
このように、ローソク足の終値が3DMAを超えない期間が長く続く場合(8期間以上)を
「スラスト」
といい、強いトレンドが発生していることを示すそうです。
このスラストとフィボナッチを活用するのが「ディナポリ式」なんだそうです。
確かに、トレンドの把握がしやすくなった気がします。
Trading ViewでDMAを自作する
DMAを自作する:① 以前自作したSMA3本表示のインジケーターを表示する
DMAは基本、ずらしたSMAです。ですので、以前作ったSMA3本同時表示のインジケーターをちょいといじれば事足ります。
以前作成した、SMA3本同時表示する自作インジケーターについての記事リンクを貼っておきますね。
まだご覧になっていない方は、ぜひご一読ください。
さて、手順は前回通り。
画面上部、「インジケーター&ストラテジー」をクリックし…
「マイスクリプト」内の、前回作成したSMA×3のインジケーターをクリック。
SMA×3のインジケーターが表示されたはずです。
DMAを自作する:② SMA3本のインジケーターをコピペする
画面左上、新たに表示されたSMA×3のインジケーターの「{}(ソースコード)」をクリック。
ソースコードが表示されました。
Pineエディタの右端、「・・・」をクリックし、「コピーの作成」をクリック。
適当な名前を付けてください。今回は「DMA」としました。
一旦、SMA×3のインジケーターは閉じ、コピーした「DMA」のインジケーターを開いて、ソースコードを表示しておいてください。
DMAを自作する:③ 数値やタイトルを変更する
下記が、編集前のソースコードになります。
太い赤字部分を直していただければOKです。
//@version=4
study(title="Moving Average3", shorttitle="MA3", overlay=true, resolution="")
//MAshort
offset = input(title="Offset", type=input.integer, defval=0, minval=-500, maxval=500)
src = input(close, title="Source")
len_S = input(5, minval=1, title="Length_S")
out_S = sma(src, len_S)
plot(out_S, color=color.new(color.red,0), title="MA_S", offset=offset, linewidth=1)
//MAmiddle
len_M = input(20, minval=1, title="Length_M")
out_M = sma(src, len_M)
plot(out_M, color=color.new(color.yellow,0), title="MA_M", offset=offset, linewidth=1)
//MAlong
len_L = input(75, minval=1, title="Length_L")
out_L = sma(src, len_L)
plot(out_L, color=color.new(color.green,0), title="MA_L", offset=offset, linewidth=1)
なおす内容についてですが、ディナポリ式のDMAパラメーターは、以下のとおりでしたね。
短期:期間 3、移動 3
中期:期間 7、移動 5
長期:期間 25、移動 5
DMAのパラメータを、下記のように入力し、反映させてあげましょう。
面倒な方は、下のコードをそのままコピペした頂いても結構ですよ。
//@version=4
study(title="Displaced Moving Average*3", shorttitle="DMA", overlay=true, resolution="")
//DMAshort
offset_S = input(title="Offset_S", type=input.integer, defval=3, minval=-500, maxval=500)
src = input(close, title="Source")
len_S = input(3, minval=1, title="Length_S")
out_S = sma(src, len_S)
plot(out_S, color=color.new(color.red,0), title="DMA_S", offset=offset_S, linewidth=1)
//DMAmiddle
offset_M = input(title="Offset_M", type=input.integer, defval=5, minval=-500, maxval=500)
len_M = input(7, minval=1, title="Length_M")
out_M = sma(src, len_M)
plot(out_M, color=color.new(color.yellow,0), title="DMA_M", offset=offset_M, linewidth=1)
//DMAlong
offset_L = input(title="Offset_L", type=input.integer, defval=5, minval=-500, maxval=500)
len_L = input(25, minval=1, title="Length_L")
out_L = sma(src, len_L)
plot(out_L, color=color.new(color.green,0), title="DMA_L", offset=offset_L, linewidth=1)
変更内容について、簡単に解説しておきますね。
・「len_S」はSMAの算定する期間です。短期:3、中期:7、長期:25ですので、それぞれちがう数値にできるよう、「len_S」 「len_M」 「len_L」 の3つを用意しました。
・「src」はどの数値でSMAを計算するか、です。もともとはclose(一日の終値)。変更はありません。
・「offset_S」は表示位置です。「defval=3」変更点。0がふつう、-にすると左に、+にすると右に表示がずれます。
今回は、ここが重要な変更ポイント!短期はローソク足3本分、右にずらしてます。短期、中期、長期でそれぞれちがう数値にできるよう、「offset_S」 「offset_M」 「offset_L」 の3つを用意しました。
・「out」は単純移動平均の計算結果を入れる入れ物です。右の式、「= sma(src, len)」が自動で計算してくれます。変更ありません。
・「plot」は、チャート上に線を表示しろ、という命令です。()の中のコード、「out」を表示し、色は「color=color.red」で赤に、「title="DMA_S"」は表示する線の名前、「offset_S」は表示位置ですね。短期、中期、長期でそれぞれ「offset_S」 「offset_M」 「offset_L」と使い分けています。
最後に、画面真ん中の右側、「保存」をクリックし、完成です☆彡
みごと、DMAが表示されました♪
《Trading ViewでDMAを自作する:まとめ》
- TradingViewは、見やすくて多機能、優秀なチャートツールです!
- TradingViewの無料会員は、同時に3つまでしかインジケーターの表示ができない・・・・。
- TradingViewは、オリジナルのインジケーターが作れる!
- 一つのインジケーターに、複数のインジケーターをぶっこんだ、オリジナルのインジケーターを作ろう!
- ディナポリ手法に必要な、ずらしたSMA、「DMA」の自作に挑戦!ほとんどコピペで完成しました!
- 注意:無料会員は、オリジナルのインジケーターは一つまでしか同時表示できません。