Candele giapponesi: riesecuzione corretta dopo audit
Repetición causal tras la auditoría: 35 celdas evaluables, efecto medio -0,00252R y ningún valor p corregido por debajo de 1,00. Ninguna ventaja fiable con estas definiciones.
Construido, veredicto aún no dado
Este documento de investigación está escrito en italiano. El resumen de arriba está en español; el cuerpo — método, tablas y veredicto — no está traducido.
Data: 3 settembre 2026 Script: owner/verifiche/strumenti/struttura/candele_corrette.py Seed: 20260903 Spostamenti circolari per cella: 10.000
Stato della verifica
Questa e' una riesecuzione esplorativa sugli stessi dati dopo un audit del test, non una conferma preregistrata su dati intatti. Sostituisce l'inferenza Welch/controllo casuale e la simulazione normale del massimo, entrambe non valide per queste serie dipendenti.
Il piano contiene 6 regole x 3 simboli x 2 timeframe = 36 celle. La soglia minima e' di 50 segnali reali: 35 celle sono valutabili e una, hammer D1 EURUSD con 48 segnali, non lo e'. La correzione Bonferroni usa quindi esattamente 35 test.
Dati e definizioni
I tre CSV H1 di EURUSD, GBPUSD e USDCHF sono trattati come prezzi bid piu' lo spread contemporaneo della riga. Per ogni H1 lo script costruisce esplicitamente ask_o = bid_o + spread e ask_h = bid_h + spread. Le barre D1 sono aggregate dagli stessi H1 senza applicare all'open informazioni future: il bid OHLC segue l'aggregazione ordinaria, l'ask open D1 e' il primo ask open H1 del giorno e l'ask high D1 e' il massimo dei valori H1 sincronizzati bid high + spread di quello stesso H1. Non esiste un campo spread D1 ambiguo e il massimo spread futuro del giorno non viene applicato al suo open.
Il rischio nominale e' 2 x SMA ATR14: ATR14 e' la media aritmetica semplice dei 14 true range terminanti sulla barra di segnale gia' completata. L'entrata avviene all'apertura della barra seguente.
| regola | definizione | direzione |
|---|---|---|
| engulfing bull | candela rialzista; corpo che contiene inclusivamente il precedente corpo ribassista | long |
| engulfing bear | candela ribassista; corpo che contiene inclusivamente il precedente corpo rialzista | short |
| hammer | corpo nel terzo alto; ombra bassa >= 2x corpo; ombra alta <= corpo | long |
| shooting star | corpo nel terzo basso; ombra alta >= 2x corpo; ombra bassa <= corpo | short |
| harami bull | candela rialzista; corpo incluso inclusivamente nel precedente corpo ribassista | long |
| harami bear | candela ribassista; corpo incluso inclusivamente nel precedente corpo rialzista | short |
Per engulfing e harami, "inclusivamente" significa che i confini coincidenti sono ammessi con >= e <=. I colori corrente/precedente restano strettamente opposti (close > open contro close < open). Il doji e' escluso da tutte le regole: non gli viene assegnata una direzione arbitraria.
Esecuzione e cronologia
- Long: acquisto ad
ask_o; uscita strutturale o temporale abid_o. - Short: vendita a
bid_o; uscita strutturale o temporale adask_o. - Stop long:
ask entrata - rischio; e' attivato dal bid low. - Stop short:
bid entrata + rischio; e' attivato dall'ask_hesplicito. - A ogni barra mantenuta si controlla prima il prezzo eseguibile di apertura. Se
bid_oe' gia' sotto lo stop long, il long viene chiuso a quelbid_o; seask_oe' gia' sopra lo stop short, lo short viene chiuso a quell'ask_o. Questi gap-through possono produrre un risultato inferiore a-1R. - Se l'open non ha oltrepassato lo stop ma il bid low long o l'ask high short lo tocca, il fill e' al livello di stop e vale
-1R. - Per un long il pivot opposto e' un massimo confermato; per uno short e' un minimo confermato. Si sceglie la prima conferma
>=all'indice di entrata consearchsorted(..., side='left'). - L'uscita da pivot avviene all'open della barra
conferma + 1. L'uscita temporale avviene analogamente all'open dientrata + 200, se arriva prima. - Gli stop sono controllati soltanto nelle barre
range(entrata, fine): la barra del cui open avviene l'uscita non viene sottoposta a un controllo intrabar impossibile.
Sono ammesse come entrate tutte e sole le barre con SMA ATR14 positivo noto dalla barra precedente e con 200 barre future disponibili. Per ogni simbolo, timeframe e direzione lo script precomputa l'esito R eseguibile di ogni entrata valida. Non esiste piu' un campione Monte Carlo di 3.000 controlli.
Inferenza
Per ogni cella:
- la baseline deterministica e' la media dell'intera serie degli esiti di tutte le entrate valide nella stessa direzione;
- l'effetto e'
media R del pattern - media R di tutte le entrate; - le posizioni delle entrate del pattern vengono traslate circolarmente, come blocco, sulla serie completa degli esiti per 10.000 shift Monte Carlo estratti con seed fisso;
- ogni shift conserva distanze, clustering e periodicita' dei segnali e lascia intatta la dipendenza temporale della serie degli esiti;
- il p-value empirico a due code e'
(1 + conteggio(|effetto shift| >= |effetto osservato|)) / (10.000 + 1); - il p-value corretto e'
min(1, p grezzo x 35).
I p-value sono quindi stime Monte Carlo a seed fisso: sono identici nelle riesecuzioni di questo ambiente, ma non sono enumerazioni esatte di tutti gli shift e hanno granularita' 1/10.001 e variabilita' Monte Carlo. La validita' della null richiede che gli shift circolari delle posizioni siano scambiabili rispetto alla serie degli esiti, una forma di stazionarieta' traslazionale. Trend, rotture di regime, stagionalita' incompatibile o la giunzione artificiale fra fine e inizio possono violare tale assunzione. Il metodo conserva spaziatura e clustering meglio di entrate indipendenti casuali, ma non elimina questa limitazione.
Risultati completi
all n e' la lunghezza della serie completa di entrate valide usata dalla direzione della cella. I valori sotto sono la trascrizione dell'output deterministico dello script.
| TF | simbolo | regola | n | all n | pattern R | baseline R | effetto R | p grezzo | p Bonferroni |
|---|---|---|---|---|---|---|---|---|---|
| H1 | EURUSD | engulfing bull | 8488 | 99630 | -0.05285 | -0.03838 | -0.01447 | 0.39756 | 1.00000 |
| H1 | EURUSD | engulfing bear | 8395 | 99630 | +0.00398 | +0.01330 | -0.00932 | 0.60374 | 1.00000 |
| H1 | EURUSD | hammer | 2734 | 99630 | -0.03850 | -0.03838 | -0.00012 | 0.99700 | 1.00000 |
| H1 | EURUSD | shooting star | 3038 | 99630 | -0.00793 | +0.01330 | -0.02122 | 0.53885 | 1.00000 |
| H1 | EURUSD | harami bull | 8731 | 99630 | -0.03861 | -0.03838 | -0.00023 | 0.98920 | 1.00000 |
| H1 | EURUSD | harami bear | 9158 | 99630 | +0.02354 | +0.01330 | +0.01025 | 0.55454 | 1.00000 |
| H1 | GBPUSD | engulfing bull | 8436 | 99697 | -0.04121 | -0.03728 | -0.00392 | 0.81482 | 1.00000 |
| H1 | GBPUSD | engulfing bear | 8389 | 99697 | -0.00512 | -0.00678 | +0.00166 | 0.91751 | 1.00000 |
| H1 | GBPUSD | hammer | 2796 | 99697 | -0.03059 | -0.03728 | +0.00669 | 0.83092 | 1.00000 |
| H1 | GBPUSD | shooting star | 2997 | 99697 | -0.01539 | -0.00678 | -0.00861 | 0.77782 | 1.00000 |
| H1 | GBPUSD | harami bull | 8592 | 99697 | -0.04651 | -0.03728 | -0.00922 | 0.56854 | 1.00000 |
| H1 | GBPUSD | harami bear | 8899 | 99697 | +0.00514 | -0.00678 | +0.01192 | 0.47105 | 1.00000 |
| H1 | USDCHF | engulfing bull | 8201 | 99597 | -0.03100 | -0.01669 | -0.01431 | 0.40636 | 1.00000 |
| H1 | USDCHF | engulfing bear | 8463 | 99597 | -0.02538 | -0.01095 | -0.01443 | 0.43246 | 1.00000 |
| H1 | USDCHF | hammer | 3064 | 99597 | -0.02990 | -0.01669 | -0.01320 | 0.67263 | 1.00000 |
| H1 | USDCHF | shooting star | 2828 | 99597 | -0.06972 | -0.01095 | -0.05878 | 0.08439 | 1.00000 |
| H1 | USDCHF | harami bull | 8476 | 99597 | -0.00016 | -0.01669 | +0.01654 | 0.32737 | 1.00000 |
| H1 | USDCHF | harami bear | 8940 | 99597 | -0.02901 | -0.01095 | -0.01806 | 0.29247 | 1.00000 |
| D1 | EURUSD | engulfing bull | 321 | 3966 | -0.02941 | -0.01668 | -0.01274 | 0.68263 | 1.00000 |
| D1 | EURUSD | engulfing bear | 216 | 3966 | +0.06815 | +0.00361 | +0.06455 | 0.09809 | 1.00000 |
| D1 | EURUSD | hammer | 48 | 3966 | insufficiente | insufficiente | insufficiente | insufficiente | insufficiente |
| D1 | EURUSD | shooting star | 87 | 3966 | +0.05628 | +0.00361 | +0.05267 | 0.41206 | 1.00000 |
| D1 | EURUSD | harami bull | 223 | 3966 | -0.00170 | -0.01668 | +0.01498 | 0.68063 | 1.00000 |
| D1 | EURUSD | harami bear | 336 | 3966 | -0.01861 | +0.00361 | -0.02222 | 0.46905 | 1.00000 |
| D1 | GBPUSD | engulfing bull | 318 | 3968 | -0.02560 | -0.00751 | -0.01810 | 0.56184 | 1.00000 |
| D1 | GBPUSD | engulfing bear | 206 | 3968 | -0.03170 | -0.00496 | -0.02674 | 0.51775 | 1.00000 |
| D1 | GBPUSD | hammer | 56 | 3968 | -0.00006 | -0.00751 | +0.00744 | 0.93081 | 1.00000 |
| D1 | GBPUSD | shooting star | 98 | 3968 | -0.07381 | -0.00496 | -0.06885 | 0.27847 | 1.00000 |
| D1 | GBPUSD | harami bull | 206 | 3968 | -0.01371 | -0.00751 | -0.00620 | 0.86671 | 1.00000 |
| D1 | GBPUSD | harami bear | 319 | 3968 | -0.01588 | -0.00496 | -0.01092 | 0.73913 | 1.00000 |
| D1 | USDCHF | engulfing bull | 316 | 3964 | +0.00430 | -0.00070 | +0.00500 | 0.88071 | 1.00000 |
| D1 | USDCHF | engulfing bear | 181 | 3964 | -0.00510 | +0.02086 | -0.02596 | 0.58494 | 1.00000 |
| D1 | USDCHF | hammer | 59 | 3964 | +0.16027 | -0.00070 | +0.16097 | 0.04000 | 1.00000 |
| D1 | USDCHF | shooting star | 105 | 3964 | -0.02358 | +0.02086 | -0.04443 | 0.50815 | 1.00000 |
| D1 | USDCHF | harami bull | 223 | 3964 | -0.03262 | -0.00070 | -0.03192 | 0.42446 | 1.00000 |
| D1 | USDCHF | harami bear | 328 | 3964 | +0.03384 | +0.02086 | +0.01299 | 0.68903 | 1.00000 |
Sintesi dell'output
| insieme | celle | effetto medio R | effetti positivi |
|---|---|---|---|
| H1 | 18 | -0.00771 | 5/18 |
| D1 | 17 | +0.00297 | 7/17 |
| complessivo | 35 | -0.00252 | 12/35 |
L'effetto mediano complessivo e' -0.00922R. Il p grezzo minimo e' 0.04000, nella cella hammer D1 USDCHF: pattern +0.16027R, baseline -0.00070R, effetto +0.16097R. Dopo Bonferroni il suo p-value e' 1.00000. Tutte le 35 celle hanno p Bonferroni = 1.00000; nessuna e' inferiore a 0.05.
Effetti medi per famiglia: engulfing bull -0.00976R, engulfing bear -0.00171R, hammer +0.03236R (5 celle), shooting star -0.02487R, harami bull -0.00268R, harami bear -0.00267R.
Verdetto
Nessun vantaggio direzionale affidabile rilevato con queste definizioni.
I p-value corretti sostengono questo verdetto ristretto. Non provano l'assenza di ogni effetto possibile, non convalidano la null di stazionarieta' e non trasformano questa riesecuzione esplorativa sugli stessi dati in una conferma preregistrata. Una conferma piu' forte richiederebbe definizioni congelate e dati realmente nuovi. Inoltre OHLC e spread consentono di modellare i gap osservabili agli open, ma non slippage di mercato, liquidita' o fill peggiori non contenuti nei dati.
Riproduzione
Eseguito dalla directory un nostro programma:
PYTHONPYCACHEPREFIX=/tmp/opencode/__pycache__ python3 -m py_compile owner/verifiche/strumenti/struttura/candele_corrette.py
PYTHONDONTWRITEBYTECODE=1 python3 owner/verifiche/strumenti/struttura/candele_corrette.py
PYTHONDONTWRITEBYTECODE=1 python3 owner/verifiche/strumenti/struttura/candele_corrette.py
Le due esecuzioni complete hanno prodotto output identico riga per riga.