「自前のシステムトレード環境でどのようにトレードすることができるだろう・・・?」
そう考えている方は多いと思います。
自動売買を行う上で一つのポイントがシステムトレードをどのように行うか、言い換えればどのようなロジックで売買をしていくかという点です。
様々な方法が考案されていますが、この記事ではボリンジャーバンドを使った方法を紹介していきます。
ボリンジャーバンドとは?
まずはボリンジャーバンドが何かについて紹介していきましょう。
ボリンジャーバンドとはテクニカル指標のひとつであり、相場の振れ幅(ボラティリティ)を一定期間の価格データから測定し、統計学的な観点から価格の変動範囲を予測してチャート上に表示するものです。「ボリンジャー」とは、開発者である米国人投資家のジョン・ボリンジャー氏(John A. Bollinger)の名を冠したものですが、彼はボリンジャー・キャピタルマネジメントの創始者兼社長であり、現在も世界中で講演をするなどボリンジャーバンドを広める活動をしています。
ボリンジャーバンドを理解するポイントとしては以下の点があげられます。
- 一定期間における標準偏差から出す指標
- バンドの移動平均線でトレンドを見る
標準偏差とは、一定期間の終値など複数のデータから平均値を算出した場合に、基になった複数のデータにどの程度ばらつきがあるか、散らばり具合を表す数値です。標準偏差の算出式は以下の数式で算出されます。

標準偏差の単位はσ(シグマ)が使われるため、ボリンジャーバンドで描かれるラインを指して1σ(シグマ)などと呼ぶこともあります。
1σ(シグマ=標準偏差)の値とは、データの散らばり具合が平均値を中心にプラスマイナスへ均等に分布している正規分布である場合、平均値プラスマイナス1σの範囲内に約68%のデータが収まる範囲を意味します。平均値を中心に徐々に範囲を広げていき、データの約68%が収まる範囲のプラス側またはマイナス側どちらか片方の平均値からの距離と言うことができます。
標準偏差が大きくということはデータが大きく散らばっていることを示しており、データの散らばりが狭い範囲に限定されていれば値は小さくなります。また、平均値を中心に標準偏差を2倍したプラスマイナス2σの範囲にはデータの約95%が、標準偏差を3倍した3σの範囲はデータの約99%が収まる範囲となっています。
ボリンジャーバンドは通常、アッパーバンド2(+2σのライン)、アッパーバンド1(+1σのライン)、ミッドバンド(移動平均線)、ロワーバンド1(-1σのライン)、ロワーバンド2(-2σのライン)の5本のラインを価格チャート上に描きます。ミッドバンドの移動平均線には、一般に20~25 SMA(20〜25サンプルの単純移動平均線)が使われます。
ボリンジャーバンドの見方
ボリンジャーバンドは相場が膠着するレンジ相場においてバンド幅が狭まる傾向があり、価格変動の大きな相場ではバンドが開いていきます。相場の力学では、値幅が小さな膠着状態が続いている相場は次に動くためのエネルギーを溜めていると考えられ、大きく推移する大相場ではその溜められたエネルギーを放出する状況と捉えます。
つまり、ボリンジャーバンドが狭まり収縮している場合とは、大きく動く前触れと言うことが出来ます。逆に、ボリンジャーバンドが大きく拡大したあとで収縮に転じる動きは、一相場が終わってエネルギーを放出し終えたことを示唆していると見ることができます。
ボリンジャーバンドの利用方法としては主に二つの方法があります。
バンドを抵抗とした逆張り

統計学的には、正規分布において標準偏差をとった場合、1σ(標準偏差)内に事象が存在する確率は約68%、2σ内に事象が存在する確率は約95%とされています。これを利用し、価格がアッパーバンド2(+2σ)と交差したときに売り、ロワーバンド2(−2σ)と交差したときに買いとすることで、平均値への回帰を前提とした逆張り戦略が可能となります。
価格が2σ内で変動する確率が約95%となることから、理論的に価格はそのほとんどが2σの範囲に収まるはずであり、2σを越えるということは過去の値動きからすれば「異常な価格」であるため、いずれ修正されるという考え方です。
実際にボリンジャーバンドが拡大していない局面ではこの逆張り分析方法が有効な場合がありますが、開発者のボリンジャー自身はその様な単純な利用法を否定しており、次に説明するボラティリティ・ブレイクアウトを使った順張りを推奨しています。その理由としては、相場における価格変動が平均を周囲に回帰するという正規分布に従わない「トレンド」が存在するという背景があります。
この辺りの話はまた別のところで紹介しましょう。
ボラティリティ・ブレイクアウトを使った順張り

ボラティリティ・ブレイクアウトは、収縮して幅が狭くなったバンドが横ばい状態を続けた後に価格変動を伴ってバンド幅が拡大し始め、バンド2(±2σのライン)の外で終値を付けた時にブレイクした方向へポジションを取る売買方法です。
これは小動きの中でエネルギーを溜めた相場が、ボラティリティの高まりを伴ってバンドを突破した時にトレンドが発生する可能性が高いことを利用するものです。ボラティリティ・ブレイクアウトの発生した相場は、その後バンドの拡大にと合わせてバンド上を沿って動く可能性が高く、これを「バンド・ウォーク」と呼び、「トレンド」の継続を示唆するサインと判断します。
ボラティリティ・ブレイクアウトを使った売買で決済(クローズ)するタイミングは、バンド幅が拡大から収縮へと転じるところとなります。
ボリンジャーバンドは、通常ブレイクアウトした場合、ブレイクした方向とは逆のバンド(上昇トレンドでバンドの上方にブレイクした場合はロワーバンド)が先行して転換に入ります。段階的にポジションを決済する場合には、ここが最初の部分的な手仕舞いのポイントになります。トレンドと逆側のバンドの縮小への転換は、トレンドが減衰し持ち合いになるとすぐに起こります。
次に、ブレイクした方向のバンドが反転に転じることになりますが、ここがすべてのポジションを手仕舞うところです。上下のバンドが収縮に転じるということは、相場のエネルギーが放出し切り、トレンドが終わることを意味しているからです。
ボリンジャーバンドの実装例
実際にボリンジャーバンドを使って取引できるコードの例をお見せしましょう。ここではCoincheckを使った逆張りを見ていきましょう。
1分毎に過去30回観察した価格データと比較して、現在の価格が標準偏差でロワーバンド2(-2σのライン)を下回れば買うというものです。エントリー部分だけ作ってみましょう。
スクリプトの実装自体は少し調べれば色々な方が作ったのを見る蹴ることができるでしょう。ここで例に挙げたロジックは私が実際に使っているものではなく、当サイトでは取引の責任は負いません。はっきり言うと、このロジックでそのままトレードするとカモになるだけです。
重要なのは自分なりのロジックや変数をうまく見つけること、その時点で最も適した分析手法を用いるということなのです。
まとめ
ここではボリンジャーバンドを紹介するとともに、分析の実装方法を紹介しました。ボリンジャーバンドはシンプルな手法ですが、非常に有力で指示されている手法のひとつですから、ぜひ理解して自分のものにしたいですね。
他にも様々な分析手法がありますから、ぜひそちらもチェックしてみましょう。