Auf die Warteliste
Strategien / Mean Reversion / Bollinger RSI TDI Reversal

Bollinger RSI TDI Reversal auf dem FTSE 100

Ein überdehnter Markt wird markiert, wenn der Kurs außerhalb eines Bollinger Bands schließt, RSI(9) extrem ist und die TDI-Kurslinie außerhalb ihres Bands liegt. Der Trade wird später eröffnet, wenn die TDI-Kurslinie ihre Signallinie zurück in die Umkehrrichtung kreuzt. Eine ATR-basierte Stop-Linie steuert dann den Ausstieg.

Mean ReversionLong & ShortSwingFTSE 100Täglich
n/aProfit Factor
3,658Nettogewinn EUR
38.49%Trefferquote
239Trades
-2,267Max Drawdown
15.31Durchschn. Trade

Bester von 1 Durchläufen. FTSE 100, Täglich, Spread 2, aus Durchlauf sweeps:2026-09-26-FTSE100-D-opt.tsv:4.

Einstiegsregeln, Long

  1. Setup: Schlusskurs unter dem unteren Bollinger Band mit 20 Perioden, RSI(9) unter 28 und die TDI-Kurslinie unter dem unteren TDI-Band
  2. Die ATR-Stop-Linie liegt unter dem Schlusskurs

Einstiegsregeln, Short

  1. Setup: Schlusskurs über dem oberen Bollinger Band mit 20 Perioden, RSI(9) über 62 und die TDI-Kurslinie über dem oberen TDI-Band
  2. Die ATR-Stop-Linie liegt über dem Schlusskurs

Ausstiegsregeln

  1. Einen long schließen, wenn der Kurs unter der Stop-Linie schließt
  2. Einen short schließen, wenn der Kurs über der Stop-Linie schließt

Testbedingungen

ZeitraumBis 2026-09-26
InstrumentFTSE 100, Täglich
Spread2 Punkte
Kontrakte1
Startkapital1,000,000
KostenNur Spread. Kommissionen und Overnight-Finanzierung sind nicht enthalten.
BarsBis zu 200,000 Bars, weniger wo das Instrument weniger Historie hat
Zuletzt getestet2026-09-26
Parameter (12)
positionSize
Kontrakte pro Trade
1
bandPeriod
Länge der Bollinger Bänder
20
rsiPeriod
RSI-Länge für den Extremwert
9
overboughtLevel
RSI-Niveau, das einen short aktiviert
62
oversoldLevel
RSI-Niveau, das einen long aktiviert
28
stopAtrPeriod
ATR- und Durchschnittslänge für die Bänder der Stop-Linie
14
stopAvgPeriod
Durchschnitt der Hochs / Tiefs, der die Seite der Stop-Linie wechselt
10
tdiRsiPeriod
RSI-Länge innerhalb des TDI
13
tdiBandPeriod
TDI-Bandlänge
34
tdiBandWidth
TDI-Bandbreite in Standardabweichungen
1.6185
priceLinePeriod
TDI-Glättung der Preislinie
2
signalLinePeriod
Glättung der TDI-Trade-Signallinie
7

Jeder Durchlauf

Getestete Märkte und Zeiteinheiten

MarktZeiteinheitPFTradesTreffer %NettoMax DD
FTSE 100Bester DurchlaufTäglichn/a 23938.493,658 EUR-2,267

Charts

Ergebnisse je Durchlauf

NettogewinnMax Drawdown

Der Code

ProBuilder, auf Hausstandard umgeschrieben

// ============================================================
// Bollinger RSI TDI Reversal
// ProRealAlgos Strategy Library  |  prorealalgos.com
// Type: Mean reversion
// Direction: Long & short
// Timeframe tested: Daily
// ============================================================

// --- Settings ---
DEFPARAM CumulateOrders = false

// --- Parameters ---
positionSize = 1          // contracts per trade
bandPeriod = 20           // Bollinger Bands length
rsiPeriod = 9             // RSI length for the extreme reading
overboughtLevel = 62      // RSI level that arms a short
oversoldLevel = 28        // RSI level that arms a long
stopAtrPeriod = 14        // ATR and average length for the stop line bands
stopAvgPeriod = 10        // average of highs / lows that flips the stop line side
tdiRsiPeriod = 13         // RSI length inside the TDI
tdiBandPeriod = 34        // TDI band length
tdiBandWidth = 1.6185     // TDI band width in standard deviations
priceLinePeriod = 2       // TDI price line smoothing
signalLinePeriod = 7      // TDI trade signal line smoothing

// --- Indicators ---
upperBand = BollingerUp[bandPeriod](close)
lowerBand = BollingerDown[bandPeriod](close)
rsiValue = RSI[rsiPeriod](close)

// Stop line: an ATR band that only moves in the trade's favour
atrValue = AverageTrueRange[stopAtrPeriod](close)
stopBandHigh = Average[stopAtrPeriod](high + atrValue)
stopBandLow = Average[stopAtrPeriod](low - atrValue)
avgHigh = Average[stopAvgPeriod](high)
avgLow = Average[stopAvgPeriod](low)

