
В данной статье подробно рассматривается стратегия трейдинга, основанная на трёхкратных скользящих средних индексов. Эта стратегия позволяет идентифицировать рыночные тенденции с помощью перекрестных связей между скользящими средними индексов в течение трех различных периодов: краткосрочного, среднесрочного и долгосрочного, а также управлять сделками в сочетании с динамическими стоп-стопами.
Стратегия принимает торговые решения на основе трех различных циклов индексных движущихся средних ((EMA) - 9 циклов, 21 циклов и 55 циклов соответственно. Для определения направления и силы рыночных тенденций, наблюдая за перекрестными связями между этими равновесиями и их относительной позицией, можно найти подходящие торговые возможности. Стратегия также интегрирует динамические стоп-потери на основе ATR и стоп-установки на основе риска-прибыли для лучшего управления риском.
Центральная логика стратегии состоит в том, чтобы идентифицировать тренды через перекрестные и позиционные отношения трех EMA. В частности:
Тройная стратегия торговли трендами EMA - это логически ясная, управляемая риском система торговли. С помощью разумной настройки и оптимизации параметров можно получить стабильные торговые возможности в различных рыночных условиях. Ключ к успеху стратегии заключается в правильном понимании и использовании основных принципов отслеживания тенденций, а также в управлении риском.
/*backtest
start: 2024-10-28 00:00:00
end: 2024-11-27 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Triple EMA Crossover Strategy", overlay=true)
// Define the input lengths for the EMAs
shortEmaLength = input(9, title="Short EMA Length")
mediumEmaLength = input(21, title="Medium EMA Length")
longEmaLength = input(55, title="Long EMA Length")
// Define the risk/reward ratios for SL and TP
riskRewardRatio = input(1.2, title="Risk/Reward Ratio") // Example: risk 1 to gain 1.2
atrMultiplier = input(1.5, title="ATR Multiplier for SL") // ATR multiplier for stop loss
// Calculate EMAs
ema9 = ta.ema(close, shortEmaLength)
ema21 = ta.ema(close, mediumEmaLength)
ema55 = ta.ema(close, longEmaLength)
// Plot EMAs on the chart
plot(ema9, color=color.blue, title="9 EMA")
plot(ema21, color=color.orange, title="21 EMA")
plot(ema55, color=color.red, title="55 EMA")
// Define Long and Short Conditions
longCondition = ta.crossover(ema9, ema21) and ema21 > ema55
shortCondition = ta.crossunder(ema9, ema21) and ema21 < ema55
// Calculate the Average True Range (ATR) for better stop loss positioning
atr = ta.atr(14) // Using a 14-period ATR for dynamic SL
// Execute Long trades
if (longCondition)
// Set stop loss and take profit prices
stopLoss = close - (atr * atrMultiplier)
takeProfit = close + ((close - stopLoss) * riskRewardRatio)
strategy.entry("Long", strategy.long, stop=stopLoss, limit=takeProfit)
// Execute Short trades
if (shortCondition)
// Set stop loss and take profit prices
stopLoss = close + (atr * atrMultiplier)
takeProfit = close - ((stopLoss - close) * riskRewardRatio)
strategy.entry("Short", strategy.short, stop=stopLoss, limit=takeProfit)