Strategie zur Umkehrung des Ausbruchs

Schriftsteller:ChaoZhang, Datum: 2023-10-27 16:14:16
Tags:

img

Übersicht

Die Reversal Breakout Strategie verwendet Bollinger Bands und Stochastic Oscillator, um potenzielle Umkehrpunkte zu identifizieren, wenn ein Vermögenswert überkauft oder überverkauft wird. Es ist für Intraday-Händler geeignet, kleine Preisschwankungen für Gewinne zu nutzen. Die Hauptidee ist es, nach Handelsmöglichkeiten zu suchen, wenn der Preis aus den Bollinger Bands und Stochastic ausbricht.

Strategie Logik

Die Strategie verwendet sowohl Bollinger Bands als auch Stochastic als die wichtigsten technischen Indikatoren. Bollinger Bands werden auf Standardabweichungsniveaus über und unter einem einfachen gleitenden Durchschnitt gezeichnet. Preise, die den oberen Band erreichen, werden als überkauft betrachtet, während der untere Band überverkauft ist. Der Stochastic Oscillator bestimmt, ob sich die Preise zu weit bewegt haben und eine Umkehrung erwarten. Lesungen über 80 deuten auf Überkaufbedingungen hin, während unter 20 Überverkauf.

Die Handelsregeln sind: Long gehen, wenn der Preis unter dem unteren Bollinger-Band bricht und der Stochastic unter 20 liegt; Short gehen, wenn der Preis über dem oberen Band bricht und der Stochastic über 80 liegt. Der Stop-Loss wird ein paar Pips unter dem Tief (für Longs) oder über dem Hoch (für Shorts) platziert.

Die Crossovers identifizieren die Bandbreakouts. Formmarker zeichnen die Eintrittssignale ab. Stops und Gewinnziele werden nach dem Eintritt definiert.

Vorteile

Die Kombination von Bands für Support/Widerstand und Stochastic für Überkauf/Überverkauf verbessert die Signalqualität im Vergleich zu einem einzigen Indikator.

Der enge Stop-Loss hilft, Verluste zu begrenzen. Gewinn basierend auf der durchschnittlichen wahren Bandbreite zielt auf eine ausgewogene Belohnung / Risiko ab. Hochfrequenzhandel erfasst kleine Bewegungen.

Risiken

Die Bandbreaks gehen von einer mittleren Umkehr aus, die fehlschlagen kann.

Kleine Stopps beschränken das Gewinnpotenzial.

Verbesserungen

Testen Sie längere Bollinger-Perioden oder bestätigen Sie Schließungen außerhalb von Bands, um die Qualität zu verbessern.

Kombination anderer Indikatoren wie MACD und KD mit Stochastic für bessere Überkauf-/Überverkaufssignale.

Betrachten Sie dynamische Stopps, die auf Volatilität anstelle von festen Pips basieren.

Schlussfolgerung

Die Strategie zielt darauf ab, Umkehrungen zu identifizieren, indem Bollinger-Bänder für Unterstützung / Widerstand und Stochastik für überkaufte / überverkaufte Bedingungen kombiniert werden. Feinabstimmungsparameter, Risikokontrolle und kontinuierliche Optimierung sind der Schlüssel für die reale Performance. Transaktionskosten sollten berücksichtigt werden. Vergangene Performance ist keine Garantie für zukünftige Ergebnisse.


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

//@version=4
strategy("Bollinger Bands & Stochastic Scalping Strategy", shorttitle="BB & Stoch Scalp", overlay=true)

// Bollinger Bands
length = input(20, title="Bollinger Bands Length")
src = input(close, title="Source")
mult = input(2, title="Multiplier")
basis = sma(src, length)
dev = mult * stdev(src, length)
upperBB = basis + dev
lowerBB = basis - dev

// Stochastic
stochLength = input(14, title="Stochastic Length")
smoothK = input(5, title="Stochastic %K Smoothing")
smoothD = input(3, title="Stochastic %D Smoothing")
k = sma(stoch(close, high, low, stochLength), smoothK)
d = sma(k, smoothD)

// Entry Conditions
longCondition = crossover(close, lowerBB) and crossover(k, 20)
shortCondition = crossunder(close, upperBB) and crossunder(k, 80)

// Exit Conditions
takeProfit = input(50, title="Take Profit (pips)")

plotshape(series=longCondition, title="Long Entry Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(series=shortCondition, title="Short Entry Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)

// Stop Loss
stopLossPips = input(3, title="Stop Loss (pips)")
stopLossLong = close - stopLossPips * syminfo.mintick
stopLossShort = close + stopLossPips * syminfo.mintick

strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)

strategy.exit("Take Profit/Stop Loss", from_entry="Long", profit=takeProfit, stop=stopLossLong)
strategy.exit("Take Profit/Stop Loss", from_entry="Short", profit=takeProfit, stop=stopLossShort)

plot(upperBB, title="Upper Bollinger Band", color=color.red)
plot(lowerBB, title="Lower Bollinger Band", color=color.green)

hline(80, "Overbought", color=color.red)
hline(20, "Oversold", color=color.green)


Mehr