IF close > avgHigh THEN
  stopSide = 1
ELSIF close < avgLow THEN
  stopSide = -1
ENDIF
IF stopSide = -1 AND stopBandHigh > stopBandHigh[1] THEN
  stopBandHigh = stopBandHigh[1]
ELSIF stopSide = 1 AND stopBandLow < stopBandLow[1] THEN
  stopBandLow = stopBandLow[1]
ENDIF
IF stopSide = 1 THEN
  stopLine = stopBandLow
ELSE
  stopLine = stopBandHigh
ENDIF

// Traders Dynamic Index
tdiRsi = RSI[tdiRsiPeriod](close)
tdiMid = Average[tdiBandPeriod](tdiRsi)
tdiOffset = tdiBandWidth * STD[tdiBandPeriod](tdiRsi)
tdiUpper = tdiMid + tdiOffset
tdiLower = tdiMid - tdiOffset
priceLine = Average[priceLinePeriod](tdiRsi)
signalLine = Average[signalLinePeriod](tdiRsi)

// Two-step setup flags, kept between bars
ONCE longSetup = 0
ONCE longTrigger = 0
ONCE shortSetup = 0
ONCE shortTrigger = 0

44 weitere Zeilen: die Einstiegs- und Ausstiegsregeln.

Setup

So laden Sie es

  1. Kopieren Sie den Code mit der Schaltfläche Kopieren im Codeblock.
  2. Öffnen Sie in ProRealTime einen Chart des Instruments und der Zeiteinheit, die Sie testen möchten, öffnen Sie dann ProOrder > Neues Handelssystem und wählen Sie "Mit Programmierung erstellen".
  3. Fügen Sie den Code ein, geben Sie dem System einen Namen und speichern Sie es.
  4. Klicken Sie auf "Backtest", legen Sie Ihren eigenen Spread und Ihre eigene Position Size fest und lassen Sie sie laufen, bevor Sie erwägen, sie live zu handeln.

Verwendete Indikatoren

Bollinger BandsRSIATRSMATraders Dynamic Index
Bitte zuerst lesenBekannte Schwächen4 Punkte
  • Es wurden nur ein Markt und eine Zeiteinheit getestet: FTSE 100 täglich.
  • Die Trefferquote liegt bei 38.49%, das System ist also darauf angewiesen, dass die Gewinner größer als die Verlierer sind, und kann lange Verlustserien durchlaufen.
  • Der Profit Factor wurde nicht erfasst, weil das Ergebnis nur aus Optimierungs-Sweep-Daten stammt.
  • Die Setup-Markierung bleibt über Bars hinweg bestehen, ein Auslöser kann daher deutlich nach der ursprünglichen Überdehnung feuern, wenn der Markt sich weiterbewegt hat.

Fragen

Über diese Strategie

Läuft das als automatisiertes System in ProOrder?

Ja. Es ist für das automatisierte Trading von ProRealTime mit 1 Kontrakt pro Trade programmiert. Die ursprünglichen Session-Filter-Zeiten waren nicht Teil des getesteten Codes.

Wie hat es sich im Backtest geschlagen?

Auf FTSE 100 täglich erzielte es EUR 3,658.00 über 239 Trades, mit einem max Drawdown von EUR 2,266.60. Es wurden keine weiteren Instrumente getestet.

Wie viel Kapital benötigt 1 Kontrakt?

Der schlimmste Rückgang von Hoch zu Tief im Test betrug EUR 2,266.60 mit 1 Kontrakt. Die Margin hängt von Ihrem Broker ab und wird hier nicht behandelt.

Warum Tagesbars?

Das Setup benötigt einen Schlusskurs außerhalb des Bands sowie zwei extreme Oszillatorwerte, was selten ist. Tagesbars halten diese Extreme aussagekräftig und die Zahl der Trades handhabbar, mit 239 Trades im Test.

Verwandt

Strategien wie diese

Bollinger Squeeze

Verwendet denselben Indikator.

14.30 PF · 86 Trades

Bollinger Reversal

Bester Durchlauf auf demselben Markt, FTSE 100.

1.74 PF · 117 Trades

Monday Dip Buy

Ebenfalls eine Mean-Reversion-Strategie.

n/a PF · 146 Trades

Neugierig, wie Reversal-Systeme wie dieses mit anderen kombiniert werden? Tragen Sie sich auf die ProRealAlgos Warteliste ein.

Die ProRealAlgos Community erhält die vollständigen Regeln, den kompletten Code und das automatisierte Portfolio.

Vergangene Backtest-Ergebnisse sind keine Garantie für zukünftige Ergebnisse. Dies ist keine Finanzberatung. Kuratiert und gepflegt von ProRealAlgos. ProRealTime™ ist eine Marke der ProRealTime SAS. prorealalgos.comStatistikDokumentation