← ResearchFalsified · 9 min

Dow non è un filtro — falsificazione causale su 24 simboli

24 markets × 24 phases, 15 years: concordant highs/lows do not beat the 200 SMA robustly. 557 of 576 NOT SUPPORTED, frozen data.

Our own idea, measured and abandoned

This research document is written in Italian. The summary above is in English; the body below — method, tables and verdict — is not translated.


24 mercati, 15 anni, 1 regola semplice. I massimi e minimi concordi non battono la media a 200, su nessun simbolo in modo robusto.
RISULTATO FALSIFICAZIONE23 / 24NOT SUPPORTED

Nessun mercato batte la SMA200 in modo robusto — 2011-2026

Cos'è la teoria di Dow

La teoria di Dow dice che un trend esiste quando massimi e minimi si muovono insieme: in rialzo ogni massimo è più alto del precedente e ogni minimo anche, in ribasso l’opposto. Nei libri la vedi così: apri EURUSD a 1H, tracci una linea sui massimi crescenti e una sui minimi crescenti, ti dicono “è uptrend, compra solo long”. Promette di filtrare il rumore e tenere solo la direzione “vera”, ed è la base di quasi tutto il trend-following che vendono corsi e indicatori. Sembra plausibile perché è ordinata e visiva. Noi non testiamo tutta Dow con volumi e fasi: ne prendiamo una traduzione minima, causale e falsificabile, con due finestre consecutive e regole scritte prima di guardare i dati — così chiunque può rifare il test.

Perché la falsifichiamo

📚 È ovunque, sembra ovvia. La trovi al capitolo 1 di ogni manuale, nel primo corso, nel primo indicatore “trend filter”. Sembra logica: se massimi e minimi salgono insieme, il trend è sano, quindi filtrare dovrebbe tenere solo il meglio. Proprio per questo è pericolosa: le idee più semplici sono le più credute anche quando non pagano, e le ripeti senza più chiederti se pagano.
💸 Costa se è falsa, e non te ne accorgi. Un filtro inutile non fa rumore: ti taglia in silenzio i trade buoni che avresti preso con la media, ti fa stare fuori quando dovevi stare dentro, ti fa pagare spread e ore davanti al grafico per una regola che non aggiunge nulla, e ti regala la falsa sicurezza di “essere più tecnico”. Su 15 anni il test su congelato dice: Dow perde -0.21 pip al mese contro una SMA200.
✅ Sapere ti libera. Se sai che non aggiunge, togli una regola, semplifichi il sistema, liberi capitale e testa per ciò che davvero sposta o per non tradare. Falsificare non è dire “Dow è stupida”: è dire “questa traduzione a massimi/minimi concordi non paga” — e questo vale oro perché ti evita una trappola costosa che pagheresti per anni.

Spiegato semplice (cosa abbiamo fatto)

Immagina di chiederti: “se il mercato sta facendo massimi e minimi più alti insieme, è davvero più probabile che salga domani rispetto a una media semplice?”. Per rispondere senza barare abbiamo fatto così: ogni giorno guardiamo solo il passato — confrontiamo gli ultimi 48 massimi/minimi con i 48 precedenti — se entrambi i massimi e i minimi recenti superano quelli prima apriamo un long, se entrambi sono sotto apriamo uno short, altrimenti saltiamo. Entrata alla chiusura e uscita 24 ore dopo, pagando lo spread vero che vedi sul conto, non quello del Tester. Lo stesso giorno, alla stessa ora, apriamo anche un trade con la media a 200 periodi — così confrontiamo mele con mele. Lo rifacciamo su 24 mercati diversi, dal 2011 a oggi, e ogni mese contiamo quanto Dow guadagna in più della media. Se la regola fosse buona, in media dovrebbe stare sopra, mese dopo mese, per almeno 2 anni. Non lo fa in modo robusto: sul paniere storico Dow perde -0.21 pip al mese contro la SMA200 (IC [-1.16,+0.73]), su 72 prove (3 mercati × 24 fasi) solo 9 blip isolati su USDCHF, su 576 prove (24×24) solo 19 isolate (3.3%) — nessuna promozione sistematica.
-0.21 pipDow vs SMA200 vantaggio mensile (3 simboli)
-1.16limite basso IC 95%
2907trade EURUSD Dow
179mesi rappresentati
2011-2026finestra congelata
1/24simboli promossi (solo USDCHF fase 0)
Esempio EURUSD (fase 0): 2907 trade in 179 mesi, Dow -4.31 pip vs SMA200 -3.01 pip, vantaggio -1.27 pip, intervallo 95% [-2.99,+0.39] tutto sotto promozione. Il filtro Dow perde contro la media.

