無料チャートアプリ、TradingViewでインジケーターを自作する ~ ②ボリンジャーバンドの標準偏差を、複数同時表示する
おはこんばんわ!たこやきです。
今回は、無料チャートアプリ「TradingView」のインジケーター自作第二弾として、
「ボリンジャーバンドの標準偏差を、複数同時表示する」
について、解説していきます。
TradingViewでインジケーターを自作するための基本的な操作については、
第一弾の「移動平均線を3本同時表示する」にて写真付きで詳しく述べていますので、ぜひ参考にしてみて下さい。
まず、ボリンジャーバンドってなに?
「ボリンジャーバンド」は、移動平均線を応用したインジケーターです。
標準偏差という、一定期間のデータの散らばり具合を表す数値を割り出します。
その標準偏差の1倍~3倍の値を、移動平均の値に足したものが、ボリンジャーバンドになります。
通常、ほとんどの株価が、このボリンジャーバンド内に収まるはずです。
ボリンジャーバンドの±1σの範囲内に収まる確率・・・約68.3%
ボリンジャーバンドの±2σの範囲内に収まる確率・・・約95.4%
ボリンジャーバンドの±3σの範囲内に収まる確率・・・約99.7%
ですので、この幅から逸脱するときは、大きく値段が動いたときですので、トレンドの転換点となるサインの一つ、というわけですね。
他にも様々なサインの元となるボリンジャーバンドですが、TradingViewでは、同時に表示できる標準偏差が1つだけです。
複数の標準偏差を一つのインジケーターで表示できないかな・・・とまた、インジケーターの自作をしてみました。
内蔵のボリンジャーバンドを表示させる
まずは前回同様、内蔵のインジケーターを表示します。
画面上の「インジケーター」をクリックし、「内蔵」から「ボリンジャーバンド」を選択します。
Bから始まる単語ですから、かなり上の方にあります(単純移動平均線は「SMA」なので、かなり下でした。)。
インジケーターをコピペする
このへんも前回と一緒です。
左上の「BB」にカーソルを合わせ、「{ }」をクリックします。
画面下にソースコードが表示されます。
画面真ん中の右側、「・・・」をクリックし、「コピーを作成」をクリックします。
わかりやすい名前を付けてあげてください。
数値やタイトルを直す
一度内蔵のインジケーターを「×」をクリックして消します。
再び「インジケーター」「マイスクリプト」から、さきほどコピーしたインジケーターを選択します。
んでまた、「{ }」をクリックして、ソースコードを表示してください。
下のような文章が表示されたかと思います。
この中で、太字黄色マーカーの部分をコピペしてください。
//@version=5
indicator(shorttitle="BB", title="Bollinger Bands", overlay=true, timeframe="", timeframe_gaps=true)
length = input.int(20, minval=1)
src = input(close, title="Source")
mult = input(2.0, minval=0.001, maxval=50, title="StdDev")
basis = sma(src, length)
dev = mult * stdev(src, length)
upper = basis + dev
lower = basis - dev
offset = input(0, "Offset", type = input.integer, minval = -500, maxval = 500)
plot(basis, "Basis", color=#FF6D00, offset = offset)
p1 = plot(upper, "Upper", color=#2962FF, offset = offset)
p2 = plot(lower, "Lower", color=#2962FF, offset = offset)
fill(p1, p2, title = "Background", color=color.rgb(33, 150, 243, 95))
ちょっとだけコードを解説します。
「mult」は標準偏差の倍率ですね。デフォルトが「2.0」になっています。
「dev」は標準偏差を「mult」倍した数値になります。
「upper」は、ベースとなる単純移動平均線に、+devした値です。
「lower」は、ベースとなる単純移動平均線に、-devした値です。
「p1」は、「plot」という命令で「upper」の値のところに線を引き、かつその線を「p1」に記録しておいています。
「p2」は「p1」同様、「plot」という命令で「lower」の値のところに線を引き、かつその線を「p2」に記録しておいています。
「fill」という命令は、「p1」から「p2」までを塗りつぶせ、という命令ですね。
そして、青字の部分を下のように修正します。
面倒な方は、下記コードをコピペして使ってください。
//@version=5
indicator(shorttitle="BB Original", title="Bollinger Bands 1-2dev", overlay=true, timeframe="", timeframe_gaps=true)
length = input(20, minval=1)
src = input(close, title="Source")
basis = sma(src, length)
offset = input(0, "Offset", type = input.integer, minval = -500, maxval = 500)
plot(basis, "Basis", color=#FF6D00, offset = offset)
mult1 = input(1.0, minval=0.001, maxval=50, title="StdDev1")
dev1 = mult1 * stdev(src, length)
upper1 = basis + dev1
lower1 = basis - dev1
p1 = plot(upper1, "Upper1", color=#2962FF, offset = offset)
p2 = plot(lower1, "Lower1", color=#2962FF, offset = offset)
fill(p1, p2, title = "Background1", color=color.rgb(33, 150, 243, 95))
mult2 = input(2.0, minval=0.001, maxval=50, title="StdDev2")
dev2 = mult2 * stdev(src, length)
upper2 = basis + dev2
lower2 = basis - dev2
p21 = plot(upper2, "Upper2", color=color.green, offset = offset)
p22 = plot(lower2, "Lower2", color=color.green, offset = offset)
fill(p21, p22, title = "Background2", color=color.green)
最後に、画面真ん中の右側、「保存」をクリックし、完成です☆彡
これで、「標準偏差の1倍と2倍の幅を表示するボリンジャーバンド」ができたはずです。
「歯車」をクリックすることで、標準偏差の倍数は自由に変更できます。
まとめ
- TradingViewは、見やすくて多機能、優秀なチャートツールです!
- TradingViewの無料会員は、同時に3つまでしかインジケーターの表示ができない・・・・。
- TradingViewは、オリジナルのインジケーターが作れる!
- 一つのインジケーターに、複数のインジケーターをぶっこんだ、オリジナルのインジケーターを作ろう!
- ボリンジャーバンドの標準偏差を2つ同時表示に挑戦!ほとんどコピペで完成しました!
- 注意:無料会員は、オリジナルのインジケーターは一つまでしか同時表示できません。