トレーディングビュー(TradingView)Pineスクリプト入門#8|「fill」を使ってラインやプロット間の色を変える

タイトル「fill」の使い方

Pineスクリプト入門#8では、「fill」を使ってラインやプロット間の色を塗りつぶす方法をご紹介します。

「fill」を使ったストラテジースクリプト

「fill」関数とは?

前回の記事では「bgcolor」は背景色を変更するのに対して、「fill」はラインとラインの間を塗りつぶす(その部分だけの背景色を変更)することができます。

一目均衡表の雲をイメージするとわかりやすいと思います。

「fill」関数に使用できる引数

hline:背景色を塗りつぶしたいラインを2つ指定。必須の引数。

plot:背景色を塗りつぶしたいラインを2つ指定。必須の引数。

color:hlineまたはplot間の背景色を指定。

transp:塗りつぶした背景色の透明度。不透明(0)~透明(100)の範囲で指定。

title:塗りつぶした背景色のタイトル。

editable :true/falseで指定。true(デフォルト)の場合、設定画面で背景色の変更が可能。

show_last :設定した場合、背景色を変更するバーの数を指定。

「hline」「plot」は必須の引数と書きましたが、どちらか一方のみで大丈夫です。

「fill」を使ってライン間の色を塗りつぶす

fill有り無し比較画像

前回の記事で作成したスクリプトに「fill」を追加し、移動平均線間の背景色を塗りつぶしてみました。ゴールデンクロスの場合は「緑」、デッドクロスの場合は「白」で表示しています。

短期MAと長期MAの間の背景色を塗りつぶすことで、それぞれの移動平均線がどれだけ乖離しているかわかりやすくなりましたね!

実際に「fill」を使ってスクリプトを作成

それでは前回の記事で作成したスクリプトに「fill」を追加し、実際にスクリプトを作成してみましょう。

まずは、過去の記事で追加した移動平均線の「plot」を変数に変更しましょう。コードの先頭に任意の変数名を付け加えるだけで完了です。

今回はそれぞれの変数名を「p1」「p2」としました。

// 確認用の表示 ------------------------------------------------
p1 = plot(short_sma, color=#ff0000, title="短期MA")
p2 = plot(long_sma, color=#3300ff, title="長期MA")

次に「fill」関数の追加しましょう。先ほどの変数を使ってplot引数を指定し、任意の条件で背景色を変更します。

//ライン間の背景色変更-----------------------------------------
fill(p1, p2, color = short_sma > long_sma ? color.green : color.white, transp = 70)

今回作成したコードの意味は、「変数p1、p2間の背景色を変数shor_smaがlong_smaよりも大きい場合、透明度70の緑色に塗りつぶし、それ以外は透明度70の白色に塗りつぶす。」になります。

「color」にはカラーコードで色を指定する方法とあらかじめ設定されている定数で指定する方法があります。下記があらかじめ設定されている定数です。

「color.aqua」「color.black」「color.blue」「color.fuchsia」「color.gray」「color.green」「color.lime」「color.maroon」「color.navy」「color.olive」「color.orange」「color.purple」「color.red」「color.silver」「color.teal」「color.white」「color.yellow」

今回のまとめ

今回は「fill」を使って、移動平均線などにおけるプロット間の背景色変更方法をご紹介しました。

長期MAと短期MA間の背景色を変更すると、各平均線がどれだけ乖離しているか、上昇、下降しているかを直感的にわかりやすくすることができますね。類似の関数「bgcolor」と必要に応じて使い分けてみてください。

今回は以上です。ありがとうございました。

コメント

タイトルとURLをコピーしました