Type/to search

ボリンジャーバンド突破回帰取引戦略

Common strategy
Created: 2024-03-08 14:08:53
Last modified: 2 years ago
1
Follow
1802
Followers

img

概要

この戦略はボリンジャーバンド指標に基づいており、主な考え方は価格がボリンジャーバンドの上限または下限を突破した後、価格がバンド内部に戻るのを待ち、戻った地点で突破方向と同じ方向のポジションを構築することです。この戦略は、価格が極端な領域で反転する傾向があるという特性を利用し、ボリンジャーバンドの突破と戻りの複合条件で市場の転換点を捉え、高い勝率を目指します。

戦略原理

  1. ボリンジャーバンドの中央線、上限、下限を計算します。中央線は移動平均線、上限と下限は中央線に一定の標準偏差を加減したものです。
  2. 価格がボリンジャーバンドの上限または下限を突破したかどうかを判断します。終値が上限を上回れば上方突破、終値が下限を下回れば下方突破とみなします。
  3. 上方突破が発生した場合、その突破ローソク足の最高値をpeakとして記録します。下方突破の場合、その突破ローソク足の最安値をpeakとして記録します。peakはその後の価格の戻りを判断するために使用します。
  4. 突破発生後、価格がボリンジャーバンド内部に戻るのを待ちます。このとき、終値が上限と下限の間にあれば、価格は戻ったとみなします。
  5. 価格が戻った時点で、前のローソク足が上方突破(break_up[1] and inside)ならば買いポジションを開き、前のローソク足が下方突破(break_down[1] and inside)ならば売りポジションを開きます。
  6. ポジション管理:買いポジション保有中に終値が中央線を上抜けた場合は買いポジションを決済し、売りポジション保有中に終値が中央線を下抜けた場合は売りポジションを決済します。

優位性分析

  1. ボリンジャーバンドは適応性が高く、価格変動に応じて動的に調整されるため、トレンドや変動の捕捉に役立ちます。
  2. 単純なボリンジャーバンド突破戦略と比較して、戻り条件を追加することで、高値追いや安値売りをある程度回避し、エントリーの質を向上させます。
  3. 決済条件は中央線を基準としており、シンプルで使いやすく、利益を守るのに適しています。
  4. ボリンジャーバンドのパラメータ(長さ、偏差倍率など)をカスタマイズでき、柔軟性が高いです。

リスク分析

  1. ボリンジャーバンドのパラメータ選択が適切でないと、エントリーが早すぎたり遅すぎたりして戦略のパフォーマンスに影響を与える可能性があります。パラメータ最適化により緩和できます。
  2. 価格がボリンジャーバンド付近で揉み合うと、頻繁な売買が発生し取引コストが増加する可能性があります。
  3. トレンドが強い場合、価格が長期間バンド内部に戻らず、トレンドの利益を逃す可能性があります。
  4. ボリンジャーバンド指標のみでは、特定の銘柄や相場状況で有効でない場合があり、他のシグナルと組み合わせる必要があります。

最適化の方向性

  1. 価格がボリンジャーバンドの上方で一定期間推移してから突破する方が信頼性が高いなど、より多くのフィルター条件を導入するか、MA角度やADXなどのトレンド判断指標を補助的に使用することを検討できます。
  2. 揉み合い相場に対しては、指値注文やタイマーを追加し、無謀なエントリーを回避できます。
  3. 決済面ではATRや移動平均線を組み合わせて、エグジットのタイミングを適切に制御できます。
  4. 異なる銘柄や時間足に対してパラメータ最適化と特性分析を行い、適切な取引銘柄と時間足を選択します。
  5. ポジション管理を導入し、ボラティリティが収縮するときにポジションを増やし、ボラティリティが拡大するときにポジションを減らすなどの調整を検討できます。

まとめ

ボリンジャーバンド突破戻り取引戦略は、シンプルで実用的な定量取引戦略です。価格の極端な状況への反応を利用し、ボリンジャーバンドを用いてエントリーとエグジットの条件を構築することで、ある程度トレンドの開始点と終了点を捉え、頻繁な売買を抑制します。同時に、この戦略にはパラメータ選択の問題や、揉み合い相場でのパフォーマンス低下、トレンド把握の不完全さなどの課題もあります。細部の最適化や他のシグナルとの組み合わせにより、戦略の適応性とロバスト性をさらに向上させることが期待できます。

Source
Pine
/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-27 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy(shorttitle="BB", title="Bollinger Bands", overlay=true)
length = input.int(20, minval=1)
maType = input.string("SMA", "Basis MA Type", options = ["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
Strategy parameters
Strategy parameters
length
Basis MA Type
Source
StdDev
Offset
Comment
All comments (0)
No data
No data
  • 1
Forums
PINE Language
Get the app
iPhone Download
© 2015 - ∞ INVENTOR PTE LTD (SG)