Cos'è la Formula dell'Ulcer Index e Perché è Superiore alla Deviazione Standard?
L'Ulcer Index è una misura statistica del rischio che calcola esclusivamente il dolore dei drawdown progressivi. La risposta diretta alla domanda: questo strumento statistico è la radice quadrata della media dei quadrati dei drawdown percentuali dai massimi recenti, calcolata su un periodo N di barre storiche. Non misura la volatilità in entrambe le direzioni — misura solo il ribasso.
Peter Martin creò questa misura nel 1987 partendo da un'osservazione ignorata dalla finanza accademica: un trader long non soffre quando i prezzi salgono. Soffre solo quando scendono e non tornano. La deviazione standard, che pesa ugualmente rialzi e ribassi, è una misura di rischio distorta per chi opera prevalentemente long sul mercato forex. Il nome "Ulcer" — ulcera — non è casuale: i drawdown prolungati causano stress fisico reale agli investitori.
La superiorità dell'Ulcer Index è matematicamente dimostrabile. Considera due sistemi con identica deviazione standard annuale del 15%. Il primo guadagna costantemente con piccole oscillazioni verso l'alto. Il secondo alterna grandi guadagni a profondi drawdown. La deviazione standard li misura come identici. L'Ulcer Index li distingue nettamente: il secondo ha UI tre o quattro volte superiore al primo. Per un sistema automatico come Oracle, questa distinzione non è teorica — determina la qualità del capitale investito.
Il Nome "Ulcer" — Perché Martin Scelse Questa Parola
Martin pubblicò l'Ulcer Index nel libro "The Investor's Guide to Fidelity Funds" scritto con Byron McCann nel 1987. Non lo presentò mai in un paper accademico peer-reviewed — e questo spiega la sua scarsa notorietà nonostante la superiorità concettuale. In Italia, Diaman Partners lo introdusse nel 2004. UlcerZenith Oracle è il primo sistema italiano ad usarlo come meccanismo di filtraggio primario su forex algoritmico con dati pubblicamente verificabili su 65.587 trade reali.
L'Ulcer Performance Index — Il Martin Ratio
Martin estese il concetto creando l'Ulcer Performance Index (UPI), noto anche come Martin Ratio: rapporto tra rendimento eccedente il risk-free e l'Ulcer Index. È l'equivalente asimmetrico corretto dello Sharpe Ratio. Mentre lo Sharpe penalizza anche la volatilità positiva, il Martin Ratio penalizza solo i drawdown reali. Per Oracle su XAUUSD H4 con Win Rate 42,1% e Profit Factor 1,44, il Martin Ratio è la metrica di valutazione più onesta disponibile — lo Sharpe sovrastimerebbe il rischio penalizzando i periodi di forte rendimento positivo.
Come Si Calcola l'Ulcer Index Passo per Passo con Esempio Numerico Reale?
Il calcolo di questo indicatore su un periodo N di 5 barre è il modo più diretto per capire cosa misura davvero questo indicatore. Applicare la formula a mano su dati reali — in questo caso XAUUSD H4 — fa capire immediatamente perché è superiore alla volatilità classica per i sistemi di trading long con aspettativa positiva verificata.
Il massimo mobile viene calcolato sulla finestra di N barre: per ogni barra, si determina il massimo visto fino a quel punto nella finestra. Qualsiasi prezzo di chiusura sotto quel massimo è un drawdown — negativo, doloroso, da misurare. I rialzi oltre il massimo precedente azzerano il drawdown a zero. Questa asimmetria è esattamente il punto: l'indicatore ignora i guadagni e si concentra sulle perdite dal picco.
| Periodo | Chiusura XAUUSD | Massimo MaxN | Drawdown % | Drawdown² |
|---|---|---|---|---|
| t=1 | 2.050 | 2.050 | 0.00% | 0.0000 |
| t=2 | 2.065 | 2.065 | 0.00% | 0.0000 |
| t=3 | 2.040 | 2.065 | −1.21% | 0.0146 |
| t=4 | 2.025 | 2.065 | −1.94% | 0.0374 |
| t=5 | 2.055 | 2.065 | −0.48% | 0.0023 |
Come Cambia l'Ulcer Index al Variare del Periodo N
La scelta del periodo N determina la sensibilità dell'Ulcer Index. N breve (14 barre) rende l'indicatore reattivo ai drawdown recenti ma soggetto a falsi segnali su oscillazioni normali. N lungo (50-100 barre) fornisce una visione strutturale del rischio ma reagisce lentamente ai cambi di regime di mercato. In UlcerZenith Oracle v78 il periodo è stato determinato attraverso ottimizzazione walk-forward su 12 anni di dati storici XAUUSD H4 — il valore specifico è riservato agli abbonati.
Stabilità al Variare del Timeframe — Una Proprietà Unica
Martin stesso osservò che l'Ulcer Index è relativamente stabile al variare del timeframe di campionamento — proprietà che lo distingue nettamente dalla deviazione standard. Un UI calcolato su dati settimanali fornisce risultati comparabili a uno calcolato su dati giornalieri per lo stesso strumento nello stesso periodo. Questa stabilità lo rende adatto per sistemi multi-timeframe come Oracle, che analizza simultaneamente H1, H4 e D1 per ogni strumento sui 65.587 trade storici.
Come Si Implementa la Formula Ulcer Index in MQL5 per MetaTrader 5?
L'implementazione in MQL5 della formula di Martin segue direttamente la matematica di Martin ma richiede attenzione a tre aspetti tecnici critici: la gestione dei buffer circolari, la corretta lettura di iHighest(), e la sincronizzazione multi-simbolo. Non esistono librerie native MT5 per questo indicatore — ogni sviluppatore costruisce la propria. Ho affinato questa implementazione in 78 versioni successive di UlcerZenith, dai buffer base ai calcoli paralleli su 30+ strumenti.
Il codice MQL5 si struttura in tre blocchi: calcolo del massimo mobile su N periodi con iHighest(), calcolo dei drawdown quadratici su buffer circolare, media con MathSqrt() finale. La complessità non è matematica — è gestionale: ogni simbolo necessita del proprio array e buffer per non ricalcolare l'intera storia ad ogni tick. Su Oracle v78 con 30+ strumenti attivi questo diventa un problema di efficienza computazionale non banale.
GlobalVariable Bridge tra Oracle e Zenith Executor
In Oracle v78, il valore UI viene passato dall'indicatore all'Expert Advisor tramite GlobalVariables MT5 — il sistema documentato nell'articolo dedicato alle GlobalVariables in MQL5. Il nome segue il formato ZEX_UI_[SYMBOL]_[TF], aggiornato ad ogni tick con variazione significativa. Zenith Executor legge il valore in tempo reale senza richiedere una nuova istanza del calcolo. Questo bridge è fondamentale per il coordinamento tra il layer analitico (Oracle indicator) e il layer esecutivo (Zenith Executor EA).
Gestione Multi-Simbolo in Oracle v78
Oracle v78 calcola l'Ulcer Index su 30+ strumenti e tre timeframe simultaneamente — fino a 90 calcoli UI paralleli per tick. La gestione efficiente dei buffer è critica: ogni simbolo ha il proprio array di drawdown e buffer circolare. La versione LITE supporta 6 simboli, la PRO 30+, la Inner Circle l'intera infrastruttura su VPS dedicato. La differenza di performance computazionale tra una implementazione naive e quella ottimizzata di v77 è di circa 10x in termini di tempo di calcolo per tick.
Come Si Interpreta l'Ulcer Index per Decisioni Operative nel Trading Forex?
Il valore numerico dell'Ulcer Index acquista significato operativo solo in relazione alla distribuzione storica dello strumento su cui si opera. Un UI di 5 su XAUUSD H4 può essere normale in certi regimi e estremamente elevato in altri. La corretta interpretazione richiede soglie relative — non assolute — calibrate sulla storia specifica dello strumento e del timeframe.
In Oracle v78 le soglie operative sono state calibrate su 12 anni di dati storici XAUUSD H4 attraverso ottimizzazione walk-forward. Il principio: quando l'UI è nella parte bassa della distribuzione storica percentile, il mercato è vicino ai massimi recenti e statisticamente più adatto agli ingressi. Quando è nella parte alta, il drawdown riduce la probabilità di segnali profittevoli in modo misurabile e verificabile sui 65.587 trade del campione.
Come Calcolare le Soglie Percentili sulla Storia di un Simbolo
Calcolare le soglie percentili corrette richiede un dataset storico minimo di 5 anni sullo stesso timeframe di lavoro. Per XAUUSD H4 significa circa 10.000 barre. Si calcola il valore di questo indicatore per ogni barra della storia, si ordinano i valori dal minimo al massimo e si estraggono i percentili chiave: 30°, 50°, 70°. Questi tre numeri diventano le soglie operative del sistema, calibrate sulla personalità statistica specifica dello strumento.
Il punto critico, che la maggior parte dei trader retail ignora, è che le soglie calcolate su EURUSD non sono utilizzabili su XAUUSD. Ogni strumento ha una distribuzione storica diversa dell'UI, e applicare soglie assolute invece che percentili relative produce filtri distorti. In Oracle v78 ogni simbolo monitorato ha il proprio set di soglie percentili ricalcolate automaticamente ogni 500 barre nuove, garantendo adattamento continuo ai cambi strutturali del regime di mercato senza intervento manuale.
La procedura è stata formalizzata nel mio libro guida completa all'analisi statistica nel trading: carica la serie di chiusure, applica la formula di Martin su ogni finestra mobile, salva i valori in un array, ordina e estrai i percentili con la funzione statistica appropriata. In Excel si fa con PERCENTILE.INC(), in Python con numpy.percentile(), in MQL5 con un ordinamento manuale dell'array dei valori storici dell'indicatore.
UI come Filtro di Regime — Non come Indicatore Direzionale
L'errore più frequente di chi si avvicina all'Ulcer Index per la prima volta è usarlo come indicatore direzionale. L'UI non predice la direzione dei prezzi. Misura la qualità del contesto di mercato per operazioni long. In Oracle v78 la direzione viene determinata da pattern storici su 356 configurazioni verificate, stagionalità settimanale H4, correlazioni cross-asset calcolate in tempo reale. L'UI decide solo se quel segnale direzionale viene eseguito o ignorato — il gate binario del sistema.
Questa distinzione tra filtro di regime e indicatore direzionale è cruciale per comprendere perché alcuni sistemi commerciali basati su UI falliscono mentre Oracle v78 sostiene 65.587 trade di storico verificato. Chi cerca segnali di acquisto nei minimi dell'UI commette un errore concettuale doppio: assume che il mercato sia mean-reverting nel breve termine e che l'UI misuri la direzione. Nessuna delle due assunzioni è statisticamente supportata. L'UI misura solo la qualità del contesto, non la direzione. Sovrapporre queste due dimensioni porta a falsi segnali sistematici e drawdown prevedibili nel tempo operativo.
Ulcer Index vs Deviazione Standard vs Sharpe Ratio: Quale Misura Meglio il Rischio?
Il confronto tra misure di rischio non è accademico — determina come valuti e ottimizzi un sistema di trading. La metrica sbagliata porta a ottimizzazioni distorte, posizioni sovradimensionate, drawdown imprevisti. Ho usato tutte e tre nelle 78 versioni di UlcerZenith e posso quantificare la differenza con i dati reali del campione.
| Metrica | Cosa misura | Limite principale | Uso ottimale |
|---|---|---|---|
| Deviazione Standard | Volatilità bidirezionale | Penalizza anche i rialzi forti | Portafogli bilanciati istituzionali |
| Sharpe Ratio | Rendimento / volatilità totale | Basato su DS — stessa distorsione | Confronto fondi istituzionali |
| Ulcer Index | Solo drawdown progressivi dai massimi | Nessuno per sistemi long | Sistemi trading automatico forex long |
| Martin Ratio (UPI) | Rendimento eccedente / UI | Poco conosciuto | Valutazione EA MetaTrader 5 |
Perché il Martin Ratio è la Metrica Corretta per Oracle
Oracle v78 su XAUUSD H4 ha Win Rate 42,1% — apparentemente basso. Ma con RR 1:3 l'aspettativa matematica è +0.68R per operazione. La crescita cumulativa su 65.587 trade è verificabile. Il Martin Ratio cattura questa performance onestamente perché non penalizza i periodi di forte rendimento che alzano la deviazione standard. Se hai letto la guida sull'aspettativa matematica nel trading, sai già che il WR da solo non dice nulla senza il RR. Il Martin Ratio integra entrambe le dimensioni — rendimento e drawdown reale.
Il Martin Ratio su Oracle v78 — Calcolo Reale
Il calcolo effettivo del Martin Ratio su Oracle v78 utilizza il rendimento annualizzato eccedente il tasso risk-free europeo e lo divide per il valore medio dell'UI calcolato sull'intero campione di 65.587 trade H4. Il risultato è un numero che integra in una singola metrica sia l'efficienza del sistema sia il dolore reale sostenuto dal capitale nel periodo osservato, eliminando la distorsione che il Sharpe introduce penalizzando i mesi di forte rendimento positivo.
La differenza numerica tra Sharpe e Martin Ratio su Oracle è significativa e misurabile. Lo Sharpe del sistema sottostima la qualità operativa perché include nella deviazione standard anche i periodi di forte guadagno. Il Martin Ratio, usando l'UI al denominatore, cattura solo il rischio asimmetrico che interessa davvero al trader long. Questa differenza quantitativa è il motivo per cui lo Sharpe non viene usato come metrica di ottimizzazione su nessuna delle 78 versioni successive di UlcerZenith sviluppate dal 2007 a oggi.
Come Oracle v78 Applica l'Ulcer Index su 65.587 Trade Reali
65.587 trade reali. L'UI al centro di tutto.
L'Ulcer Index non è uno dei tanti componenti di Oracle — è il componente fondante. Nella versione v1 del 2007 il sistema era essenzialmente: "entra quando l'UI è basso, esci quando sale". In 78 versioni ho aggiunto pattern storici su 356 configurazioni verificate, stagionalità settimanale, correlazioni cross-asset, regime di mercato HMM, T-Student per i target price. Ma il filtro UI primario è rimasto invariato dalla v1 alla v77.
Questa stabilità è evidenza statistica, non conservatorismo. Su 65.587 trade, rimuovere il filtro UI e operare indiscriminatamente riduce il Profit Factor da 1,44 a circa 0.92. Quella differenza vale 0.52R per operazione — su 65.587 trade è la differenza misurabile tra un sistema che cresce e uno che si distrugge nel lungo periodo. Il filtro Ulcer Index vale 0.52R per operazione su dati verificati.
Vedi l'Ulcer Index
in produzione ogni mattina.
Oracle v78 applica la formula di Peter Martin su 30+ strumenti ogni giorno su conto reale. Live gratuite — iscriviti alla prossima.
Entra nel Canale Gratuito → Come Funziona Oracle →Walk-Forward Validation del Filtro UI su 12 Anni di Dati
La walk-forward validation è il test più severo che un sistema di trading algoritmico possa affrontare, e Oracle v78 lo supera con margine misurabile proprio grazie al contributo del filtro di questo indicatore. La procedura: dividi 12 anni di dati XAUUSD H4 in finestre mobili, ottimizza i parametri su una finestra e valida i risultati sulla finestra successiva mai vista dall'ottimizzatore. Ripeti il processo scorrendo nel tempo e calcoli la degradazione tra in-sample e out-of-sample.
Nei test walk-forward di Oracle v78 il degrado tra in-sample e out-of-sample è inferiore al 18% del Profit Factor — un valore che nel trading quantitativo retail è considerato eccellente. La maggior parte dei sistemi commerciali mostra degradazioni del 40-60% quando passano dall'ottimizzazione al forward test, segno di overfitting strutturale. Il fatto che il filtro basato sulla formula di Martin rimanga efficace attraverso 12 anni di regimi di mercato diversi — crisi 2008, QE, Covid, inflazione 2022 — è l'evidenza statistica più forte della sua robustezza.
Riepilogo: Formula Ulcer Index in 5 Punti
- Formula: UI = √(Σ[(Ct−MaxN)/MaxN]² / N). Radice quadrata della media dei drawdown quadratici dai massimi su N periodi. Misura solo il rischio al ribasso.
- Superiorità: La deviazione standard penalizza anche i rialzi. L'UI misura solo il dolore reale dei drawdown progressivi. Il Martin Ratio (rendimento/UI) è la versione asimmetrica corretta dello Sharpe per i sistemi forex long.
- MQL5: Usa iHighest() per il massimo mobile, calcola drawdown quadratici su buffer circolare, estrai MathSqrt(). Errore critico: iHighest() restituisce l'indice della barra, non il prezzo — usa iClose(symbol,tf,iHighest(...)).
- Interpretazione: UI basso = vicino ai massimi, condizioni favorevoli, segnali attivi. UI alto = drawdown profondo, sopprimere tutti i segnali. Le soglie sono relative alla distribuzione storica dello strumento.
- Dati reali Oracle: Il filtro UI vale +0.52R per operazione su 65.587 trade verificati. Rimuoverlo abbassa il Profit Factor da 1,44 a 0.92 — differenza tra sistema profittevole e sistema perdente nel lungo periodo.
FAQ — Formula Ulcer Index nel Trading
- — Martin, P. & McCann, B. (1989): "The Investor's Guide to Fidelity Funds: Winning Strategies for Mutual Fund Investors". Libro originale che introduce l'Ulcer Index. Amazon
- — Wikipedia: Ulcer Index — definizione matematica e uso operativo. Wikipedia
- — Wikipedia: Drawdown (economics) — concetto di drawdown nel finance. Wikipedia
- — CONSOB — Quaderni di Finanza: metriche di rischio alternative. Quaderni CONSOB
- — Banca d'Italia — Temi di Discussione: misure di downside risk. Temi di Discussione BdI