Più nel dettaglio

I dati del test sono stati congelati per rendere ogni risultato riproducibile:

Ogni release ha manifest.json con SHA-256 del file grezzo e dell'archivio, verificabile con sha256sum -c e zstd -t.

La regola falsificabile

Ad ogni barra H1 (barra oraria, 1 ora = 1 candela) campionata ogni 24 barre da i=200+fase, con finestre [i-96,i-48) vs [i-48,i):

Comparatore: SMA200 (media semplice ultimi 200 prezzi orari, circa 8 giorni, la scia del prezzo) → long se close[i-1] > media(close[i-200:i]), short se sotto, altrimenti skip. Entrata solo se entrambi i filtri hanno un segno (Dow ≠0 e SMA ≠0). Entrata a open[i] bid, uscita a open[i+24] bid (H1 = barra oraria). I long pagano lo spread di entrata (differenza bid/ask, costo vero), gli short quello di uscita. Stimiamo la media mensile delle differenze appaiate (Dow pip − SMA200 pip, pip = 0.0001 su EURUSD, 0.01 su JPY) e un intervallo al 95% con bootstrap stratificato (50.000 simulazioni che rimischiando i mesi stimano l’incertezza, mesi ricampionati dentro ogni simbolo). Promozione solo se mesi>=24, vantaggio>=0.5 pip e low>0.

Nessun conteggio d'onda, nessuna soglia storica: solo due finestre consecutive e un orizzonte fisso.

Risultati — esterno su tutti i simboli (fase 0)

Come farebbe un esterno, con dati congelati per ogni simbolo:

simbolotradesmesiDow pipSMA200 pipvantaggio95%verdict
GBPJPY2902179+1.56+30.93-39.29[-272,+196]NOT_SUPPORTED
EURJPY2944179+40.50-60.35+121.76[-130,+373]NOT_SUPPORTED
EURAUD2953180-15.63-14.86-0.84[-3.16,+1.51]NOT_SUPPORTED
EURUSD2907179-4.31-3.01-1.27[-2.99,+0.39]NOT_SUPPORTED
EURGBP2894179-22.48-21.70-0.69[-2.05,+0.62]NOT_SUPPORTED
GBPCHF2934179-19.89-20.09+0.14[-1.44,+1.73]NOT_SUPPORTED
EURCHF2896180-44.43-44.04-0.93[-5.37,+1.91]NOT_SUPPORTED
NZDCHF2897180-18.39-19.50+1.37[-0.17,+3.18]NOT_SUPPORTED
CADCHF30821-2.59-3.22+0.91[-1.14,+3.33]NOT_SUPPORTED
EURCAD2892179-19.37-19.90+0.46[-1.48,+2.41]NOT_SUPPORTED
AUDNZD33221-0.72-0.94+0.46[-1.71,+2.82]NOT_SUPPORTED
AUDUSD2960179-5.32-5.29-0.12[-1.58,+1.35]NOT_SUPPORTED
CADJPY32421-293.61-705.59+438.55[-31,+1132]NOT_SUPPORTED
CHFJPY2941179-235.21-162.21-65.25[-236,+108]NOT_SUPPORTED
GBPUSD2928179-4.69-3.80-0.80[-2.67,+1.04]NOT_SUPPORTED
NZDUSD2942179-9.75-9.99+0.20[-0.92,+1.32]NOT_SUPPORTED
USDCAD34321+0.57+2.79-2.39[-6.24,+0.98]NOT_SUPPORTED
USDCHF2936179-9.71-11.12+1.43[+0.03,+2.82]SUPPORTED
USDJPY2911179-87.03-83.31-25.42[-265,+210]NOT_SUPPORTED
XAUUSD2127273+5666+2377-435[-35317,+31787]NOT_SUPPORTED
XAUEUR2014148+7243+474+5568[-5821,+19289]NOT_SUPPORTED
XAUJPY145396+1860598+210935+1678712[-109k,+3926k]NOT_SUPPORTED
BTCUSD2228149+300170+113869+108363[-198k,+437k]NOT_SUPPORTED
ETHUSD1652107-2255-9524+44281[-12995,+122k]NOT_SUPPORTED
Nota PIP: i pip su JPY/metalli/crypto usano un input dell'EA del codice: i numeri assoluti sono distorti (centinaia di migliaia), ma il segno e la promozione restano confrontabili. Su 24 simboli solo 1 promozione isolata (USDCHF) a fase 0; gli altri 23 no. Su 72 celle del perimetro storico (3×24) solo 9 blip USDCHF, mai EURUSD/GBPUSD.

Canone storico (EURUSD, GBPUSD, USDCHF) fase 0 — pari peso mensile:

