Кроссовер экспоненциальной скользящей средней и скользящей средней с тесной стратегией

Автор:Чао Чжан, Дата: 2024-01-19 14:50:50
Тэги:

img

Обзор

Экспоненциальный скользящий средний (EMA) и скользящий средний (MA) перекресток с стратегией закрытия генерирует торговые сигналы на основе движения цены актива относительно его 9-периодного EMA и 20-периодного MA. Он использует EMA и MA перекресток сигналов для определения направления тренда для входов и закрывает позиции, когда цена пересекает скользящие средние.

Логика стратегии

Расчет EMA и MA

  • EMA9 рассчитывает экспоненциальную скользящую среднюю за 9 периодов.
  • ma20 рассчитывает 20-периодную простую скользящую среднюю цены закрытия.

Условия покупки и продажи

  • buyCondition является истинным, когда ближайшее > и ema9 и ma20. Это интерпретируется как бычий сигнал.
  • sellCondition является истинным, когда close < как ema9, так и ma20.

Исполнение сделки

  • При buyCondition true выполняется длинный ордер.
  • Когда sellCondition является истинным, выполняется короткий ордер на вход.
  • Когда цена пересекает EMA9 или MA20, закрыть любую открытую позицию.

Цветение свечей

  • Зеленые свечи указывают на условие покупки
  • Красные свечи указывают на продажу.
  • Другие свечи по умолчанию белые.

Схема EMA и MA

9 EMA и 20 MA изображены на графике для визуальной справки.

Анализ преимуществ

Стратегия сочетает в себе два широко используемых индикатора, используя возможности EMA и MA по слежению за трендом и сглаживанию, чтобы генерировать более надежные сигналы.

Кроссоверы дают четкие сигналы изменения тренда, избегая плохих сделок.

Цветовое кодирование свечи визуально указывает на условия без сложных расчетов.

Автоматизированное выполнение входа и выхода строго следует заранее определенным правилам, что способствует управлению рисками.

Анализ рисков

Как индикаторы тренда, скользящие средние могут производить много ложных сигналов в периоды диапазона.

Быстрые движения цен могут создать задержку в значениях MA и EMA, что приводит к упущенным возможностям.

Параметры EMA и MA оказывают существенное влияние на эффективность стратегии и должны корректироваться для различных продуктов и временных рамок.

Автоматизированные стратегии не могут адаптироваться к сложным ситуациям, как человеческий трейдер.

Руководство по оптимизации

Испытывайте различные комбинации длины EMA и MA, чтобы найти оптимальные параметры, которые максимизируют истинные сигналы и минимизируют ложные сигналы.

Включить показатели волатильности, такие как ATR, чтобы отфильтровать более высокие риски и контролировать потенциальные потери.

Сочетать с другими индикаторами или сигналами, такими как объем и полосы Боллинджера, чтобы подтвердить надежность сигнала.

Добавьте стоп-лосс и используйте логику прибыли для активного управления торговым риском.

Резюме

EMA и MA Crossover с Close Strategy используют EMA и MA crossovers для определения тенденций и ввода сигналов.


/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("EMA and MA Crossover with Close Strategy", shorttitle="EMA_MA_Close", overlay=true)

// Define the length of the Exponential Moving Average and Moving Average
lengthEMA = 9
lengthMA = 20

// Calculate the 9 EMA and 20 MA
ema9 = ema(close, lengthEMA)
ma20 = sma(close, lengthMA)

// Define the buy and sell conditions
buyCondition = close > ema9 and close > ma20
sellCondition = close < ema9 and close < ma20

// Define the close position condition
closeCondition = crossover(close, ema9) or crossover(close, ma20)

// Execute buy or sell orders
if (buyCondition)
    strategy.entry("Buy", strategy.long)
else if (sellCondition)
    strategy.entry("Sell", strategy.short)

// Close any position if the close condition is met
if (closeCondition)
    strategy.close_all()

// Coloring the candles based on conditions
barcolor(buyCondition ? color.green : na)
barcolor(sellCondition ? color.red : na)

// Plotting the EMA and MA for reference
plot(ema9, color=color.blue, title="9 EMA")
plot(ma20, color=color.orange, title="20 MA")


Больше