Эта стратегия представляет собой простую тенденцию, следующую за стратегией, основанной на перекрестке EMA. Она использует две линии EMA с различными параметрами, краткосрочную линию EMA и долгосрочную линию EMA. Когда краткосрочная линия EMA пересекает линию EMA сверх долгосрочной линии EMA, перейти на длинный курс. Когда краткосрочная линия EMA пересекает линию EMA сверх долгосрочной линии EMA, закрыть позицию. С остановкой потери и получением прибыли для управления риском.
Индикатор EMA - это индикатор, следующий за трендом, который экспоненциально сглаживает цену. Краткосрочная линия EMA реагирует быстрее на изменения цен, отражая недавнюю тенденцию. Долгосрочная линия EMA реагирует медленнее, отражая долгосрочную тенденцию. Когда короткая EMA пересекает длинную EMA, это указывает на то, что недавний подъемный импульс сильнее, чем долгосрочная тенденция, может идти на длинный. И наоборот, когда короткая EMA пересекает длинную EMA, это указывает на то, что недавний нисходящий импульс сильнее, следует закрыть длинную позицию.
Эта стратегия устанавливает 9 периодов и 21 период линий EMA. Используйте перекресток 9 периодов короткой EMA и 21 периода длинной EMA как торговые сигналы:
Решения рисков:
Стратегия использует перекрестный EMA двух EMA для отслеживания тенденций. Ее преимущество заключается в простой логике, средней частоте торговли, улавливании средне- и долгосрочных тенденций. Однако EMA имеет отстающий эффект. Добавление большего количества индикаторов для фильтрации и оптимизация динамического стоп-лосса может еще больше снизить риск. В целом, перекрестный EMA эффективен от захвата средне- и долгосрочных тенденций.
/*backtest start: 2023-01-25 00:00:00 end: 2024-01-31 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("EMA Crossover Strategy", overlay=true) // Input parameters shortPeriod = input(9, title="Short EMA Period") longPeriod = input(21, title="Long EMA Period") stopLossPercent = input(1, title="Stop Loss (%)") / 100 takeProfitMultiplier = input(2, title="Take Profit Multiplier") // Calculate EMAs emaShort = ema(close, shortPeriod) emaLong = ema(close, longPeriod) // Plot EMAs plot(emaShort, color=color.blue, title="Short EMA") plot(emaLong, color=color.red, title="Long EMA") // Strategy logic strategy.entry("Buy", strategy.long, when=crossover(emaShort, emaLong)) strategy.close("Buy", when=crossunder(emaShort, emaLong)) // Risk management atrValue = atr(14) stopLossLevel = close * (1 - stopLossPercent) takeProfitLevel = close * takeProfitMultiplier strategy.exit("Take Profit/Stop Loss", from_entry="Buy", loss=stopLossLevel, profit=takeProfitLevel)