Это количественная торговая стратегия, основанная на двойном перекрестном EMA и следующем тренде. Стратегия в основном использует 47-периодные и 95-периодные экспоненциальные скользящие средние (EMA) для улавливания рыночных тенденций, выполняя сделки на основе сигналов перекрестного EMA. Работая в 15-минутный временной промежуток, она сочетает в себе технический анализ и принципы импульсной торговли для достижения последовательной доходности от торговли.
Основной механизм основан на выявлении изменений тренда через перекрестки между краткосрочной EMA (47-периодической) и долгосрочной EMA (95-периодической). Сигналы покупки генерируются, когда краткосрочная EMA пересекает длинную EMA, в то время как позиции закрываются, когда краткосрочная EMA пересекает ниже. Эта конструкция основана на принципах динамики цен и продолжения тренда, используя перекрестки EMA для подтверждения точек перехода тренда.
Это хорошо структурированная и логически строгая стратегия следования тенденциям. Она фиксирует рыночные тенденции с помощью двойных кроссоверов EMA, предлагая хорошую работоспособность и масштабируемость. Хотя существуют определенные ограничения, постоянная оптимизация и улучшение могут превратить ее в стабильную и надежную торговую систему. Ключом является гибкое регулирование параметров на основе различных характеристик рынка и создание комплексных механизмов контроля рисков.
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-27 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("EMA Crossover Strategy", overlay=true) // Define the EMA periods shortEmaPeriod = 47 longEmaPeriod = 95 // Calculate EMAs ema11 = ta.ema(close, shortEmaPeriod) ema21 = ta.ema(close, longEmaPeriod) // Plot EMAs on the chart plot(ema11, title="11 EMA", color=color.blue, linewidth=2) plot(ema21, title="21 EMA", color=color.red, linewidth=2) // Generate trading signals longSignal = ta.crossover(ema11, ema21) shortSignal = ta.crossunder(ema11, ema21) // Execute trades based on signals if (longSignal) strategy.entry("Buy", strategy.long) if (shortSignal) strategy.close("Buy") // Optional: Plot buy and sell signals on the chart plotshape(series=longSignal, location=location.belowbar, color=color.green, style=shape.labelup, text="Buy") plotshape(series=shortSignal, location=location.abovebar, color=color.red, style=shape.labeldown, text="Sell") // Plot buy/sell signals on the main chart plotshape(series=longSignal, location=location.belowbar, color=color.green, style=shape.labelup, text="Buy") plotshape(series=shortSignal, location=location.abovebar, color=color.red, style=shape.labeldown, text="Sell")