Come Viene Calcolato il Vortex: Formula, Input e Verifica
Cos’è il Vortex e cosa significa “calcolato”
Il Vortex è un indicatore tecnico progettato per misurare la forza del movimento direzionale su un determinato periodo di riferimento. In pratica, viene calcolato a partire dal massimo e dal minimo di ogni barra dei prezzi, producendo due valori spesso chiamati VI+ e VI−.
“Calcolato” significa che, per ogni barra, l’indicatore calcola componenti del movimento direzionale e quindi li media nel periodo di riferimento, ottenendo una coppia di linee che possono essere confrontate per valutare se il movimento recente ha avuto una maggiore inclinazione verso l’alto o verso il basso.
Un punto chiave è che l’output numerico dell’indicatore è deterministico, dati la serie storica dei prezzi (massimi e minimi) e i parametri selezionati (in particolare la lunghezza del periodo di riferimento). Quello che cambia tra mercati, fornitori o dataset non è la formula, ma i dati di input e la costruzione delle barre.
Il calcolo del Vortex (formula e parametri)
Per descrivere la meccanica, si supponga di avere una serie temporale ordinata di barre. Sia:
- High[t] il massimo della barra corrente.
- Low[t] il minimo della barra corrente.
- High[t−1] e Low[t−1] il massimo e il minimo della barra precedente.
Si scelga una lunghezza del periodo di riferimento, solitamente indicata come N (ad esempio, N = 14 in molti contesti didattici). Per ogni barra t successiva a un periodo sufficiente di dati, il Vortex calcola due componenti di movimento simili al True Range direzionale:
- Calcolo delle componenti di movimento verso l’alto e verso il basso
- VM+(t) = |High[t] − Low[t−1]| se High[t] − Low[t−1] > 0, altrimenti 0
- VM−(t) = |Low[t] − High[t−1]| se Low[t] − High[t−1] > 0, altrimenti 0
(Alcune descrizioni pubblicate esprimono queste formule con l’idea: “se la differenza rilevante è positiva, mantenerla, altrimenti impostarla a 0”. L’obiettivo è separare il movimento con inclinazione al rialzo da quello con inclinazione al ribasso, utilizzando massimi e minimi adiacenti.)
- Calcolo della componente di range combinato
- TR(t) = max(High[t], Low[t−1]) − min(Low[t], High[t−1])
- Media nel periodo di riferimento Si calcolano le somme negli ultimi N periodi (da t−N+1 a t), quindi si divide:
- VI+(t) = (somma di VM+(k) per k = t−N+1 a t) / (somma di TR(k) per k = t−N+1 a t)
- VI−(t) = (somma di VM−(k) per k = t−N+1 a t) / (somma di TR(k) per k = t−N+1 a t)
Questo produce due valori compresi tipicamente tra 0 e 1, poiché ogni componente VM è costruito a partire da una porzione non negativa della stessa logica di range usata in TR. Se la somma di TR è 0 (ad esempio, con input patologici o costanti), la divisione è indefinita; implementazioni robuste gestiscono questo caso restituendo valori mancanti o saltando il calcolo.
Requisiti di dati rilevanti
Per calcolare il Vortex autonomamente, servono:
- Una sequenza coerente di barre in ordine temporale.
- Per ogni barra: i valori di massimo e minimo.
- Un valore scelto per il periodo di riferimento N.
Non sono necessari i prezzi di chiusura per il calcolo principale del Vortex come comunemente descritto; la forza direzionale deriva dalle relazioni tra massimi/minimi e la barra precedente.
Verifica tramite un esempio pratico e controllabile
Poiché non si assumono prezzi specifici in tempo reale, l’esempio è simbolico ma comunque verificabile.
Si scelga N = 3 e si considerino le barre t = 1, 2, 3, 4. Si supponga di voler calcolare VI+(4) e VI−(4). Il calcolo utilizza le barre k = 2, 3, 4 come ultime tre barre.
Passo A: per ogni k in {2, 3, 4}, calcolare:
- VM+(k) usando High[k] e Low[k−1]
- VM−(k) usando Low[k] e High[k−1]
- TR(k) usando High[k], Low[k], High[k−1], Low[k−1]
Passo B: sommare i valori nella finestra:
- SumVM+(4) = VM+(2) + VM+(3) + VM+(4)
- SumVM−(4) = VM−(2) + VM−(3) + VM−(4)
- SumTR(4) = TR(2) + TR(3) + TR(4)
Passo C: dividere:
- VI+(4) = SumVM+(4) / SumTR(4)
- VI−(4) = SumVM−(4) / SumTR(4)
Cosa si può verificare autonomamente:
- Se VM+(k) è impostato a 0 ogni volta che la “differenza direzionale” scelta non è positiva, allora VI+(t) può aumentare solo quando il movimento al rialzo domina la finestra.
- Se il pattern di massimi/minimi è simmetrico o alterna in modo da produrre valori simili di VM+ e VM−, VI+ e VI− tenderanno a essere vicini.
Anche senza interpretare le linee, è possibile confermare la correttezza riproducendo questi componenti intermedi (VM+ o VM− e TR) per ogni barra e verificando che somme e divisioni corrispondano al proprio calcolatore o software grafico.
Principali limitazioni e casi di errore da aspettarsi
-
Sensibilità alla lunghezza del periodo di riferimento (N) Un valore di N più lungo smussa la forza direzionale su più barre, rendendo VI+ e VI− meno reattivi. Un valore di N più breve li rende più sensibili ai cambiamenti recenti. Il rischio è un’errata interpretazione temporale: lo stesso comportamento di mercato può produrre letture diverse solo a causa della scelta del parametro.
-
Dipendenza dalla costruzione delle barre Il Vortex utilizza il massimo e il minimo di ogni barra. Se il grafico utilizza timeframe diversi, sessioni di trading diverse o fornitori di dati con valori leggermente differenti di massimo/minimo, i valori calcolati di VI+ e VI− possono differire. Questo non è un problema della formula, ma di allineamento dei dati di input.
-
Non è un segnale autonomo L’indicatore fornisce misure comparative di forza direzionale, non una garanzia di direzione o tempistica. Interpretare VI+ rispetto a VI− senza contesto può portare a eccessiva sicurezza, specialmente in condizioni di mercato irregolari dove entrambe le linee possono oscillare.
-
Divisione per zero o per un range quasi nullo Se la somma di TR è 0 nella finestra (ad esempio, da una serie costante o degenere), il rapporto è indefinito. Anche quando non è esattamente zero, somme di TR molto piccole possono rendere il rapporto instabile, amplificando il rumore.
Come verificare i calcoli del Vortex senza presupporre risultati
Un approccio pratico per verificare i calcoli è trattare l’indicatore come un calcolo puro:
- Scegliere N e un indice specifico di barra t.
- Estrarre i valori esatti di massimo e minimo utilizzati dal grafico o dal file dati.
- Ricalcolare VM+(k), VM−(k) e TR(k) per ogni k nel periodo di riferimento.
- Sommare e dividere per ottenere VI+(t) e VI−(t).
- Confrontare i valori calcolati con quelli del grafico per lo stesso arco temporale e allineamento delle barre.
Se i numeri non corrispondono, le cause più comuni sono:
- Diverse definizioni delle componenti direzionali (esistono lievi variazioni nel modo in cui viene espressa la logica positivo/zero).
- Diverse convenzioni di parametro (ad esempio, un indicatore etichettato con N potrebbe usare internamente una lunghezza effettiva della finestra diversa).