Iscriviti alla lista d'attesa
Strategie / Mean reversion / Bollinger RSI TDI Reversal

Bollinger RSI TDI Reversal sul FTSE 100

Un mercato teso viene segnalato quando il prezzo chiude fuori da una banda di Bollinger, RSI(9) è a un livello estremo e la linea di prezzo TDI è fuori dalla sua banda. L'operazione si apre più tardi, quando la linea di prezzo TDI incrocia la sua linea di segnale tornando nella direzione dell'inversione. Una linea di stop basata su ATR gestisce poi l'uscita.

Mean reversionLong & shortSwingFTSE 100Giornaliero
n/aProfit factor
3,658Profitto netto EUR
38.49%Percentuale di successo
239Operazioni
-2,267Max drawdown
15.31Media operazione

Migliore esecuzione su 1. FTSE 100, Giornaliero, spread 2, dall'esecuzione sweeps:2026-09-26-FTSE100-D-opt.tsv:4.

Regole di ingresso, long

  1. Setup: chiusura sotto la banda di Bollinger inferiore a 20 periodi, RSI(9) sotto 28 e la linea di prezzo TDI sotto la banda TDI inferiore
  2. La linea di stop ATR è sotto la chiusura

Regole di ingresso, short

  1. Setup: chiusura sopra la banda di Bollinger superiore a 20 periodi, RSI(9) sopra 62 e la linea di prezzo TDI sopra la banda TDI superiore
  2. La linea di stop ATR è sopra la chiusura

Regole di uscita

  1. Chiudi una posizione long quando il prezzo chiude sotto la linea di stop
  2. Chiudi una posizione short quando il prezzo chiude sopra la linea di stop

Condizioni di test

PeriodoFino al 2026-09-26
StrumentoFTSE 100, Giornaliero
Spread2 punti
Contratti1
Capitale iniziale1,000,000
CostiSolo spread. Commissioni e finanziamento overnight non sono inclusi.
BarreFino a 200,000 barre, meno dove lo strumento ha meno storico
Ultimo test2026-09-26
Parametri (12)
positionSize
Contratti per operazione
1
bandPeriod
Lunghezza delle bande di Bollinger
20
rsiPeriod
Lunghezza dell'RSI per la lettura estrema
9
overboughtLevel
Livello di RSI che arma uno short
62
oversoldLevel
Livello di RSI che arma un long
28
stopAtrPeriod
ATR e lunghezza della media per le bande della linea di stop
14
stopAvgPeriod
Media dei massimi / minimi che fa cambiare lato alla linea di stop
10
tdiRsiPeriod
Lunghezza dell'RSI all'interno del TDI
13
tdiBandPeriod
Lunghezza della banda TDI
34
tdiBandWidth
Ampiezza della banda TDI in deviazioni standard
1.6185
priceLinePeriod
Smoothing della linea di prezzo del TDI
2
signalLinePeriod
Smoothing della linea di segnale operativo TDI
7

Ogni esecuzione

Mercati e timeframe testati

MercatoTimeframePFOperazioni% successoNettoMax DD
FTSE 100Miglior esecuzioneGiornalieron/a 23938.493,658 EUR-2,267

Grafici

Risultati per esecuzione

Profitto nettoMax drawdown

Il codice

ProBuilder, riscritto secondo lo standard interno

// ============================================================
// 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

Altre 44 righe: le regole di ingresso e di uscita.

Configurazione

Come caricarla

  1. Copia il codice con il pulsante di copia nel blocco di codice.
  2. In ProRealTime, apri un grafico dello strumento e del timeframe che vuoi testare, poi apri ProOrder > Nuovo sistema di trading e scegli "Crea con programmazione".
  3. Incolla il codice, dai un nome al sistema e salvalo.
  4. Clicca "Backtest", imposta il tuo spread e la tua position size, ed eseguila prima di considerare di operare in reale.

Indicatori utilizzati

Bande di BollingerRSIATRSMATraders Dynamic Index
Leggi prima questoDebolezze note4 punti
  • Sono stati testati un solo mercato e un solo timeframe: FTSE 100 giornaliero.
  • La percentuale di successo è del 38.49%, quindi il sistema si basa sul fatto che i trade vincenti siano più grandi di quelli perdenti e può attraversare lunghe serie di perdite.
  • Il profit factor non è stato registrato, perché il risultato proviene solo da dati di sweep di ottimizzazione.
  • Il flag del setup si trasferisce tra le barre, quindi un trigger può scattare molto dopo la tensione originale, quando il mercato è andato avanti.

Domande

Su questa strategia

Funziona come sistema automatico in ProOrder?

Sì. È codificata per il trading automatico ProRealTime con 1 contratto per operazione. Gli orari del filtro di sessione originale non facevano parte del codice testato.

Come è andata nel backtest?

Su FTSE 100 giornaliero ha prodotto EUR 3,658.00 su 239 operazioni, con un max drawdown di EUR 2,266.60. Non sono stati testati altri strumenti.

Quanto capitale serve per 1 contratto?

Il calo peggiore da picco a minimo nei test è stato di EUR 2,266.60 con 1 contratto. Il margine dipende dal tuo broker e non è trattato qui.

Perché barre giornaliere?

Il setup richiede una chiusura fuori dalla banda più due letture estreme degli oscillatori, cosa rara. Le barre giornaliere mantengono significativi quegli estremi e gestibile il numero di operazioni, 239 operazioni nel test.

Correlati

Strategie come questa

Bollinger Squeeze

Usa lo stesso indicatore.

14.30 PF · 86 operazioni

Bollinger Reversal

Miglior esecuzione sullo stesso mercato, FTSE 100.

1.74 PF · 117 operazioni

Monday Dip Buy

Anche una strategia mean reversion.

n/a PF · 146 operazioni

Curioso di sapere come i sistemi di inversione come questo vengono combinati con altri? Iscriviti alla lista d'attesa ProRealAlgos.

La community ProRealAlgos ottiene le regole complete, il codice completo e il portafoglio automatizzato.

I risultati passati dei backtest non garantiscono risultati futuri. Questo non è un consiglio finanziario. Curato e mantenuto da ProRealAlgos. ProRealTime™ è un marchio di ProRealTime SAS. prorealalgos.comStatisticheDocumentazione