フィッシャー・ターナアローンド EMA マルチテイク・プロフィートとマルチストップ戦略

作者: リン・ハーンチャオチャン開催日:2024年01月05日 15:40:28
タグ:

img

概要

フィッシャーターンアウンド EMA マルチテイク・プロフィート・マルチストップ戦略は,トレンド追跡取引を実施するために,EMA指標とカスタム化されたフィッシャーターン信号を組み合わせます.短期間EMAが長期間EMAを超え,フィッシャーターン信号が0を超えると購入信号を生成します.この戦略は,利益とリスクを制御するために,2つのテイク・プロフィートレベルと1つのダイナミックストップ・ロスを設定します.最初のテイク・プロフィートは2xATRであり,第2の3xATRであり,ストップ・ロスは1xATRです.最初のテイク・プロフィートがトリガーされた後,ストップ・ロスはエントリー価格に移行します.これは潜在的なトレンド取引機会を見つけるためにGDAX取引所に適しています.

戦略の論理

この戦略は主に2つの技術指標に基づいています.

  1. EMA:指数関数移動平均.この戦略は12期と26期EMAを使用する.
  2. オーダーメイド フィッシャーターン信号.この信号は,一定の期間における高値と低値の違いに基づいて計算されます.

購入信号は,短期間EMAが長期間EMAを上回るときに生成される.さらに,フィッシャーターン信号線も0以上で,現在の上昇傾向を示す必要があります.

利回し・ストップ・ロスの規則は以下のとおりです.

  1. 2xATRで利益を得る
  2. 2番目の利得は3xATRで
  3. 1xATRでストップ損失
  4. ストップロスはエントリー価格に移動します.

戦略は EMA 期間,フィッシャーターン 信号 期間,ATR 期間などのパラメータを調整することで最適化できます.

利点

この戦略は,トレンド追跡指標とリスク管理指標を組み合わせることで,以下の利点があります.

  1. EMA を使ってトレンド方向を把握する
  2. カスタムフィッシャー ターン信号フィルタ 偽のブレイク
  3. 利益を固定するために複数の利益レベルを取ります
  4. リスク制御のためのダイナミックストップ損失
  5. 調整可能なパラメータは,異なる市場環境に適応する

リスク

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

  1. トレンド逆転がストップ・ロスを誘発する
  2. パラメータの設定が不適切で 侵入が過度に強烈で 出出が早すぎる
  3. オーダーメイドフィッシャーターン信号は,特定の市場環境で失敗する可能性があります.

これらのリスクは,パラメータの最適化,他の指標の組み合わせ,手動的介入などによって軽減できます.

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

戦略は以下の側面で最適化できます.

  1. より多くの市場環境に適応するために,EMA期間パラメータを最適化
  2. 購入信号を検証するための他の傾向指標を追加
  3. 不確実な環境を避けるため,全体的な市場フィルターを組み込む
  4. フィッシャーのターン信号パラメータを最適化するか,他のカスタムインジケーターを試す
  5. より多くの利益をロックするためにより多くの利益レベルを追加します
  6. 自動トラッキングストップ損失機能を統合

異なるパラメータ設定と指標の組み合わせをテストすることで 戦略のパフォーマンスを継続的に改善できます

結論

フィッシャーターナアウンドEMAマルチテイク・プロフィートとマルチストップ戦略は,トレンド追跡とリスク管理の強みを統合している.長期間の検証と最適化の可能性が高く,有望な戦略である.ライブ取引で安定した優位性を達成するために,パラメータを最適化し,指標を組み合わせるのにまだ十分な余地がある.


/*backtest
start: 2022-12-29 00:00:00
end: 2024-01-04 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Eliebf13
//@version=4
strategy("GDAX EMA & Blackflag FTS Strategy with Multiple Take Profits and Dynamic Stop Loss", overlay=true)

// Input parameters for Blackflag FTS
fts_length = input(14, title="Blackflag FTS Length")
atr_length = input(14, title="ATR Length")

// GDAX EMA calculation
short = ema(close, 12)
long = ema(close, 26)

// Calculate Blackflag FTS signal line manually
up = 0.0
down = 0.0
for i = 0 to fts_length - 1
    up := up + (high[i] - low[i])
    down := down + (high[i] - low[i])

fts_value = down == 0 ? 100 : 100 - (100 / (1 + (up / down)))

// Buy condition: GDAX EMA crossover and Blackflag FTS signal above zero
buy_condition = crossover(short, long) and fts_value > 0

// ATR calculation
atr_value = atr(atr_length)

// Calculate Stop Loss and Take Profit levels
stop_loss_level = close - atr_value
take_profit_level1 = close + 2 * atr_value
take_profit_level2 = close + 3 * atr_value

// Sell condition: GDAX EMA crossunder or Blackflag FTS signal below zero
sell_condition = crossunder(short, long) or fts_value < 0

// Strategy orders with Multiple Take Profits and Dynamic Stop Loss
strategy.entry("Buy", strategy.long, when = buy_condition)

// Calculate position size for 50% closure at each take profit level
position_size = strategy.position_size
target_position_size1 = position_size * 0.5
target_position_size2 = position_size * 1

strategy.exit("Take Profit 1", from_entry="Buy", loss=close, profit=take_profit_level1, qty=target_position_size1)
strategy.exit("Take Profit 2/Move Stop Loss", from_entry="Buy", loss=close, profit=take_profit_level2, qty=target_position_size2)

// Plot GDAX EMA lines
plot(short, color=#6f92ce, linewidth=2, title="Ema 12")
plot(long, color=#e08937, linewidth=2, title="Ema 26")

// Plot Blackflag FTS signal
plot(fts_value, color=color.blue, title="Blackflag FTS Signal")

// Plot buy and sell signals on the chart
plotshape(series=buy_condition, location=location.belowbar, color=color.green, style=shape.triangleup, title="Buy Signal")
plotshape(series=sell_condition, location=location.abovebar, color=color.red, style=shape.triangledown, title="Sell Signal")

もっと