Heikin-Ashi - 0,5% Veränderung der kurzfristigen Handelsstrategie

Schriftsteller:ChaoZhang, Datum: 2023-12-18 12:13:56
Tags:

img

Übersicht

Dies ist eine kurzfristige Handelsstrategie, die Kauf- und Verkaufssignale basierend auf 0,5%igen Veränderungen des Heikin-Ashi-Schlusskurses ausgibt.

Strategie Logik

Die Kernlogik dieser Strategie lautet:Gehen Sie lang, wenn der Heikin-Ashi-Schlusskurs im Vergleich zur vorherigen Kerze um 0,5% steigt; Gehen Sie kurz, wenn der Heikin-Ashi-Schlusskurs im Vergleich zur vorherigen Kerze um 0,5% fällt.

Insbesondere berechnet die Strategie zunächst die prozentuale Veränderung zwischen dem aktuellen Schlusskurs und dem vorherigen Schlusskurs, d. h.priceChange = close / close[1] - 1Wenn.priceChange >= 0.005, wird ein langes Signal ausgegeben.priceChange <= -0.005, wird ein kurzes Signal ausgegeben.

Bei der Ausgabe von Signalen beurteilt die Strategie auch, ob eine bestehende Position vorhanden ist. Wenn bereits eine Position (long oder short) vorhanden ist, wird kein Signal wiederholt. Wenn keine Position vorhanden ist, wird sie auf der Grundlage der Kauf- oder Verkaufsbedingungen offene Positionssignale ausstellen.

Und schließlich:plotshapewird verwendet, um die Kauf- und Verkaufssignale auf dem Diagramm zu markieren.

Vorteile

  • Die Verwendung von Heikin-Ashi-Wechselkursen als Handelssignal, das die Kursentwicklung besser erfasst als einfacher gleitender Durchschnitt usw.
  • Ausgabe von Signalen basierend auf winzigen 0,5% Preisänderungen, so dass es extrem empfindlich und geeignet für den kurzfristigen Handel
  • Sehr einfache und einfache Logik, leicht zu verstehen und umzusetzen
  • Anwendbar auf mehrere Zeitrahmen, sehr flexibel

Risiken und Lösungen

  • Heikin-Ashi selbst konzentriert sich mehr auf kurzfristige Kursbewegungen, anfällig für Marktlärm und falsche Signale
    • Anpassen von Parametern wie nur auf 1% oder 2% Änderungen reagieren, um niedrigere falsche Signalraten
  • Zu empfindlich, kann häufig zu hohen Gebühren führen
    • Anpassung der Haltedauer, z. B. mindestens 2 Stunden pro Handel, um Hochfrequenzhandel zu vermeiden
  • Zu viele grafische Markierungen verwirren das Diagramm
    • Verbergen Sie Grafikformen und überprüfen Sie nur Signale aus dem Strategieprotokoll

Optimierungsrichtlinien

Die wichtigsten Aspekte zur Optimierung dieser Strategie:

  1. Anpassung der Preisänderungsschwelle anhand der Marktvolatilität und des Handelsstils, um optimale Parameter zu finden
  2. Einbeziehung von Stop Loss zur Begrenzung des maximalen Verlustprozentsatzes pro Handel
  3. Filter mit anderen Indikatoren hinzufügen, um unnötige Geschäfte während der Konsolidierung zu vermeiden
  4. Einführung von Positionsgrößen für feste Mengen, exponentielle, Netthandel usw.
  5. Optimieren Sie die Eintrittsmechanismen, vermeiden Sie Whipsaws, handeln Sie mit Trend oder Gegentrend

Schlussfolgerung

Zusammenfassend ist dies eine sehr einfache, niedrige Parameter, leicht zu verstehen kurzfristige Handelsstrategie. Es fängt Preisänderungen extrem schnell, geeignet für Hochfrequenz-Händler. Aber auch müssen die Anzahl der Trades zu kontrollieren, um Kosten zu reduzieren. Mit mehreren Optimierungsmethoden, kann es noch bessere Ergebnisse erzielen.


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

//@version=4
strategy("Heikin-Ashi - Change 0.5% short Time Period", shorttitle="Heikin-Ashi - Change 0.5% short Time Period", overlay=true)

// Calculate 0.5% price change
priceChange = close / close[1] - 1

// Buy and Sell Signals
buyp = priceChange >= 0.005
sellp = priceChange <= -0.005

// Initialize position and track the current position
var int position = na

// Strategy entry conditions
buy_condition = buyp and (na(position) or position == -1)
sell_condition = sellp and (na(position) or position == 1)

if buy_condition
    strategy.entry("Buy", strategy.long)
    position := 1

if sell_condition
    strategy.entry("Sell", strategy.short)
    position := -1

// Plot Buy and Sell signals using plotshape
plotshape(series=buy_condition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(series=sell_condition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)


Mehr