CM マルチ EMA ゴールデンクロスおよびデッドクロス戦略


作成日: 2023-09-21 12:12:56 最終変更日: 2023-09-21 12:12:56
コピー: 1 クリック数: 744
1
フォロー
1617
フォロワー

概要

この戦略は,8日,13日,21日,55日のEMAを組み合わせて,金叉または死叉の出現時に多頭または空頭信号を判断し,中長線トレンドを捕捉することを目的としています.

戦略原則

  1. EMA平均線はそれぞれ8,13,21,55日に計算されます.

  2. 55日間のEMAが8,13,21日間のEMAを全て突破すると,買取シグナルが生成されます.

  3. 55日間のEMAが全開すると,売り込み信号が作られます.

  4. 金叉の場合は多入場,死叉の場合は空入場する.

  5. 逆の交差点が現れたときの平仓.

優位分析

  1. 複数のEMAの組み合わせにより,偽突破を効果的にフィルターできます.

  2. 55日 EMA 中枢軸として,套装を避ける.

  3. この戦略は過去10年間,毎年安定した収益を上げていると反省されています.

  4. 交差点を視覚化し,操作が簡単で,初心者にも適しています.

リスク分析

  1. 固定パラメータの組み合わせ,異なる品種と市場には,独立したテストの最適化が必要である.

  2. 震災に効果的に対応できず,頻繁に停損する危険性がある.

  3. 単発損失をコントロールできない.

  4. 取引頻度は高すぎたり低すぎたりして,パラメータの調整が必要である.

  5. サンプルの寿命は10年で,サンプルの安定性を検証するために拡大する必要があります.

最適化の方向

  1. 異なるEMA周期のパラメータの組み合わせをテストし,最適なマッチを探します.

  2. 偽突破を避けるために,取引量などの指標を追加します.

  3. 移動止損または固定止損点を設定します.

  4. ポジションのサイズを最適化して,単発リスクを減らす.

  5. 低値で多額の空調をしたり,低値で多額の空調をしたり,両方向の取引を実現する.

  6. 他の品種に拡大し,より長い期間で再検査を検証する.

要約する

この戦略は,複数のEMAの交差判断の中央の長線トレンド方向を利用して,簡単なトレンド追跡を実現する.その直視的可視化が優れているが,パラメータが十分に最適化されていない,止損不完全などの問題がある.より多くの技術指標の最適化パラメータの組み合わせを導入し,入場フィルター条件を豊かにし,止損を加え,リスクを制御する必要がある.さらに,長期と品種の反測を通じて,継続的に最適化して検証する戦略を継続的に最適化して,安定した信頼性の高いトレンド追跡システムにする必要がある.

ストラテジーソースコード
/*backtest
start: 2023-08-21 00:00:00
end: 2023-09-20 00:00:00
period: 6h
basePeriod: 15m
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/
// © ColinMccann18
//@version=4

// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// --------------------------------------------------------------RULES------------------------------------------------------------------------------
// - VISUALLY REPRESENTS THE CROSSING OF 8,13,21,55 EMA'S FROM KROWNS PROGRAM 
strategy(title="CM EMA Trend Cross STRAT", shorttitle="CM EMA Strat", overlay=true)

ema8  = ema(close,8)
ema13 = ema(close, 13)
ema21 = ema(close, 21)
ema55 = ema(close, 55)

//PLOT
plot(ema8,  title="EMA 1",linewidth=2, color=#00eeff)
plot(ema13, title="EMA 2",linewidth=2, color=#fff900)
plot(ema21, title="EMA 3",linewidth=2, color=#42ff0f)
plot(ema55, title="EMA 4",linewidth=2, color=#8b49ff)

//LOGIC---------------------------------------------------------------------------------------------------------------------------------
emacrossover = crossover(ema21, ema55) and ema8 and ema13 > ema55
emacrossunder = crossunder(ema21, ema55) and ema8 and ema13 < ema55

//Long----------------------------------------------------------------------------------------------------------------------------------
longCondition = emacrossover
closelongCondition = emacrossunder

strategy.entry("Long", strategy.long, qty=na, when=longCondition)
strategy.close("Close Long", when=closelongCondition)

//Short----------------------------------------------------------------------------------------------------------------------------------
shortCondition = emacrossunder
closeshortCondition = emacrossover

strategy.entry("Short", strategy.short,qty=na, when=shortCondition)
strategy.close("Close Short", when=closeshortCondition)