HMA tägliche Crossover-Handelsstrategie

Schriftsteller:ChaoZhang, Datum: 22.09.2023
Tags:

Übersicht

Diese Strategie führt Trades auf Basis von HMA-Linien und täglichen Kerzenkreuzungen ein und verwaltet Positionen unter Verwendung von Stop-Loss- und Take-Profit-Logik.

Strategie Logik

Die wichtigsten Signale und Regeln:

  • HMA-Linie: Berechnet Hull Moving Average, um den mittelfristigen Trend zu bestimmen.

  • Tagesschlusskurs: Beurteilt die kurzfristige Kursentwicklung.

  • Eintrittssignal: HMA überschreitet den vorherigen Tagesschluss, wobei der Kurs für lang höher ist als für lang. Umgekehrt für kurz.

  • Stop-Loss/Take-Profit: Feste Niveaus, um Positionen zu schließen, wenn sie getroffen werden.

Vorteile

  • Einstellbare HMA-Parameter für Anpassungsfähigkeit.

  • Es werden mehrere Zeitrahmenindikatoren für Qualitätssignale berücksichtigt.

  • Stop-Loss/Take-Profit erleichtert das Risikomanagement.

  • Klare Einstiegsregeln und Positionsmanagement.

  • Die Backtestparameter können für verschiedene Märkte optimiert werden.

Risiken

  • HMA-Verzögerung kann den besten Einstiegszeitpunkt verpassen.

  • Festgelegte Stop-Loss-/Take-Profit-Verfahren können zu aggressiv oder konservativ sein.

  • Fehlt ein Trendstärkenfilter, riskiert Gegentrendgeschäfte.

  • Einfache Regeln neigen zu falschen Signalen.

Verbesserungen

  1. Optimieren Sie die HMA-Parameter für Verzögerungen.

  2. Verwenden Sie den Stop-Loss für den Rückzug statt für den Fix.

  3. Fügen Sie Volumen- oder Momentumindikatoren hinzu, um die Trendstärke zu beurteilen.

  4. Einbeziehung anderer Indikatoren wie MACD zur Signalbestätigung.

Optimierung

Möglichkeiten zur Optimierung der Strategie:

  1. Optimieren Sie die HMA-Parameter für die ideale Kombination.

  2. Hinzufügen eines Trendstärkenfilters, um Gegentrends zu vermeiden.

  3. Verwenden Sie dynamische Stopps anstelle von festen Niveaus.

  4. Maschinelles Lernen für die automatische Optimierung von Parametern.

  5. Fügen Sie simulierten Handel hinzu, um die Leistung in der realen Welt zu testen.

Zusammenfassung

Die Strategie-Logik ist klar, kann aber noch verbessert werden. Durch das Hinzufügen von Trendfiltern und dynamischen Stopps kann die Stabilität verbessert werden. Insgesamt bietet sie einen angemessenen Rahmen, um mittel- und langfristige Trends zu erfassen.


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

//@version=4
// created by SeaSide420       Enters on crossovers, exits Basket when profit $ = TP
// strategy(title="HMA & D1 crossover", overlay=true, currency="BTC", initial_capital=1, default_qty_type=strategy.percent_of_equity, default_qty_value=1, commission_type=strategy.commission.percent,commission_value=0.25,slippage=1)
SL=input(defval=-0.05,title="StopLoss $",type=input.float,step=0.01, maxval=-0.01)
TP=input(defval=0.05,title="TargetPoint $",type=input.float,step=0.01, minval=0.01)
price=input(title="Source",type=input.source,defval=open)
Period=input(14, minval=1)
hma = wma(2*wma(price, Period/2)-wma(price, Period), round(sqrt(Period)))
s1=security(syminfo.tickerid, timeframe.period, price, barmerge.gaps_off, barmerge.lookahead_off)
s2=security(syminfo.tickerid, "D", price, barmerge.gaps_off, barmerge.lookahead_off)
cp=s2<price?color.lime:color.red
cp1=plot((s2),color=color.black,title="DailyCandle1",linewidth=2,transp=0)
cp2=plot((s2[1]),color=color.black,title="DailyCandle2",linewidth=2,transp=0)
cp3=plot(hma,title="HMA",color=color.black)
fill(cp1,cp2,color=cp,transp=1)
fill(cp1,cp3,color=cp,transp=75)
closeall=strategy.openprofit<SL or strategy.openprofit>TP
if closeall
    strategy.close_all(comment = "Close All")
if (hma>hma[1] and s1>s2 and s2[1]>s2[2] and s1>s2[1])
    strategy.order("Buy", strategy.long)
if (hma<hma[1] and s1<s2 and s2[1]<s2[2] and s1<s2[1])
    strategy.order("Sell", strategy.short)

Mehr