
この戦略は,EMA平均線交差をベースに取引シグナルを生成するトレンドフォロー戦略である. 価格の傾向の変化を判断するために,トレンドの開始時に市場に入って,トレンドの終了時に市場を退き,利益を得るために,遅い平均線交差を利用する.
この戦略は,高速EMAと遅いEMAの2つの平均線を使用する.高速EMAのパラメータは20で設定され,価格変化に反応するより敏感である.遅いEMAのパラメータは50で設定され,価格変化に反応するより平坦である.
急速EMAが下から慢速EMAを横切るときは,価格が上昇し始めることを示す,買点信号である.急速EMAが上から下から慢速EMAを横切るときは,価格が下がり始めることを示す,売点信号である.
この2つのシグナルに基づいて,我々は,相応の取引決定を行うことができます:買点シグナルが現れたときに多頭入場を行う,売点シグナルが現れたときに空頭入場を行う;反対のシグナルが現れたときに多頭/空頭平仓を行う.
改善方法:
この戦略は以下の点で最適化できます.
平均線パラメータを最適化して,最適なパラメータの組み合わせを見つける.異なるパラメータを巡って,異なる組み合わせを反省して,収益の最適なパラメータを見つける.
他の技術指標をフィルター条件として加え,誤った取引を避ける.例えば,MACD,KDJなどの指標を加えることができ,それらの信号が平均線信号と一致するときにのみ入場する.
固定ストップやストップトラッキングなど,単一損失を制御するストップ戦略を追加する.
他の戦略,例えばトレンドフォロー戦略,トレンド中に勝負追いかける,または,価格が過剰に拡大したときに介入して逆転する,Mean Reversion戦略と組み合わせて検討することができる.
この戦略は,非常に典型的なトレンドフォロー戦略である. 価格トレンドの変化を判断するために,価格トレンドを簡単に,効果的に捕捉するために,速やかに,均線を横切る. また,遅延入場,ウィップソーによる損失などの問題もあります. これらの問題には対応する解決策があります.
/*backtest
start: 2023-02-20 00:00:00
end: 2024-02-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Habitrade EMA Cross Strategy"), overlay=true
//Input for EMA lengths
emaShortLength = input.int(20, title="Short EMA Length")
emaLongLength = input.int(50, title="Long EMA Length")
//Calculate EMAs based on inputs
emaShort = ta.ema(close, emaShortLength)
emaLong = ta.ema(close, emaLongLength)
//Plot the EMAs
plot(emaShort, color=color.blue, linewidth=2, title="EMA Short")
plot(emaLong, color=color.orange, linewidth=2, title="EMA Long")
//Generate long and short signals
longCondition = ta.crossover(emaShort, emaLong)
shortCondition = ta.crossunder(emaShort, emaLong)
//Enter long positions
if (longCondition)
strategy.entry("Long", strategy.long)
//Enter short positions
if (shortCondition)
strategy.entry("Short", strategy.short)
//Close long positions
if (shortCondition)
strategy.close("Long")
//Clos short positions
if (longCondition)
strategy.close("Short")