Momentum Crossover gleitender Durchschnitt und MACD Filter Heikin-Ashi Kerzenstrahlstrategie

Schriftsteller:ChaoZhang, Datum: 2024-01-02 12:18:03
Tags:

img

Übersicht

Diese Strategie nutzt die Heikin-Aschi-Candlestick-Technik in Kombination mit gleitenden Durchschnitts-Crossover-Signalen und dem MACD-Indikator zur Filtration, um eine trendfolgende Strategie zu konstruieren.

Strategie Logik

Die Strategie stützt sich hauptsächlich auf drei wichtige technische Indikatoren:

  1. Heikin-Ashi Candlesticks. Es modifiziert den Schlusskurs, um schattenlose Kerzenbalken zu konstruieren, die deutlicher wahre Preistrends zeigen und übermäßigen Marktlärm filtern können.

  2. Der schnelle EMA erfasst kurzfristige Trends, während der langsame EMA langfristige Trendrichtungen beurteilt. Ein Kaufsignal wird erzeugt, wenn der schnelle EMA über den langsamen EMA überschreitet; ein Verkaufssignal wird erzeugt, wenn der schnelle EMA unter den langsamen EMA überschreitet.

  3. Der MACD-Indikator kombiniert schnelle und langsame EMAs. Wenn die MACD-Linie über der Signallinie liegt, ist dies ein Aufwärtssignal; wenn sie darunter liegt, ist dies ein Bärensignal.

Die Handelssignale dieser Strategie stammen aus dem goldenen/toten Kreuz der schnellen und langsamen EMAs. Um falsche Signale auszufiltern, wird der MACD-Indikator zur Hilfsbeurteilung eingeführt. Nur wenn der MACD ein Signal ausgibt, das mit dem EMA-Crossover übereinstimmt, wird das endgültige Handelssignal ausgelöst, was die Wahrscheinlichkeit falscher Trades erheblich reduziert.

Insbesondere wird ein Kaufsignal erzeugt, wenn die schnelle EMA über die langsame EMA (goldenes Kreuz) und die MACD-Linie gleichzeitig über die Signallinie (bullisches Signal) geht; wenn die schnelle EMA gleichzeitig unter die langsame EMA (tödes Kreuz) und die MACD-Linie unter die Signallinie (bärisches Signal) geht, wird ein Verkaufssignal erzeugt.

Diese Kombination aus gleitendem Durchschnitts-Crossover und MACD-Filterung kann wichtige Wendepunkte auf dem Markt effektiv identifizieren und die Preisentwicklung entsprechend erfassen.

Vorteile

Die Strategie weist folgende herausragende Vorteile auf:

  1. Die Heikin-Ashi-Technik bietet ein klareres Trendbeurteilen, während die Stärke der Crossover-Signale aus den beiden EMAs ebenfalls stark ist.

  2. Relativ geringes Abzugsrisiko. Der MACD kann als Hilfsindikator die Stop-Loss-Risiken bis zu einem gewissen Grad mindern und unerwünschte Liquidationsverluste wirksam reduzieren.

  3. Die Perioden der Heikin-Ashi-Kerzen, schnelle/langsame EMAs des gleitenden Durchschnittssystems, Parameter des MACD usw. können alle anhand der Marktbedingungen angepasst werden, um die Strategie anpassungsfähiger zu machen.

  4. Einfache und klare Implementierung: Mit Heikin-Aschi-Kerzen zur Kennzeichnung von Preisen und unterstützt durch gemeinsame Indikatoren zur Bestimmung ist es einfach zu programmieren, mit ordentlichen und prägnanten Codes, die intuitiv zu verstehen sind.

  5. Durch Trendverfolgung kann die Strategie in den meisten Fällen die Kapitalbewegungen an die Hauptmarktrichtung anpassen und effizienter Renditen erzielen.

Risiken

Die Strategie birgt außerdem folgende potenzielle Risiken:

  1. Wenn die Preise kurzfristig erheblich voneinander abweichen oder sich rasch umkehren, können Stop-Loss-Maßnahmen fehlschlagen und Verluste weit über die Erwartungen hinaus verursachen.

  2. Möglichkeiten von MACD-Fehlern. Der MACD als Hilfsindikator kann auch falsche Anrufe tätigen, was dazu führt, dass die Strategie Positionen falsch festlegt oder schließt.

  3. Bei festgelegten Parameterkombinationen kann es vorkommen, dass sie sich nicht an den sich ständig verändernden Markt anpassen und somit gute Handelsmöglichkeiten verpassen.

  4. Potenziell hohe Handelsfrequenz: Trendfolgende Methoden könnten zu häufigen Trades führen, die Kosten erhöhen und Schlupfverluste verursachen.

