Kimera RTO_SMC: dall'idea all'EA, e 590 trade sotto interrogatorio

Kimera RTO_SMC è il mio Expert Advisor su XAUUSD (oro), timeframe M1, che implementa una logica di ritorno all'origine: chi insegue l'impulso in ritardo paga chi l'ha originato e lo difende. Lo uso come caso di studio perché ne possiedo l'intera storia: la specifica, il codice, i backtest, gli errori, le correzioni.

Cosa NON troverete qui: i parametri da copiare. Primo, perché copiare i parametri di un altro è il modo più sicuro di ereditarne l'overfitting senza ereditarne il processo. Secondo, perché il valore di questo articolo è il ragionamento — che è riutilizzabile su qualsiasi vostro sistema. La strategia mia non vi serve; il metodo sì.

1 · La specifica prima del codice

La prima trasformazione, quella decisiva, avviene prima di ogni riga di codice: convertire concetti discrezionali in soglie misurabili. I concetti Smart Money che tutti conoscono — displacement, order block, mitigazione — diventano numeri confrontabili con i dati:

Concetto discrezionaleFormalizzazione
"Movimento impulsivo" (displacement)Escursione ≥ X punti entro una finestra definita di barre
"Order block"Zona dell'ultima candela contraria pre-impulso, estesa di un buffer
"Mitigazione" (RTO)Primo ritorno del prezzo dentro la zona dopo l'impulso
"Contesto operativo"Finestra oraria definita, spread massimo, cooldown minimo
"Gestione"SL oltre la zona + buffer; TP a RR × rischio

È un impoverimento? Sì — la versione formale è più stupida della lettura di un occhio esperto. Ma è verificabile, e una regola stupida verificabile vale più di una regola brillante che non si può testare. Sarà il backtest a dirci quanto costa la stupidità — e lo dirà con precisione imbarazzante.

2 · L'architettura: cinque moduli, ognuno testabile da solo

Un EA professionale non è "una funzione OnTick con dentro gli if". La separazione delle responsabilità non è estetica: è ciò che rende ogni pezzo testabile e sostituibile da solo.

3 · La disciplina sui parametri

Sei parametri sostanziali, e tre regole che separano dilettanti e professionisti:

  1. Ogni parametro è un grado di libertà che il backtest userà per mentirvi. Prima di aggiungerne uno: "posso derivarlo dai dati invece che ottimizzarlo?" — lo stop può essere k×ATR con k fisso invece di un numero cercato dalla griglia.
  2. Ogni parametro deve avere una storia causale, non solo un valore ottimo. La mia finestra oraria copre Londra e New York: liquidità vera per una strategia di mean reversion su impulsi. Un parametro di cui sapete solo "col valore X il backtest è migliore" è un debito che il mercato prima o poi riscuote.
  3. I parametri hanno gerarchie di fragilità. RR e rischio % sono strutturali; le soglie in punti assoluti sono le più fragili di tutte — ed è esattamente lì che il sistema si è rotto quando l'oro è triplicato.

4 · 590 trade sotto interrogatorio

Il backtest 2020–2026 dava un riassunto che chiunque avrebbe firmato: +116%, profit factor 1,18. Un dilettante sorride e mette il sistema live. Un professionista vede un margine sottilissimo e un drawdown incompatibile con qualunque vincolo prop — e smette di guardare il riassunto, perché il valore di un backtest non è nella sintesi: è nella distribuzione. Il file dei 590 trade, esportato e sezionato:

Il taglio per direzione: metà sistema non esisteva

Separando Long e Short è emerso che il lato Long — metà del sistema, metà del rischio, metà dei costi — contribuiva al 10% del profitto, con dentro i cinque peggiori trade dell'intero sessennio, tutti concentrati nelle cinque settimane del drawdown massimo. L'edge vero era Short. Sei anni di backtest per scoprire che stavo facendo girare due sistemi: uno buono e uno che pagava le commissioni per il privilegio di esplodere ogni tanto. I mercati non sono simmetrici: l'oro scende con dinamiche diverse da come sale. Ogni backtest va sempre spaccato per direzione: è un minuto di lavoro.

Il taglio temporale: i buchi nel calendario

Due ore della giornata risultavano negative o piatte. Ma trovare un buco nel calendario non autorizza automaticamente a tapparlo — con 590 trade su 5 giorni × 10 ore, ogni cella contiene poche decine di osservazioni: territorio dove il rumore fabbrica pattern gratis. Il criterio a tre condizioni: (1) c'è una storia causale plausibile? (2) è robusta nei sottoperiodi? (3) il sistema resta profittevole anche senza il filtro? Se il sistema vive solo grazie ai filtri di calendario, non avete un edge: avete un ricamo sul rumore.

La ricomposizione: −47% di drawdown senza toccare gli ingressi

Short-only più il blackout su due ore: profitto invariato al 98%, drawdown massimo ridotto del 47%. Stesso motore, stessi segnali, stesso mercato: ho solo tolto. Da qui il principio che ha riorganizzato il mio modo di sviluppare:

Principio dei filtri sottrattivi. Il modo più sicuro di migliorare un sistema esistente non è aggiungere intelligenza (nuovi segnali, nuovi indicatori): è togliere esposizione nei contesti in cui i dati mostrano che l'edge non c'è. Un filtro sottrattivo non può inventare profitti che non esistono — al peggio toglie trade buoni — e ha un profilo di rischio-modello incomparabilmente migliore di qualunque aggiunta. Chi aggiunge, ottimizza; chi toglie, pota su evidenza.

5 · Quello che il backtest ancora non dice

Un'analisi onesta finisce sempre con l'elenco di ciò che non ha risolto:

Il ciclo di sviluppo completo con cui oggi gestisco tutto questo — con l'AI nel ruolo di collega, non di oracolo — è documentato qui, con i prompt veri.