この戦略は,ボリンジャーバンド指標に基づいたブレークアウト取引戦略です.ボリンジャーバンドの上下レールを計算し,動的に調整可能な購入・売却の
この戦略のコア指標はボリンジャーバンドです.ボリンジャーバンドは,N日移動平均値と,それ以上の標準偏差レベルと,それ以下の上下帯から構成されています.この戦略のボリンジャーバンドは,長さ20日,標準偏差倍数が2です.価格がボリンジャーバンドの下部レールに近づいたり触れたりすると,過剰販売とみなされ,戦略はロングポジションを開きます.価格が上部レールに近づいたり触れたりすると,過剰購入とみなされ,戦略はロングポジションを閉じる.
この戦略は,ボリンジャーバンド指標に加えて,調整可能な2つのパラメータも導入しています. 購入しきい値と販売しきい値. 購入しきい値は,下の帯を下回る58ポイントに設定され,ロングポジションを開設するためのエントリー条件として機能します. 販売しきい値は,下の帯を下回る470ポイントに設定され,閉じるポジションの終了条件として機能します. これらのしきい値は,実際の市場状況とバックテスト結果に基づいて動的に調整され,戦略をより柔軟にすることができます.
購入条件が満たされると,戦略は口座資本の10%を使用してロングポジションを開く.ロングポジションを開いた後,価格がストップ・ロースレベル (-125%) に達するまでに上昇した場合,ストップ・ロースオーダーによってポジションが閉鎖される.価格が上昇してセールスロージルを引き起こすとき,戦略は利益を得るためにすべてのポジションを閉鎖することを選択する.
この戦略の主な利点は以下の通りである.
この戦略にはいくつかのリスクもあります:
対策:
この戦略は,次の側面においてさらに最適化することができる.
概要すると,これは全体的にシンプルで実用的なブレイクアウト戦略である.それは逆転機会を特定し,エントリーと出口のためのダイナミックな
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © SuperDS_BTC //@version=5 strategy("布林通道策略多5min", overlay=true) // 布林通道计算 length = input(20, title="布林通道周期") mult = input(2.0, title="标准差倍数") basis = ta.sma(close, length) dev = mult * ta.stdev(close, length) upper = basis + dev lower = basis - dev // 计算买入数量:每次检查仓位的大小 // 每次买入使用总资金的10% position_size = strategy.equity * 10 / close // 定義可調整的閾值 buy_threshold = input(58, title="買入閾值") exit_threshold = input(470, title="賣出閾值") // 买入条件:当现价低于布林通道的下限减去 buy_threshold buy_condition = close < lower - buy_threshold // 卖出条件和结清仓位条件 exit_condition = close > lower + exit_threshold // 买入逻辑 if buy_condition strategy.entry("BuyLong", strategy.long, qty=position_size, comment="LongBTC") // 卖出逻辑 if exit_condition strategy.close("BuyLong") // 止损逻辑 stop_loss_percent = -1.25 //止损百分比为-125% if strategy.position_size > 0 position_profit_percent = (strategy.position_avg_price - close) / strategy.position_avg_price * 100 if position_profit_percent <= stop_loss_percent strategy.close("BuyLong")