Стратегия двойного прорыва скользящей средней

Автор:Чао Чжан, Дата: 2023-12-05 10:46:05
Тэги:

img

Обзор

Двойная стратегия прорыва скользящей средней генерирует сигналы покупки, когда быстрая EMA пересекает более медленную EMA, и закрывает позиции, когда быстрая EMA пересекает ниже медленной EMA. Стратегия также включает в себя индикатор MACD в качестве вспомогательного показателя суждения. Когда гистограмма MACD пересекает линию 0, генерируется сигнал покупки, который может соответствовать стратегии скользящей средней для дальнейшей проверки сигнала. Кроме того, стратегия также отслеживает, достигает ли однодневный рост определенного процентного порога. Если однодневный рост превышает установленный порог, также будет генерироваться сигнал покупки.

С точки зрения выходов, стратегия устанавливает уровень стоп-лосса и уровень получения прибыли. Стоп-лосс фиксируется на определенном проценте ниже входной цены для контроля риска снижения; прибыль фиксируется на определенном проценте выше входной цены для закрепления прибыли.

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

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

Основными показателями двойной движущейся средней стратегии прорыва являются быстрая EMA и медленная EMA. EMA представляет собой экспоненциальную движущуюся среднюю, которая является индикатором тренда. Быстрая EMA обычно имеет более короткий параметр для улавливания краткосрочных тенденций, в то время как медленная EMA обычно имеет более длинный параметр для определения направления долгосрочного тренда. Когда быстрая EMA пересекает более медленной EMA, это указывает на укрепление краткосрочной тенденции и предполагает длинный ход. Когда быстрая EMA пересекает ниже медленной EMA, это указывает на ослабление краткосрочной тенденции и предполагает закрытие позиций.

Параметры по умолчанию для этой стратегии составляют 12 дней для быстрой EMA и 26 дней для медленной EMA. Этот набор параметров является типичным, и соответствующий временной рамок является подходящим. Цена закрытия акции используется в качестве ввода цены для расчета EMA.

Кроме того, стратегия вводит индикатор MACD в качестве вспомогательного инструмента суждения. Определение индикатора MACD - это быстрая EMA (неполноценный 12 дней) минус медленная EMA (неполноценный 26 дней), за которой следует сглаживание линии сигнала MACD. Когда MACD пересекает линию 0, это означает, что краткосрочные прибыли превышают долгосрочные прибыли и дает сигнал покупки. Этот сигнал соответствует стратегии скользящей средней и может играть роль проверки и повышения надежности торговых сигналов.

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

Для выходов стратегия предусматривает уровень стоп-лосса и уровень прибыли. Стоп-лосс фиксируется на определенном проценте (по умолчанию 5%) ниже цены входа для контроля потерь. Прибыль фиксируется на определенном проценте (по умолчанию 40%) выше цены входа для блокировки прибыли.

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

Стратегия перекрестного использования двойной скользящей средней имеет следующие преимущества:

  1. Гибкое сочетание следующего тренда и краткосрочной торговли. Двойная скользящая средняя сама по себе подходит для определения среднесрочных и долгосрочных тенденций. Добавление индикаторов MACD и суждений о объеме может учитывать краткосрочные торговые возможности.

  2. Надежные торговые сигналы, которые легко оценить. Быстрый переход EMA над медленной EMA образует стандартный золотой крестный сигнал, который прост и интуитивно понятен для определения. Включение индикатора MACD может играть роль проверки и улучшения качества сигнала.

  3. Контролируемые риски с помощью принципов стоп-лосса и прибыли. Предварительное установление уровня стоп-лосса может быстро сократить убытки и избежать огромных выводов. Установление уровня прибыли также позволяет блокировать частичную прибыль.

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

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

Стратегия перекрестного использования двойной скользящей средней также имеет следующие риски:

  1. Комбинации отдельных индикаторов могут генерировать ложные сигналы. Как двойные скользящие средние, так и MACD могут иметь ложные сигналы и плохие эффекты отслеживания. Для проверки соответствия следует ввести больше типов индикаторов.

  2. В случае событий черного лебедя отсутствие достаточно большого общего порога стоп-лосса может привести к огромным потерям. Это требует ручного вмешательства для контроля риска.

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

  4. Неточное время выбора пунктов входа и выхода. Стратегия не выбирает лучшие точки входа и выхода. Для оптимизации требуются более сложные правила или методы машинного обучения.

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

Стратегия перекрестного использования двойной скользящей средней может быть оптимизирована в следующих аспектах:

  1. Увеличить показатели проверки для улучшения качества сигнала. Другие показатели, такие как KDJ и BOLL, могут быть проверены для формирования системы проверки с несколькими показателями для уменьшения ложных сигналов.

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

  3. Оптимизировать параметры периода EMA и влияние испытаний на стратегию. Различные комбинации параметров могут быть поисковыми сетками, чтобы найти оптимальный набор и улучшить стабильность.

  4. Добавить адаптивные механизмы стоп-лосса на основе рыночного режима. Динамически отслеживать уровень стоп-лосса. Расслабить диапазон стоп-лосса соответствующим образом в особых рыночных условиях для улучшения показателя выигрыша.

  5. Оптимизировать уровень прибыли путем исследования оптимального коэффициента прибыли, например, установление динамических целей прибыли, адекватное установление остановок во время бычьих рынков и т. Д.

Заключение

Стратегия перекрестного использования двойной скользящей средней имеет полную структуру, разумный выбор индикаторов и настройки параметров. Это подходящая тенденция после краткосрочной торговой стратегии для очень волатильных акций. Но есть место для оптимизации, включая увеличение показателей суждения, добавление машинного обучения и оптимизацию параметров для дальнейшего улучшения эффективности стратегии.


/*backtest
start: 2022-11-28 00:00:00
end: 2023-12-04 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Volatile Stocks", overlay=true)

//Trading Strategy for Highly Volitile Stocks//
// by @ShanghaiCrypto //

////EMA////
fastLength = input(12)
slowLength = input(26)
baseLength = input(100)
price = close

emafast = ema(price, fastLength)
emaslow = ema(price, slowLength)
emabase = ema(price, baseLength)

///MACD////
MACDLength = input(9)
MACDfast = input(12)
MACDslow = input(26)
MACD = ema(close, MACDfast) - ema(close, MACDslow)
aMACD = ema(MACD, MACDLength)
delta = MACD - aMACD

////PUMP////
OneCandleIncrease = input(8, title='Gain %')
pump = OneCandleIncrease/100

////Profit Capture and Stop Loss//////
stop = input(5.0, title='Stop Loss %', type=float)/100
profit = input(40.0, title='Profit %', type=float)/100
stop_level = strategy.position_avg_price * (1 - stop)
take_level = strategy.position_avg_price * (1 + profit)

////Entries/////
if crossover(emafast, emaslow)
    strategy.entry("Cross", strategy.long, comment="BUY")

if (crossover(delta, 0))
    strategy.entry("MACD", strategy.long, comment="BUY")
    
if close > (open + open*pump)
    strategy.entry("Pump", strategy.long, comment="BUY")

/////Exits/////
strategy.exit("SELL","Cross", stop=stop_level, limit=take_level)
strategy.exit("SELL","MACD", stop=stop_level, limit=take_level)
strategy.exit("SELL","Pump", stop=stop_level, limit=take_level)

////Plots////
plot(emafast, color=green)
plot(emaslow, color=red)
plot(emabase, color=yellow)
plot(take_level, color=blue)
plot(stop_level, color=orange)

Больше