Dieser Artikel stellt eine quantitative Handelsstrategie vor, die Fraktalanalyse und Kerzenmuster kombiniert.
Diese Strategie basiert auf einer detaillierten Preisbewegungsanalyse, bei der eine Kombination aus Fraktalanalyse und Kerzenmustererkennung verwendet wird, um eine klare Eintritts- und Stop-Loss-Logik für die Erfassung des Trends zu definieren.
Die Eintrittsbedingung ist: der Preis bricht über das Hoch der vorherigen 2 Bars und ein fraktaler Breakout oder ein bullishes Engulfing oder ein Hammer-Muster tritt auf. Diese Kombination bestätigt langen Signale. Die Stop-Loss-Logik, die den Ausgang bei Preisbruch unter dem Tief der vorherigen 2 Bars definiert, sorgt für schnelle und effektive Stopps.
Für die Mustererkennung verwendet diese Strategie die häufig verwendete Fraktaltheorie, um wichtige Umkehrpunkte zu identifizieren, sowie Algorithmen, um die 3 klassischen Leuchterumkehrmuster zu erkennen.
Die Codierung erfolgt in Pine-Schrift. Fraktal High/Low wird identifiziert, wenn der Preis ein neues 3-Bar-Hoch/Tief erzeugt, und strenge Regeln für Öffnungs-/Schließpreise werden für Engulfing-Muster verwendet.
Hauptvorteile dieser Strategie:
Es gibt noch einige Risiken:
Methoden wie optimierte Stopps, Trendfilterung und Walk-Forward-Analyse können helfen, die oben genannten Risiken zu kontrollieren.
Bereiche für weitere Verbesserungen:
Diese Verbesserungen werden die Stabilität und Rentabilität der Strategie weiter stärken.
Dieser Artikel befasst sich gründlich mit einer Preis-Aktions-Handelsstrategie, die Fraktalen und Kerzenmuster kombiniert. Mit genauer Signalisierung, einfacher Implementierung und effektiver Trendverfolgung kann diese Strategie sowohl systematischen Händlern als auch diskretionären Händlern großen Nutzen bringen. Kontinuierliche Verbesserungen und Verifizierung werden ihre Leistung für den praktischen Handel weiter verbessern.
/*backtest start: 2023-02-12 00:00:00 end: 2024-02-18 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Fractal & Pattern Entry/Exit Strategy", overlay=true) // Fractal calculation fractalHigh = high == highest(3) fractalLow = low == lowest(3) // Pattern detection bullishEngulfing = open < close[1] and close > open[1] and close > open + (open[1] - close[1]) * 2 and low < min(open, close) and high > max(open, close) and open[1] > close[1] bearishEngulfing = open > close[1] and close < open[1] and open > close + (close[1] - open[1]) * 2 and high > max(open, close) and low < min(open, close) and open[1] < close[1] hammer = open < close and close > (high + low + open * 2) / 4 and close - open > (high - low) * 0.6 and high - close < (high - low) * 0.1 and open - low < (high - low) * 0.1 hangingMan = open > close and open < (high + low + close * 2) / 4 and open - close > (high - low) * 0.6 and high - open < (high - low) * 0.1 and close - low < (high - low) * 0.1 // Entry condition longCondition = crossover(close, highest(2)[1]) and (fractalHigh or bullishEngulfing or hammer) shortCondition = crossunder(close, lowest(2)[1]) and (fractalLow or bearishEngulfing or hangingMan) // Exit condition exitLongCondition = crossunder(close, lowest(2)[1]) exitShortCondition = crossover(close, highest(2)[1]) // Entry and exit orders if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short) if (exitLongCondition) strategy.close("Long") if (exitShortCondition) strategy.close("Short") // Plot fractals plotshape(fractalHigh, title="Fractal High", style=shape.triangledown, location=location.abovebar, color=color.green, size=size.small) plotshape(fractalLow, title="Fractal Low", style=shape.triangleup, location=location.belowbar, color=color.red, size=size.small) // Plot patterns plotshape(bullishEngulfing, title="Bullish Engulfing", style=shape.arrowup, location=location.belowbar, color=color.green, size=size.small) plotshape(bearishEngulfing, title="Bearish Engulfing", style=shape.arrowdown, location=location.abovebar, color=color.red, size=size.small) plotshape(hammer, title="Hammer", style=shape.arrowup, location=location.belowbar, color=color.green, size=size.small) plotshape(hangingMan, title="Hanging Man", style=shape.arrowdown, location=location.abovebar, color=color.red, size=size.small)