Эта стратегия использует перекрестные сигналы движущихся индициальных средней (EMA) для захвата динамики цены. Она сравнивает короткосрочную EMA с долгосрочной EMA, когда короткосрочная EMA пересекает длительную EMA, что приводит к сигналу покупки, а затем к сигналу продажи. Эта стратегия вводит механизм опоздания на подтверждение торговых сигналов, чтобы гарантировать, что перекрестные сигналы подтверждаются и затем выполняются, что повышает надежность сигналов.
В основе этой стратегии лежит использование ЭМА различных циклов для улавливания изменения динамики цены. ЭМА - это индикатор, отслеживающий тенденции, более чувствительный к изменениям цены. Когда короткая ЭМА проходит длинную ЭМА, это означает, что цена движется вверх, что дает сигнал о покупке; когда короткая ЭМА проходит длинную ЭМА, это означает, что цена движется вниз, что дает сигнал о продаже.
Стратегия внедряет механизм задержки подтверждения сигналов торговли, в котором цена закрытия линии K, которая собирается генерировать сигнал, используется в качестве цены запуска сделки, и задерживается до следующей линии K для выполнения сделки. Это гарантирует подтверждение перекрестного сигнала, повышает надежность сигнала и избегает частых фальшивых сигналов.
Эта стратегия основана на механизме перекрестного сигнализации EMA и механизме подтверждения задержки, чтобы просто и эффективно улавливать изменения динамики цены. Стратегическая логика ясна, легко реализуема и оптимизируема. Но при этом существуют риски, такие как чувствительность к параметрам, рыночные колебания и изменение тренда.
/*backtest start: 2023-05-22 00:00:00 end: 2024-05-27 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © anshchaubey1373 //@version=5 strategy("EMA Crossover Strategy", overlay=true) // Define the EMA lengths shortEmaLength = 10 longEmaLength = 21 // Calculate the EMAs shortEma = ta.ema(close, shortEmaLength) longEma = ta.ema(close, longEmaLength) // Plot the EMAs plot(shortEma, title="10 EMA", color=color.blue) plot(longEma, title="21 EMA", color=color.red) // Generate buy and sell signals longCondition = ta.crossover(shortEma, longEma) shortCondition = ta.crossunder(shortEma, longEma) // Delay the signal by one bar longSignal = ta.valuewhen(longCondition, close, 1) shortSignal = ta.valuewhen(shortCondition, close, 1) // Plot buy and sell signals plotshape(series=longCondition[1], location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") plotshape(series=shortCondition[1], location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL") // Strategy logic for entering positions if (longCondition[1]) strategy.entry("Long", strategy.long) if (shortCondition[1]) strategy.entry("Short", strategy.short)