三重EMA交差策略は,3つの異なる周期の指標移動平均 (EMA) 交差信号に基づいて取引する戦略である.この戦略は,急速EMA (10期),中速EMA (25期),および遅いEMA (50期) を使って市場トレンドを捉え,平均リアル波幅 (ATR) を使って,異なる市場変動状況に対応するためにストープとストップのレベルを設定する.急速EMAが遅いEMAの上に交差し,中速EMAも遅いEMAの上に交差すると,看板信号が生じます.逆に,急速EMAが遅いEMAの下側に交差し,中速EMAも遅いEMAの下側に交差すると,看板信号が生じます.
三重EMA交差戦略は,ATRの動的ストップとストップセットと組み合わせた,異なる周期のインデックス移動平均交差信号を利用して,トレーダーにトレンド追跡とリスク管理の効果的な方法を提供します. この戦略は,トレンド市場では良好なパフォーマンスを発揮していますが,揺れ動いている市場では課題に直面する可能性があります. したがって,トレーダーは,他の技術分析ツールと組み合わせることを検討し,異なる市場状況と資産クラスのパラメータに合わせて最適化して,戦略の信頼性と収益性を向上させる必要があります.
/*backtest
start: 2024-03-01 00:00:00
end: 2024-03-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Triple EMA Crossover Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// Input for EMA periods
fastLength = input(10, title="Fast EMA Length")
mediumLength = input(25, title="Medium EMA Length")
slowLength = input(50, title="Slow EMA Length")
riskMultiplier = input(3.0, title="Risk Multiplier for Stop Loss and Take Profit")
// Calculating EMAs
fastEMA = ta.ema(close, fastLength)
mediumEMA = ta.ema(close, mediumLength)
slowEMA = ta.ema(close, slowLength)
// Plot EMAs
plot(fastEMA, color=color.red, title="Fast EMA")
plot(mediumEMA, color=color.orange, title="Medium EMA")
plot(slowEMA, color=color.yellow, title="Slow EMA")
// Define the crossover conditions for a bullish and bearish signal
bullishCrossover = ta.crossover(fastEMA, slowEMA) and mediumEMA > slowEMA
bearishCrossover = ta.crossunder(fastEMA, slowEMA) and mediumEMA < slowEMA
// ATR for stop and limit calculations
atr = ta.atr(14)
longStopLoss = close - atr * riskMultiplier
shortStopLoss = close + atr * riskMultiplier
longTakeProfit = close + atr * riskMultiplier * 2
shortTakeProfit = close - atr * riskMultiplier * 2
// Entry signals with visual shapes
plotshape(series=bullishCrossover, location=location.belowbar, color=color.green, style=shape.triangleup, title="Buy Signal", text="BUY")
plotshape(series=bearishCrossover, location=location.abovebar, color=color.red, style=shape.triangledown, title="Sell Signal", text="SELL")
// Strategy execution
if (bullishCrossover)
strategy.entry("Long", strategy.long)
strategy.exit("Exit Long", "Long", stop=longStopLoss, limit=longTakeProfit)
if (bearishCrossover)
strategy.entry("Short", strategy.short)
strategy.exit("Exit Short", "Short", stop=shortStopLoss, limit=shortTakeProfit)
// Color bars based on EMA positions
barcolor(fastEMA > slowEMA ? color.green : slowEMA > fastEMA ? color.red : na, title="Bar Color")