«chiave»=-0.21 pip, bootstrap_95pct=[-1.16,+0.73], verdict=NOT_SUPPORTED (media ≥0.5 e low>0 fallite). 2907/2928/2936 trade, 179 mesi ciascuno.

Dati precisi — dizionario colonne: trades = entrate con entrambi i segnali; mesi = mesi distinti con trade (≥24 per promuovere); vantaggio = media mensile (Dow − SMA200) in pip; 95% = IC bootstrap 50k; verdict = SUPPORTED solo se mesi≥24+vantaggio≥0.5+low>0. Esempio EURUSD: 2907 trade/179 mesi, -1.27 pip [-2.99,+0.39] → non promosso.

Cosa significa e cosa non significa

Significa: con queste due finestre consecutive e questo orizzonte, il filtro Dow (massimi+minimi concordi) non batte la SMA200 in modo robusto, sul paniere storico e sui 24 mercati, con dati congelati e costi al contorno.

Non significa: che "Dow è falso" in generale. Non abbiamo testato conteggi di trend, volumi, né alcuna identità storica multi-strumento. Abbiamo scelto una traduzione causale minima, eseguibile e falsificabile del principio Dow — e non ha superato il test come vantaggio sistematico.

Passaggi per ogni test (identici, dati diversi)

Ogni simbolo segue gli stessi 7 passaggi, interamente su congelato. Log per simbolo in dow_tutti_simboli_20260906.json:symbols.

  1. Risoluzione dati — estrazione CSV OHLC M5 dal release congelato con verifica hash.
  2. M5→H1 — raggruppo per ora: open=primo, close=ultimo, high=max, low=min, spread=primo.
  3. Caricamentocsv H1, spread in pip.
  4. Segnale Dow — confronto high/low di [i-96,i-48) vs [i-48,i) → +1/-1/0; SMA200 → +1/-1/0; entra solo se entrambi ≠0 alla fase campionata.
  5. Esecuzioneopen[i+24]-open[i] in pip meno spread di entrata/uscita; Dow vs SMA200 appaiati.
  6. Aggregazione mensile — media mensile delle differenze appaiate per mese e per simbolo.
  7. Bootstrap — 50000 repliche stratificate per mesi dentro ogni simbolo; promozione solo se mesi≥24, vantaggio≥0.5 pip e low>0. Aggregato pari-peso mensile sui simboli storici.

Esempio EURUSD: rows≈92000 → trades=2907 → months=179 → vantaggio=-1.27 low=-2.99 → NOT_SUPPORTED. Canone trio: equal=-0.21 low=-1.16 → NOT_SUPPORTED.

Robustezza multi-fase

Stessa regola a ogni fase 0-23 (griglia d'ingresso spostata di 1 barra H1, analogo alle 24 ore). 3 simboli storici ×24 fasi = 72 celle, 9 promosse (tutte USDCHF, 9/24 fasi), 63 no, aggregato pari-peso 23/24 NOT_SUPPORTED (solo fase 09 ≈+1.08 [0.06,2.12] promossa). 24 simboli ×24 fasi = 576 celle, 19 promosse (USDCHF 9, NZDCHF 3, XAUJPY 3, ETHUSD 2, EURCAD 1, XAUEUR 1) → 557/576 NOT_SUPPORTED (3.3% blip, non sistematico). L'esito non dipende dalla fase in modo robusto — falsificata come vantaggio sistematico.

Glossario per chi inizia

SMA200 — media semplice degli ultimi 200 prezzi orari (circa 8 giorni). È la scia del prezzo: se il prezzo è sopra la linea, il trend recente è su. pip — unità minima di movimento: 0.0001 su EURUSD (1.0850→1.0851 = 1 pip), 0.01 su JPY. spread — differenza tra prezzo di acquisto e vendita che paghi per entrare/uscire (costo vero). H1 — barra oraria: open/high/low/close di ogni ora. bootstrap — 50.000 simulazioni che rimischiando i mesi stimano l’incertezza: l’intervallo 95% dice dove sta il vero vantaggio.

Dati verificabili

Tutti i file sono scaricabili con il pulsante qui sopra. Ogni pacchetto congelato in verifiche/dati_congelati/release/ ha manifest.json con SHA-256.


Stato del claim: NOT_SUPPORTED — il filtro Dow a massimi/minimi concordi non batte la SMA200 in modo robusto, né sul trio storico né sul paniere esteso.

← newerElliot non è una scorciatoia — falsificazione causale su 24 simboli
Why we publish the failures too. A system that shows only what worked cannot be judged: you do not know how many times it tried. Here you see the whole count — and what survived runs on two real accounts, in the open.
See the real accountsThe other studies