Heiken Ashi Стратегия кроссовера скользящей средней с MACD фильтром V3

Автор:Чао Чжан, Дата: 2023-10-25 11:26:17
Тэги:

img

Обзор

Эта стратегия генерирует торговые сигналы путем вычисления скользящей средней кроссовера свечей Хайкена Аши в сочетании с MACD в качестве фильтрующего условия.

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

  1. Вычислите цены открытия и закрытия свечей Хайкена Аши.

  2. Вычислить быструю скользящую среднюю величину (EMA) и медленную скользящую среднюю величину (SMA).

  3. Когда быстрый MA пересекает медленный MA, генерируется сигнал покупки.

  4. Когда быстрый MA пересекается ниже медленного MA, генерируется сигнал продажи.

  5. Если фильтр MACD включен, сигналы покупки генерируются только тогда, когда гистограмма MACD пересекает линию 0, а сигналы продажи генерируются только тогда, когда гистограмма MACD пересекает линию 0.

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

  1. Свечи Хайкена Аши эффективно фильтруют рыночный шум, делая сигналы MA более надежными.

  2. Объединение МР различных периодов позволяет избежать ложных вырывов из одного МР.

  3. Фильтр MACD дополнительно избегает ложных сигналов и улучшает качество сигнала.

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

  5. Стратегия имеет разумные параметры и умеренную частоту торговли, что позволяет получать стабильную прибыль без высокой частоты торговли.

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

Однако следует учитывать некоторые риски:

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

  2. В некоторых случаях фильтр MACD может не работать, что приводит к ложным сигналам.

  3. Системы MA чувствительны к настройке параметров, требуя тщательной оптимизации.

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

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

В заключение, это относительно зрелая стратегия MA, которая может обеспечить устойчивую прибыль при правильной настройке параметров.


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

//@version=3
//Heiken-Ashi Strategy  V3 by wziel

// strategy("Heiken-Ashi Strategy  V3",shorttitle="WZIV3",overlay=true,default_qty_value=10000,initial_capital=10000,currency=currency.USD)
res = input(title="Heikin Ashi Candle Time Frame",  defval="60")
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(30,"Slow EMA Period")
slomas = input(1,"Slow EMA Shift")
macdf = input(false,title="With MACD filter")
res2 = input(title="MACD Time Frame",  defval="15")
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)





Больше