二重確認の突破戦略

作者: リン・ハーンチャオチャン,日付: 2024-03-01 10:55:27
タグ:

img

概要

ダブル確認突破戦略は,ブレイクアウト戦略と移動平均戦略を組み合わせた取引戦略である.この戦略は,先日の最高価格と最低価格をキー価格レベルとして,高速および遅い移動平均の黄金十字と死亡十字信号と組み合わせて,買い売り操作を行います.

戦略原則

二重確認の突破戦略の基本論理は次のとおりです

  1. 価格が前日の最高価格または最低価格を突破するかどうかを検出します.価格が前日の最高価格を突破した場合,それは上昇信号として見られます.価格が前日の最低価格を突破した場合,それは下落信号として見られます.

  2. 突破が起こると,高速線 (10 日線) がスローライン (30 日線) を破るかどうかを確認します.そうであれば,購入オーダーが作成されます.高速線がスローラインを破ると,売却します.

  3. 固定ストップ損失と取利益比を設定してストップ損失価格と取利益価格を計算します.例えば,戦略がストップ損失と取利益比を1:4に設定した場合,取利益範囲はストップ損失範囲の4倍です.

  4. ポジションを開いた後,価格がストップ・ロスのラインを触発すると,ストップ・ロスは出口で,利益の目標に達すると,利益の出口で終了します.

双重確認突破戦略は,トレンド判断指標 (移動平均値) と重要な価格レベル (前日の高値と低値) の両方の突破を活用して取引信号を確認し,比較的安定し信頼性の高い突破システムとなっています.

利点分析

二重確認の突破戦略には以下の利点があります.

  1. 前日の高点や低点を突破した後に入ると,誤った突破の確率を効果的に減少させ,入力の精度を向上させることができます.

  2. 動向平均値の補助判断は,ショック市場での頻繁なオープンポジションを避けるために,その上に加わっています.

  3. 資本リスクの管理のために固定ストップ損失と利益率を採用することで,リスクと収益は手頃な範囲内にとどまります.

  4. 戦略規則は単純で明快で,理解し実行しやすいもので,定量取引に適しています.

リスク分析

二重確認の突破戦略には,次のリスクもあります.

  1. 突破後,短時間蓄積が容易になり,逆転を誘発する.このリスクを防ぐために,市場に入る前に突破後に2番目のK線で確認することができます.

  2. 振動する市場では,ストップ・ロスのポイントは容易に引き起こすことができます.ストップ・ロスの範囲は適切に緩和したり,リスクの多様化のために取引頻度を増やすことができます.

  3. 固定ストップ・ロースとテイク・プロフィートの比率は,すべての製品と市場条件に適していないため,パラメータは異なる市場に応じて調整する必要がある.

  4. 移動平均のパラメータの不適切な設定は,より良い機会を逃したり,不要な取引を増やすこともできます.パラメータは定期的にバックテストおよび最適化する必要があります.

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

二重確認の突破戦略は,次の方向で最適化できます.

  1. 確認のKラインの数を増やして,例えば,突破後の1〜2Kラインの閉値も,その重要な価格レベルを突破したかどうかを観察します.

  2. バックテストと最適化のために,移動平均サイクル,ストップ損失と利益率など,異なる製品と市場環境のための異なるパラメータ組み合わせを採用します.

  3. 取引量の急上昇などの他の補助指標と組み合わせて,エントリー信号を確認します.

  4. 市場動向の確率を予測し,戦略パラメータを調整するために確率信号を組み合わせるための機械学習モデルを増やす.

概要

ダブル確認突破戦略は,重要な価格レベルからの突破信号と移動平均値からの判断指標を総合的に利用し,取引信号の質を効果的に改善することができます.同時に,資本リスクを管理するために固定ストップ損失と利益を引き出すのを使用することで,安定的に動作することができます.これはトレンド追跡とブレイクを組み合わせた定量戦略で,安定した収益を求めるトレーダーに適しています.

この戦略にはいくつかのリスクがありますが,継続的なバックテストと最適化によってリスクは制御され,戦略の収益も向上できます.これは,徹底的な研究と応用に値する定量戦略です.


/*backtest
start: 2023-02-23 00:00:00
end: 2024-02-29 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Estrategia de Trading con Señales de Máximo/Mínimo Diario", overlay=true)

// Obtenemos el alto y el bajo del día anterior
previousDailyHigh = request.security(syminfo.tickerid, "D", high[1], lookahead=barmerge.lookahead_on)
previousDailyLow = request.security(syminfo.tickerid, "D", low[1], lookahead=barmerge.lookahead_on)

// Detectamos si el precio cruza por encima del máximo o por debajo del mínimo del día anterior
priceCrossesPreviousHigh = ta.crossover(close, previousDailyHigh)
priceCrossesPreviousLow = ta.crossunder(close, previousDailyLow)

// Marcamos las señales en el gráfico con flechas bajistas y alcistas según corresponda
plotshape(priceCrossesPreviousHigh, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Price crosses above previous daily high")
plotshape(priceCrossesPreviousLow, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Price crosses below previous daily low")

// EMA rápida
fast_ema = ta.ema(close, 10)
// EMA lenta
slow_ema = ta.ema(close, 30)

// Riesgo beneficio fijo de 1-4
risk_reward_ratio = 4

// Calculamos el tamaño del stop loss basado en el riesgo asumido
risk = close - strategy.position_avg_price
stop_loss = close - (risk / risk_reward_ratio)

// Condiciones de compra y venta
buy_condition = priceCrossesPreviousLow and fast_ema > slow_ema
sell_condition = priceCrossesPreviousHigh and fast_ema < slow_ema

// Marcar entradas
strategy.entry("Compra", strategy.long, when=buy_condition)
strategy.entry("Venta", strategy.short, when=sell_condition)

// Definir objetivo de beneficio basado en el tamaño del stop loss y el riesgo beneficio fijo
target_profit = close + (risk * risk_reward_ratio)

// Definir stop loss y objetivo de beneficio
strategy.exit("Stop Loss/Take Profit", "Compra", stop=stop_loss, limit=target_profit)
strategy.exit("Stop Loss/Take Profit", "Venta", stop=stop_loss, limit=target_profit)

// Señales de compra y venta
plotshape(series=buy_condition, title="Compra", location=location.belowbar, color=color.green, style=shape.triangleup)
plotshape(series=sell_condition, title="Venta", location=location.abovebar, color=color.red, style=shape.triangledown)


もっと