Cette stratégie génère des signaux de trading en calculant la moyenne mobile croisée des bougies Heiken Ashi, combinée au MACD comme condition de filtre.
Calculez les prix d'ouverture et de fermeture des bougies Heiken Ashi.
Calculer la moyenne mobile rapide (EMA) et la moyenne mobile lente (SMA).
Lorsque la MA rapide dépasse la MA lente, un signal d'achat est généré.
Lorsque l'AM rapide passe sous l'AM lent, un signal de vente est généré.
Si le filtre MACD est activé, les signaux d'achat ne sont générés que lorsque l'histogramme MACD franchit la ligne 0, et les signaux de vente ne sont générés que lorsque l'histogramme MACD franchit la ligne 0.
Les bougies Heiken Ashi filtrent efficacement le bruit du marché, rendant les signaux de croisement MA plus fiables.
La combinaison d'AM de périodes différentes permet d'éviter de fausses ruptures d'une seule AM.
Le filtre MACD évite également les faux signaux et améliore la qualité du signal.
L'utilisation de Heiken Ashi pour calculer l'AM réduit les tirages des bougies ordinaires.
La stratégie présente des paramètres raisonnables et une fréquence de négociation modérée, ce qui permet des profits stables sans négociation à haute fréquence.
Cependant, il faut prendre en compte certains risques:
Des ajustements répétés de position peuvent se produire sur des marchés variables.
Dans certains cas, le filtre MACD peut échouer, ce qui entraîne de faux signaux.
Les systèmes MA sont sensibles au réglage des paramètres, nécessitant une optimisation minutieuse.
Les positions de détention à long terme doivent faire l'objet d'un suivi des événements susceptibles de provoquer des changements importants sur le marché.
Le jugement manuel des principales tendances est encore nécessaire pour éviter les pertes résultant de transactions contre-tendance.
En conclusion, il s'agit d'une stratégie MA relativement mature qui peut fournir des profits stables avec un réglage approprié des paramètres.
/*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)