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

2つの移動平均のクロスオーバーストップ損失と利益戦略

作者: リン・ハーンチャオチャン開催日: 2024-06-03 11:02:26
タグ:エイママックドKDJADX

img

概要

この戦略は,異なる期間の2つの指数関数移動平均値 (EMA) のクロスオーバーを取引信号として使用し,固定ポイントストップ損失を設定し,利益のレベルを取ります.短期EMAが長期EMAを超えると,ロングポジションを開きます.短期EMAが長期EMAを下回ると,ショートポジションを開きます.戦略はリスクを制御し利益をロックするために固定ポイントストップ損失を設定し,利益のレベルを取ります.

戦略原則

  1. 異なる期間の2つの EMAを計算します.デフォルトは5期と200期です.
  2. 5 期間の EMA が 200 期間の EMA を超えると,長い信号が発生し,5 期間の EMA が 200 期間の EMA を超えると,短い信号が発生します.
  3. ポジションを開いた後,ストップ・ロストポイント (デフォルト50ポイント) を設定し,プロフィートポイント (デフォルト200ポイント) を取る.
  4. 価格が利益を得たり,ストップ・ロスを取るか,または 200 取引期間持っていたときにポジションを閉じる.
  5. グラフのボリュームに基づいて 利益とストップ・ロスのポイントを調整します

戦略 の 利点

  1. シンプルで理解しやすい: 戦略の論理は明確で理解し実行しやすい.
  2. トレンドフォロー: EMA のトレンド特性を活用して市場のトレンドを効果的に把握する.
  3. リスク管理: 固定ポイントストップロスを設定することで,単一の取引のリスクを効果的に制御できます.
  4. 柔軟性: 利益とストップ・ロスのポイントは,市場の変動と個人リスクの優先順位に応じて調整できます.

戦略リスク

  1. 誤った信号: EMA のクロスオーバーは誤った信号を生成し,頻繁に取引や資本損失を引き起こす可能性があります.
  2. トレンド遅延: EMA は遅れている指標であり,トレンドが形成された後にのみ信号を生成し,最高のエントリー機会を逃す可能性があります.
  3. 範囲限定市場:範囲限定市場では,EMAのクロスオーバーが頻繁な場合,連続して損する取引につながる可能性があります.
  4. 固定ポイントストップ損失: 固定ポイントストップ損失は,市場の変動の変化に適応できず,不適切なストップ損失レベルをもたらす可能性があります.

戦略の最適化方向

  1. より多くの指標を導入する:信号の信頼性を向上させるために,MACD,RSIなど他の技術指標と組み合わせる.
  2. パラメータを最適化: EMA 期間,利益とストップ損失のポイントなどのパラメータを最適化して戦略のパフォーマンスを向上させる.
  3. ダイナミックストップ損失: 市場の変動に基づいてストップ損失点をダイナミックに調整し,市場の変化により良く適応します.
  4. ポジション管理:リスク調整回帰を向上させるため,リスクに基づくポジションサイズなどのポジション管理規則を導入する.
  5. フィルター: 取引信号のフィルター条件 (取引量,価格パターンなど) を追加し,信号の質を向上させる.

概要

双向移動平均クロスオーバーストップ損失と収益戦略は,EMAクロスオーバーを通じて取引信号を生成し,固定ポイントストップ損失を設定し,リスクを制御するために利益レベルを設定するシンプルで使いやすい取引戦略である.この戦略の利点は,明確な論理,簡単な実装,市場動向を効果的に把握する能力にある.しかし,偽信号,トレンド遅延,レンジバインド市場,固定ストップ損失レベルなどのリスクにも直面している.最適化方向性は,より多くの指標を導入し,パラメータを最適化し,ダイナミックストップ損失,ポジション管理,フィルターを追加することを含む.トレーダーは,戦略の強度と収益性を向上するために,リスクの好みや市場特性に合わせて戦略を最適化し調整することができます.


/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/


//@version=5
strategy("EMA5 Cross EAM200 && SL/TP 50 and 200 Point Target", overlay=true)

// Define input parameters for EMA lengths
ema_5 = input.int(5, title="Fast EMA Length")
ema_200 = input.int(200, title="Slow EMA Length")

// Define input parameters for stop loss and profit target in points
stopLossPoints = input.float(50, title="Stop Loss (Points)")
profitTargetPoints = input.float(200, title="Profit Target (Points)")

// Calculate EMAs
price = close
emafast = ta.ema(price, ema_5)
emaslow = ta.ema(price, ema_200)

// Plot EMAs on chart
plot(emafast, title="5-period EMA", color=color.black)
plot(emaslow, title="200-period EMA", color=color.blue)

// Extra lines if needed
ema_13 = input.int(13, title="13 EMA")
ema_13_line = ta.ema(price, ema_13)
plot(ema_13_line, title="13-period EMA", color=color.rgb(156, 39, 176, 90))

ema_20 = input.int(20, title="20 EMA")
ema_20_line = ta.ema(price, ema_20)
plot(ema_20_line, title="20-period EMA", color=color.red)


// Define entry conditions
longCondition = ta.crossover(emafast, emaslow)
shortCondition = ta.crossunder(emafast, emaslow)

// Counter to keep track of the number of bars since the entry
var int barCount = na

// Reset counter and enter long trade
if (longCondition)
    strategy.entry("Long", strategy.long, comment="Long")
    barCount := 0

// Reset counter and enter short trade
if (shortCondition)
    strategy.entry("Short", strategy.short, comment="Short")
    barCount := 0

// Increment counter if in trade
if (strategy.opentrades > 0)
    barCount += 1

// Calculate entry price
entryPrice = strategy.position_avg_price

// Exit long trade if stop loss, profit target hit, or 200 points have been reached
if (strategy.position_size > 0)
    strategy.exit("Take Profit/Stop Loss", "Long", stop=entryPrice - stopLossPoints, limit=entryPrice + profitTargetPoints)

// Exit short trade if stop loss, profit target hit, or 200 points have been reached
if (strategy.position_size < 0)
    strategy.exit("Take Profit/Stop Loss", "Short", stop=entryPrice + stopLossPoints, limit=entryPrice - profitTargetPoints)


関連性

もっと