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.
Migliore esecuzione su 1. FTSE 100, Giornaliero, spread 2, dall'esecuzione sweeps:2026-09-26-FTSE100-D-opt.tsv:4.
| Periodo | Fino al 2026-09-26 |
| Strumento | FTSE 100, Giornaliero |
| Spread | 2 punti |
| Contratti | 1 |
| Capitale iniziale | 1,000,000 |
| Costi | Solo spread. Commissioni e finanziamento overnight non sono inclusi. |
| Barre | Fino a 200,000 barre, meno dove lo strumento ha meno storico |
| Ultimo test | 2026-09-26 |
| 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
| Mercato | Timeframe | PF | Operazioni | % successo | Netto | Max DD |
|---|---|---|---|---|---|---|
| FTSE 100Miglior esecuzione | Giornaliero | n/a | 239 | 38.49 | 3,658 EUR | -2,267 |
Grafici
Il codice
// ============================================================ // 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
Domande
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.
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.
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.
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
La community ProRealAlgos ottiene le regole complete, il codice completo e il portafoglio automatizzato.