Стратегия торговли движущейся средней

Автор:Чао Чжан, Дата: 2023-10-24 14:39:08
Тэги:

img

Обзор

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

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

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

  1. Использование свечей Хайкина Аши позволяет отфильтровать шум на рынке и определить тенденции.

  2. Быстрое пересечение MA над медленным MA указывает на тенденцию к росту, длинный ход; пересечение ниже указывает на тенденцию к снижению, короткий ход.

  3. Индикатор MACD может идентифицировать ценовые тенденции и фильтровать ложные прорывы. Хистограмма MACD выше 0 указывает на бычий рынок, ниже 0 - медвежий рынок.

  4. В частности, стратегия сначала рассчитывает открытые и закрытые цены свечей Хайкина Аши. Затем она рассчитывает быструю и медленную линии EMA. Она длинная, когда быстрая EMA пересекает более медленной EMA, и короткая, когда быстрая EMA пересекает ниже медленной EMA.

Преимущества

  1. Свечи Хайкина Аши могут отфильтровать шум и помочь определить направление тренда.

  2. Быстрая и медленная EMA кросс-система - это зрелая стратегия торговли, которая следует тенденции.

  3. Фильтр MACD обеспечивает более точные торговые сигналы, уменьшая ложные прорывы.

  4. Стратегия имеет большое пространство для оптимизации путем корректировки периодов EMA, параметров MACD и т.д.

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

Риски

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

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

  3. Фильтр MACD зависит от настройки параметров, неправильные настройки могут не эффективно фильтровать ложные прорывы.

  4. Внезапные скачки цены могут привести к стоп-лосс и большим потерям.

  5. Трудно установить правильный стоп-лосс на волатильных рынках, риски усиления потерь.

Оптимизация

  1. Оптимизировать параметры периода EMA для поиска оптимальных комбинаций.

  2. Оптимизировать параметры MACD для улучшения возможности определения тренда.

  3. Добавьте другие технические индикаторы, такие как RSI, KD и т.д., для фильтрации сигналов.

  4. Определить диапазон торговли на основе линий тренда, уровней поддержки/сопротивления и т.д.

  5. Настройка параметров в соответствии с различными крипто характеристиками.

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

Резюме

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


/*backtest
start: 2023-09-23 00:00:00
end: 2023-10-23 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
//Heikin Ashi Strategy  V3 by breizh29

// strategy("Heikin Ashi Strategy  V3",shorttitle="HAS V3",overlay=true,default_qty_value=100,initial_capital=100,currency=currency.EUR) 
res = input(title="Heikin Ashi Candle Time Frame",  defval="30")
hshift = input(1,title="Heikin Ashi Candle Time Frame Shift")
res1 = input(title="Heikin Ashi EMA Time Frame",  defval="180")
mhshift = input(0,title="Heikin Ashi EMA Time Frame Shift")
fama = input(1,"Heikin Ashi EMA Period")
test = input(1,"Heikin Ashi EMA Shift")
sloma = input(10,"Slow EMA Period")
slomas = input(1,"Slow EMA Shift")
macdf = input(false,title="With MACD filter")
res2 = input(title="MACD Time Frame",  defval="12")
macds = input(1,title="MACD Shift")




//Heikin Ashi Open/Close Price
ha_t = heikinashi(syminfo.tickerid)
ha_open = security(ha_t, res, open[hshift])
ha_close = security(ha_t, res, close[hshift])
mha_close = security(ha_t, res1, close[mhshift])

//macd
[macdLine, signalLine, histLine] = macd(close, 12, 26, 9)
macdl = security(ha_t,res2,macdLine[macds])
macdsl= security(ha_t,res2,signalLine[macds])

//Moving Average
fma = ema(mha_close[test],fama)
sma = ema(ha_close[slomas],sloma)
plot(fma,title="MA",color=lime,linewidth=2,style=line)
plot(sma,title="SMA",color=red,linewidth=2,style=line)


//Strategy
golong =  crossover(fma,sma) and (macdl > macdsl or macdf == false )
goshort =   crossunder(fma,sma) and (macdl < macdsl or macdf == false )


strategy.entry("Buy",strategy.long,when = golong)
strategy.entry("Sell",strategy.short,when = goshort)

Больше