資源の読み込みに... 荷物...

戦略を踏まえて ダイナミックなブレイクアウト傾向

作者: リン・ハーンチャオチャン,日付: 2023年12月29日 17:32:10
タグ:

img

概要

これはブレイクアウト戦略をフォローするダイナミックなトレンドです. リアルタイムで株式の最高値と最低値を追跡します. 最近の期間の最高値を突破すると,それは長引きます. 最近の期間の最低値を突破すると,それは短引きます. 一方,ストップ損失と利益を取ることはリスクを制御し,固定リスク報酬比を確保するために設定されています.

戦略の論理

この戦略の主な論理は,トレンドの価格ブレイクポイントを追跡し取引することです.具体的には,この戦略は,過去20日間の最高値と最低値を計算します.今日の閉じる価格が昨日の最高値を突破すると,それは上向きトレンドブレイクシグナルとみなされ,長引きます.今日の閉じる価格が昨日の最低値を突破すると,それは下向きトレンドブレイクシグナルとみなされ,短引きます.

ロングまたはショートに行く後,1%のストップ・ロストと2%の収益を設定します.これは,各取引に対して2:1の固定リスク・リターン比を保証します.単一の取引のリスクを効果的に制御します.

利点

この戦略の最大の利点は,価格動向の逆転点を迅速に把握し,個々の取引のリスクを制御することです.主な利点は:

  1. 最高値と最低値のダイナミックな計算 価格動向の変化をリアルタイムで追跡し,価格逆転の信号を迅速に把握できます

  2. 入力料のブレイクアウト方法を使うと入力の質が向上します

  3. ストップ・ロストと得益の設定をすることで,単一の取引のリスク・報酬比を制御することで,取引リスクが効果的に管理されます.

  4. シンプルで理解しやすい論理 量子初心者にも適しています

  5. テストや最適化が容易なコードが少なくなります

リスク

この戦略にはいくつかのリスクもあります:

  1. 進出の傾向を追跡すれば 価格転換の好ましい転換点を見逃すかもしれません

  2. 固定ストップ・ロストとテイク・プロフィートは市場の変化に適応できないため,早期にストップ・アウトや利益目標を達成する可能性があります.

  3. 後に追加される物件に対するピラミッドの論理はなく, 傾向を追跡し続けることはできません.

  4. 大きなサイクルを考慮しないことにより 損失を引き起こす大きな傾向に 衝突する可能性があります

  5. 位置測定モジュールがないため,全体的な位置管理を制御できない.

オプティマイゼーションの方向性

主に下記の方向性において,最適化のための大きな余地があります.

  1. ダイナミックストップ・ロスを追加し 市場の変動に基づいて 利益を取ります

  2. 移動平均値に基づくトレンド方向フィルターを追加して,主要なトレンドとの衝突を回避します.

  3. トレンド強度指標を追加して,強いトレンドのみを入力します.

  4. トレンドを常にフォローすることで 利益を最大化するためにピラミッドの論理を追加します

  5. ポジションサイズを動的に調整し,全体的なリスクを制御するために,ポジションサイズのモジュールと組み合わせます.

  6. パラメータを最適化して最適なパラメータセットを見つけます

概要

概要すると,この戦略は,量子初心者が学習し,全体的に実践するのに適しています.その利点は,単純性と理解が容易で,リスク制御のためのストップ損失と利益論理も含んでいます.しかし,まだ最適化すべき多くの側面があり,さらなる学習の機会として役立つことができます.一般的に言えば,この戦略は,初心者にとって原則から適用までマスターするのに適しています.


/*backtest
start: 2023-11-28 00:00:00
end: 2023-12-28 00:00:00
period: 2h
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")


もっと