リバースボリンガーバンド戦略は,ボリンガーバンドをベースとしたForex取引戦略である.JPYペアで最もうまく機能する.価格がボリンガーバンド上限または下限を突破すると,目標価格が過去10のキャンドルストークの最高または最低点に設定され,逆操作を行う.
ストラテジーは20日間の単純な移動平均値と標準偏差の2倍をベースに上下線を構成する.現在のキャンドルストックの閉じる価格が下線を突破すると,ロング;上線を突破するとショート.ストップ・ロスは過去10個のキャンドルストックの最低価格に設定され,利益を取ることは過去10個のキャンドルストックの最高価格に設定される.
具体的には,前のキャンドルスティックの開口価格が下列レールより低く,現在のキャンドルスティックの閉じる価格も下列レールより低く,ロングに行く場合.ストップ・ロスは過去10カンドルスティックの最低価格に設定され,テイク・プロフィートは過去10カンドルスティックの最高価格に設定されます.
逆に,前回のキャンドルストイックのオープニング価格が上方レールより高く,現在のキャンドルストイックの終了価格も上部レールより高くなった場合,ショートに行く.ストップ・ロスは過去10個のキャンドルストイックの最高価格に設定され,テイク・プロフィートは過去10個のキャンドルストイックの最低価格に設定されます.
この戦略は逆転取引の特徴を有する.価格がボリンジャー帯を突破すると,トレンド逆転が起こっていることを示すため,逆転操作が行われる.ストップ・ロストとテイク・プロフィートの設定も,良いリスク・リターン比を得るには合理的である.
さらに,この戦略にはパラメータが少なく,実装も簡単で理解も容易です.そしてJPYペアは大きく変動します.これはこの戦略に適しています.
この戦略の最大のリスクは,トレンドの転換点を効果的に決定することができないことである.価格がボリンジャー帯の上下を突破した後,元のトレンドは継続する可能性がある.この時点で逆向市場作りを行う場合,損失を引き起こす可能性があります.
さらに,最近の高値と低値のストップ・ロストとテイク・プロフィート設定にもリスクがあります. V型逆転が市場で発生した場合,ストップ・ロスは直接破綻する可能性があります.テイク・プロフィート設定は正確に予測できず,市場の逆転からの利益を完全に享受できなくなります.
リスクをコントロールするために,取引ごとに損失を減らすために合理的なストップロスを設定できます.また,移動ストップロスを採用して利益を固定し,利益の取扱いを適切に調整することができます.
戦略は以下の側面で最適化できます.
誤った信号を避けるためにフィルター条件を高めます.トレードボリュームフィルターは,トレンド逆転を確認するためにブレイクが発生した場合,トレードボリュームが拡大することを保証するために設定できます.
パラメータ設定を最適化する.最適なパラメータ組み合わせを見つけるために結果に異なるパラメータ設定の影響をテストする.
購入・販売シグナルを,RSIなどの他の指標と他の振動器で確認し,信号の信頼性を確認する.
機械学習やその他の方法を使用して,ストップ・ロスを動的に最適化し,戦略をより適応できるように利益の位置を設定します.
リバースボリンガーバンド戦略は,全体的にシンプルで実用的な短期取引戦略である.逆転可能な操作と制御可能なリスクがあり,日中取引に適しています.しかし,パラメータとフィルター条件は,誤った信号を削減し効率を改善するためにさらなる最適化が必要です.他の技術指標と動的なストップ損失と利益と組み合わせると,この戦略のパフォーマンスはまだ改善の余地があります.
/*backtest start: 2023-11-01 00:00:00 end: 2023-11-03 18:59:59 period: 4h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 // Initial settings strategy("Bulle de bollinger", overlay = true) // Parameter Settings mdl = sma(close, 20) dev = stdev(close, 20) upr = mdl + 2*dev lwr = mdl - 2*dev // Plot plot(mdl, color = color.green) // Plot moving average p1 = plot(upr, color = color.red) // Plot Upper_band p2 = plot(lwr, color = color.green) // Plot lower band fill(p1, p2, color = color.blue) // Fill transparant color between the 2 plots // Strategy entry & close if open[1] < lwr[1] and close[1] < lwr[1] // Previous price lower than lower band and current close is higher than lower band stop_level = lowest(10) profit_level = highest(10) strategy.entry(id = 'bb_buy', long = true) strategy.exit("TP/SL", "bb_buy", stop=stop_level, limit=profit_level) if open[1] > upr[1] and close[1] > upr // Previous price is higher than higher band & current close is lower the higher band stop_level = highest(10) profit_level = lowest(10) strategy.entry(id = 'bb_sell', long = false) strategy.exit("TP/SL", "bb_sell", stop=stop_level, limit=profit_level)