これはブレイクトレード戦略をフォローするモメントベースのトレンドです.トレンド方向を決定するために,特定の期間中の最高値と最低値を計算し,価格がキーレベルを突破するとロングまたはショートトレードをします.
この戦略の基本的な論理は
最近の20個のキャンドルスタイルの最高値と最低値を計算するために最高値と最低値の関数を使用し,トレンドを判断するためのモメント指標として使用します.
最新の閉値が前期最高値を超えると,ロングにします.これは上向きのブレイクシグナルです.
最新の閉盤価格が前期最低値を下回ると,ショートします.これはダウンブレイク信号です.
リスクをコントロールするために 1%のストップ損失距離と 2%の利益距離を設定し,リスク・リターン比が 2:1になります.
20個のキャンドルスタイルの内にある最高値と最低値をグラフ化して,トレンド方向とブレイクレベルを視覚的に決定します.
上記は,この戦略のコア・トレード・ロジックである.トレンドを判断するためにモメンタム・インジケーターを使用し,キーレベルのブレイクを取引し,ブレイク戦略のトレンドをフォローする.
この戦略の利点は以下の通りです.
高精度でトレンドの方向と強さを把握する.最高値と最低値を計算することで,範囲限定市場からの誤った信号をフィルタリングするのに役立ちます.
シンプルで明快な論理です 前回の最高値よりずっと高く 前回の最低値より少し低いです 分かりやすく実行できます
制御可能なリスク 最大損失は1% 最大利益は2% ストップ損失と取利益設定で 合理的なリスク・リターン比が得られます
最適化が簡単. 計算期間はより良いエントリータイミングのために調整できます. ストップ損失と利益のレベルも,より多くの利益または低いリスクのために調整できます.
リスクもあります:
ストップ・ロスは 価格の急激な変動によって 実現できます
計算期間が長すぎると逆転信号が欠けている.トレンド判断は遅れている.
パラメータの設定が正しくない場合,収益性が低下する可能性があります. 計算期間とストップ損失/取利益レベルは慎重にテストおよび最適化する必要があります.
この戦略は以下のような側面で改善できる:
トレンドメトリクスを使用できます. トレンドメトリクスは,トレンドメトリクスを使用します.
タイミングとトレンド判断の安定性をバランスさせる 期間パラメータを調整します 短すぎると誤った信号になり 長すぎると遅れになります
ストップロスを取り入れることで 利益を固定し ストップロスを避けます
設定の最適な組み合わせを見つけるために歴史的なバックテストを通じてパラメータ最適化.
これはブレイクアウトトレード戦略の典型的なトレンドである.トレンドを決定するためにモメントインジケーターを使用し,キーレベルのブレイクアウトを取引する.利点はシンプルさ,制御可能なリスク,理解/最適化が簡単である.しかし,特定の市場環境では劣悪なパフォーマンスを発揮する可能性がある.さらなる最適化はその強度と効率性を向上させる.
/*backtest start: 2023-12-31 00:00:00 end: 2024-01-30 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Trend Following Breakout Strategy with 2:1 RRR", overlay=true) // 定义前高和前低的计算 length = input(20, minval=1, title="Length") highestHigh = highest(high, length) lowestLow = lowest(low, length) // 定义买入和卖出的条件 longCondition = close > highestHigh[1] // 当前收盘价高于前一期的最高价 shortCondition = close < lowestLow[1] // 当前收盘价低于前一期的最低价 // 为了确保盈亏比为2:1,我们需要定义止损和目标价 stopLoss = input(1, title="Stop Loss %") / 100 takeProfit = stopLoss * 2 // 如果满足买入条件,进入多头 if (longCondition) strategy.entry("Long", strategy.long) strategy.exit("Long TP", "Long", profit=takeProfit * close, loss=stopLoss * close) // 如果满足卖出条件,进入空头 if (shortCondition) strategy.entry("Short", strategy.short) strategy.exit("Short TP", "Short", profit=takeProfit * close, loss=stopLoss * close) // 绘图显示前高和前低 plot(highestHigh, color=color.green, title="Previous High") plot(lowestLow, color=color.red, title="Previous Low")