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

リスク・リターン比最適化戦略を持つトレーディングシステムに従う二重移動平均傾向

作者: リン・ハーンチャオチャン,日付: 2024-11-28 17:20:13
タグ:エイマRRR

img

定量取引の分野では,トレンドフォローする戦略は常に最も人気のある取引方法の1つである.この記事では,二重移動平均システムに基づくトレンドフォローする戦略を紹介し,最適化されたリスク・リターン比率を通じて取引効率を向上させる.

戦略の概要

この戦略は,20日および200日指数関数移動平均値 (EMA) を主要指標として利用し,取引決定のための3:1のリスク・リターン比と組み合わせます.価格が20日EMAを突破し,20日EMAが200日EMAを突破すると購入信号が生成されます.各取引には固定ストップ・ロスト (-0.5%) とテイク・プロフィート (1.5%) レベルがあり,制御されたリスクを保証します.

戦略の原則

基本的な論理にはいくつかの重要な要素が含まれます.

  1. 市場動向を判断するために20日間のEMAと200日間のEMAを使用し,200日間のEMAは長期の傾向を表し,20日間のEMAは短期の動きを反映します.
  2. 価格が20日間の EMAを突破し,20日間の EMAが200日間の EMAを突破すると買い信号が生成され,上昇傾向を示します.
  3. リスク・リターン比は3:1で,取利益レベル (1.5%) はストップ・ロスのレベル (0.5%) の3倍である.
  4. 取引状況を追跡し,重複したエントリを避けるために変数を使用します
  5. 価格が20日間の EMAを下回ると取引状態をリセットし,次の取引に備える

戦略 の 利点

  1. 二重移動平均系は,市場騒音を効果的にフィルタリングし,信号の信頼性を向上させる
  2. 固定リスク・リターン比が長期的に利益をもたらす
  3. 明確な入国・退出規則は主観的な判断を抑える
  4. 高度な自動化,実装しバックテストが簡単
  5. 各取引に対して明確なストップ・ロスのレベルを持つ包括的なリスク管理メカニズム

戦略リスク

  1. 異なる市場で頻繁に誤った信号を生む可能性があります
  2. 固定ストップ・ロースとテイク・プロフィートのレベルは,すべての市場条件に合致しない可能性があります.
  3. 考慮されていない取引コストは,実際の収益に影響を与える可能性があります.
  4. ストップ・ロスの配当は高波動性の市場へのエントリーにあまりにも近い可能性があります.
  5. 市場流動性の要因は考慮されていない

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

  1. トレンド判断の精度を向上させるため,ボリューム指標を導入する
  2. 市場変動に基づいて,ストップ・ロースとテイク・プロフィートのレベルを動的に調整する
  3. 偽信号を減らすためにトレンド強度フィルターを追加します
  4. 市場情勢指標を組み込むことを検討する
  5. ポジション管理システムを最適化して資金管理を改善する

概要

これは,明確な論理を持つ戦略を順守する良好な構造の傾向である. 固定リスク・報酬比率を持つ二重移動平均システムを組み合わせることで,戦略はリスク制御を維持しながら良い収益を達成する. 最適化のための領域があるものの,全体的には,さらなる研究と改善に値する取引システムである.


/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-27 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Estrategia de Compra con Ratio 3:1", overlay=true)

// Parámetros de la temporalidad diaria y las EMAs
ema20 = ta.ema(close, 20)
ema200 = ta.ema(close, 200)

// Condiciones para la entrada en largo
cierre_por_encima_ema20 = close > ema20
ema20_mayor_ema200 = ema20 > ema200

// Variable para registrar si ya se realizó una compra
var bool compra_realizada = false

// Condición para registrar una compra: primera vez que cierra por encima de EMA 20 con EMA 20 > EMA 200
if (cierre_por_encima_ema20 and ema20_mayor_ema200 and not compra_realizada)
    // Abrir una operación de compra
    strategy.entry("Compra", strategy.long)
    compra_realizada := true  // Registrar que se realizó una compra

    // Definir los niveles de stop loss y take profit basados en el ratio 3:1
    stop_loss = strategy.position_avg_price * 0.995  // -0.50% (rendimiento)
    take_profit = strategy.position_avg_price * 1.015  // +1.50% (3:1 ratio)
    
    // Establecer el stop loss y take profit
    strategy.exit("Take Profit / Stop Loss", from_entry="Compra", stop=stop_loss, limit=take_profit)

// Condición para resetear la compra: cuando el precio cierra por debajo de la EMA de 20
if (close < ema20)
    compra_realizada := false  // Permitir una nueva operación

// Ploteo de las EMAs
plot(ema20, title="EMA 20", color=color.blue, linewidth=2)
plot(ema200, title="EMA 200", color=color.red, linewidth=2)

// Colorear el fondo cuando el precio está por encima de ambas EMAs
bgcolor(cierre_por_encima_ema20 and ema20_mayor_ema200 ? color.new(color.green, 80) : na)


関連性

もっと