Um die oben genannten Risiken abzuschwächen und zu verringern, können folgende Maßnahmen ergriffen werden:

  1. Stellen Sie Stop-Loss-Punkte fest, um Verluste für einzelne Trades zu begrenzen.

  2. MACD-Parameter anpassen, um die Wahrscheinlichkeit eines falschen Signals zu verringern.

  3. Mechanismen für die Optimierung von Parametern erstellen, maschinelles Lernen usw. einsetzen, um Parameterkombinationen automatisch zu stimmen, um eine höhere Anpassungsfähigkeit zu erzielen.

  4. Entsprechende Lockerung der Auslöserbedingungen für Handelssignale, um die Handelshäufigkeit zu reduzieren, oder Festlegung von Mindestschwellenwerten für die Preisänderung.

Optimierung

Ein großes Potenzial liegt in der weiteren Optimierung der Strategie, einschließlich:

  1. Optimieren Sie Heikin-Ashi-Kandeldurchläufe. Testen Sie längere oder kürzere Perioden, um diejenigen zu finden, die die Markttrends am besten zeigen.

  2. Anpassung der Parameter des gleitenden Durchschnittssystems Anpassung der Perioden der schnellen/langsamen EMAs zur Entdeckung optimaler Parametermengen.

  3. Multiparameter-Optimierung des MACD. Feinabstimmungsparameter der schnellen/langsamen EMAs und der MACD-Signallinie, um überlegene Konfigurationen zu finden.

  4. Stärkung der Risikomanagement-Module; Erarbeitung wissenschaftlicher Stop-Loss-/Take-Profit-Regeln, Integration der Positionsgröße, Kapitalmanagement usw.

  5. Mehr Hilfsindikatoren hinzufügen, andere Indikatoren wie KD, RSI für mehrfache Bestätigung, Verbesserung der Signalqualität.

  6. Einsatz von maschinellen Lerntechniken, Nutzung neuronaler Netzwerke, genetischer Algorithmen usw. zur Echtzeitoptimierung von Strategieparametern für höhere Anpassungsfähigkeit.

Mit iterativen Kombinationen von technischen Indikatoren, kontinuierlichen Optimierungen von Parametern, stärkeren Risikokontrollmodulen usw. kann mit einer deutlichen Leistungssteigerung der Strategie für eine stabilere und effizientere Rentabilität gerechnet werden.

Schlussfolgerung

Diese Strategie erfasst Markttrends, indem sie Heikin-Aschi-Kerzen und gleitende Durchschnitts-Crossovers kombiniert, unterstützt durch MACD-Filtration zur Erkennung von hochzuverlässigen Wendepunkten und Handelssignalen. Die zurückgetesteten Ergebnisse sind hervorragend, mit Vorteilen wie hoher Gewinnwahrscheinlichkeit, niedrigen Drawdowns, hoher Tunable. In der Zwischenzeit muss die Risikokontrolle auch auf die Absicherungseffekte von extremen Marktbewegungen achten. Mit kontinuierlichen Verbesserungen und Optimierungen zeigt die Strategie ein großes Potenzial als hochwirksame quantitative Handelsstrategie.


/*backtest
start: 2022-12-26 00:00:00
end: 2024-01-01 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
//Heikin Ashi Strategy  V1 by nachobuey

strategy("Heikin Ashi Strategy  V2",shorttitle="HAS V2",overlay=true)
res = input(title="Heikin Ashi Candle Time Frame",  defval="15")
hshift = input(0,title="Heikin Ashi Candle Time Frame Shift")
//res1 = input(title="Heikin Ashi EMA Time Frame", type=resolution, defval="180")
res1   = input(title="Time frame (Minutes. Not lower than chart)",defval="300")
mhshift = input(0,title="Heikin Ashi EMA Time Frame Shift")
fama = input(16,"Heikin Ashi EMA Period")
test = input(0,"Heikin Ashi EMA Shift")
sloma = input(21,"Slow EMA Period")
slomas = input(0,"Slow EMA Shift")
macdf = input(false,title="With MACD filter")
res2 = input(title="MACD Time Frame",  defval="60")
macds = input(1,title="MACD Shift")




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

//macd
[macdLine, signalLine, histLine] = macd(close, 12, 26, 9)
macdl = request.security(ha_t,res2,macdLine[macds])
macdsl= request.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("Long",strategy.long,when = golong)
strategy.entry("Short",strategy.short,when = goshort)

plotchar(golong,char="L", color=green)
plotchar(goshort,char="S", color=red)

alertcondition(golong, "HAS GO LONG", "OPEN LONG")
alertcondition(goshort, "HAS GO SHORT", "OPEN SHORT")



Mehr