Vai al contenuto
Tutte le strategie

Strategie

ETH USD-M Breakout Long-Short confermato dall'open interest (BINANCE Perp, barre 4H, negozia solo i breakout in cui OPEN INTEREST è in aumento — il nuovo capitale a leva conferma il movimento, uscita all'inversione di OI, 3 parametri)

Esito: Abbandonato

EthOpenInterestConfirmedBreakoutLS

Riepilogo esito

EthOpenInterestConfirmedBreakoutLS proponeva un vantaggio davvero innovativo e invisibile in OHLCV: negoziare i breakout solo quando l'aumento dell'open interest confermava l'ingresso di nuovo capitale a leva e uscire all'inversione di OI. La strategia era deliberatamente simmetrica long/short per colmare la maggiore lacuna nelle quote del portafoglio e affermava esplicitamente che la cronologia di ETH OI risaliva a 2020, a differenza del feed di liquidazioni di 90 giorni che aveva compromesso le strategie……Mostra altroMostra meno

EthOpenInterestConfirmedBreakoutLS proponeva un vantaggio davvero innovativo e invisibile in OHLCV: negoziare i breakout solo quando l'aumento dell'open interest confermava l'ingresso di nuovo capitale a leva e uscire all'inversione di OI. La strategia era deliberatamente simmetrica long/short per colmare la maggiore lacuna nelle quote del portafoglio e affermava esplicitamente che la cronologia di ETH OI risaliva a 2020, a differenza del feed di liquidazioni di 90 giorni che aveva compromesso le strategie precedenti. Il codice era pulito (parsing robusto di OI, allineamento del ritardo di 8h, corretta assenza di fallback), ma nella pratica l'affermazione sui dati si è rivelata falsa: sono state aperte solo 7 posizioni, tutte concentrate in un'unica finestra 2026 di circa 2 mesi; nella finestra in cui ha operato, la strategia ha registrato perdite nette, con profit factor 0.027 e tasso di successo 14.3%. Il revisore l'ha abbandonata come risultato non validabile a causa della copertura dei dati insufficiente, anziché per un difetto del codice, e ha raccomandato che il Data Engineer confermi e colmi i dati mancanti per l'intera cronologia dell'open interest ETH prima di riprovare qualsiasi strategia basata sul segnale OI. Il vantaggio della conferma non è mai stato verificabile: il segnale semplicemente non era presente nell'intera finestra del backtest. Tuttavia, è stato indicato che il meccanismo specifico merita di essere riesaminato su un campione pluriennale adeguato.

Ipotesi

Una strategia swing LONG-SHORT su un singolo strumento, su ETHUSDT.BINANCE (USD-M perpetual, barre a 4 ore), il cui vantaggio distintivo è la conferma tramite OPEN-INTEREST — un segnale supplementare nativo delle criptovalute e catalogato (open_interest), quasi del tutto inesplorato nel portafoglio attuale e INVISIBLE nel puro OHLCV. L'intuizione centrale: un breakout di prezzo accompagnato da un aumento dell'open interest (RISING) significa che sta entrando nuovo capitale a leva per alimentare il movimento……Mostra altroMostra meno

Una strategia swing LONG-SHORT su un singolo strumento, su ETHUSDT.BINANCE (USD-M perpetual, barre a 4 ore), il cui vantaggio distintivo è la conferma tramite OPEN-INTEREST — un segnale supplementare nativo delle criptovalute e catalogato (open_interest), quasi del tutto inesplorato nel portafoglio attuale e INVISIBLE nel puro OHLCV. L'intuizione centrale: un breakout di prezzo accompagnato da un aumento dell'open interest (RISING) significa che sta entrando nuovo capitale a leva per alimentare il movimento (un'autentica continuazione del trend), mentre un breakout con open interest in calo (FALLING) indica chiusure di posizioni short o liquidazioni di posizioni, un esaurimento che in genere non regge. Negoziando solo breakout confermati da OI e uscendo non appena OI inverte la direzione dopo aver raggiunto il picco, la strategia filtra i falsi breakout che penalizzano i comuni sistemi trend-following basati solo sul prezzo (ETH TSMOM giornaliero con volatilità target è appena fallito con uno Sharpe deflazionato; il trend su un singolo strumento OHLCV è 0/210). Colma intenzionalmente la maggiore lacuna nelle quote — DIRECTION (long_only 84.7% rispetto a un obiettivo ≤55%) — adottando una posizione completamente simmetrica long/short. Evita tutti i recenti casi fallimentari: NOT una struttura di opzioni (L2), NOT un segnale basato sul tasso di funding (L13 — usa OI, non il funding), NOT un feed di liquidazioni (L3 — la cronologia di OI per ETH risale a circa 2020 tramite le metriche di Binance, a differenza del feed di liquidazioni di 90 giorni), NOT Hyperliquid (L11), NOT un'operazione di carry tra piattaforme (L1), NOT un paniere di N asset (L12). Il numero deliberatamente basso di parametri (3) serve a contenere l'overfitting, il killer del #1 (202x).

L'iterazione 2 apporta la modifica minima necessaria a risolvere l'errore di Layer-2: i tre helper per il parsing di OI (_to_ns, _row_ts, _row_val) erano @staticmethod e il proxy di verifica riassegna i metodi statici come metodi associati all'istanza; di conseguenza, self._row_ts(row) passava l'istanza wrapper come argomento posizionale aggiuntivo (TypeError: accetta 1 argomenti posizionali ma ne sono stati forniti 2). Convertendoli in normali metodi d'istanza che accettano self e vengono chiamati tramite self.*, il binding funziona correttamente sia nella strategia reale sia nel proxy, mantenendo identico il comportamento del parsing. Non è cambiato nient'altro: la logica del vantaggio (breakout di Donchian confermato da OI, uscita all'inversione di OI), il segnale continuo variabile a ogni barra, tutti i parametri, l'instradamento di venue e leva e il dimensionamento sono identici alla versione che aveva già superato Layer 1. In questo modo si preservano tutti i layer superati in precedenza e si corregge soltanto l'errore segnalato negli scenari sintetici.

L'affermazione centrale dell'ipotesi sui dati — «la cronologia di OI per ETH si estende fino a ~2020 tramite le metriche di Binance» — è contraddetta dal backtest: su 14,354 barre a 4H comprese tra 2019 e 2026, sono scattate solo 7 entrate, tutte concentrate in un'unica finestra di circa 2 mesi (2026-03→05), perché il filtro di conferma a OI può attivarsi solo dove sono disponibili i dati di OI. Pertanto, in questa esecuzione la copertura di OI è limitata a pochi mesi recenti, ben al di sotto di 2020……Mostra altroMostra meno

L'affermazione centrale dell'ipotesi sui dati — «la cronologia di OI per ETH si estende fino a ~2020 tramite le metriche di Binance» — è contraddetta dal backtest: su 14,354 barre a 4H comprese tra 2019 e 2026, sono scattate solo 7 entrate, tutte concentrate in un'unica finestra di circa 2 mesi (2026-03→05), perché il filtro di conferma a OI può attivarsi solo dove sono disponibili i dati di OI. Pertanto, in questa esecuzione la copertura di OI è limitata a pochi mesi recenti, ben al di sotto di 2020 (openInterestHist di Binance API fornisce solo uno storico recente limitato; non ho NOT verificato in modo indipendente se le metriche di Binance Vision OI possano essere recuperate per periodi più lontani: questo va verificato, non presunto). Il risultato è sia non validabile (7 operazioni, data_days 21 — le finestre walk-forward della pipeline a 3 fasi e il periodo di holdout di 15 giorni conterrebbero ciascuno circa 0 operazioni), sia nettamente in perdita nel periodo in cui ha operato (profit_factor 0.027, win_rate 14.3%, aspettativa -$1352/operazione, Sharpe -8.2, commissioni pari a 154% del lordo, long_win_rate 0%). Nessuna modifica ai parametri o al codice da parte dello sviluppatore può correggere la copertura dei dati di OI; il codice è già corretto. Si raccomanda al Data Engineer di verificare e, se possibile, recuperare lo storico completo dell'open interest di ETHUSDT (metriche di Binance Vision) BEFORE prima di riprovare qualsiasi strategia con segnale OI; finché non sarà confermata una copertura di OI che comprenda l'intero intervallo delle barre, le strategie con filtro OI continueranno a produrre una manciata di operazioni limitate al periodo recente, indipendentemente dallo strumento o dai parametri. Se in seguito si confermerà che OI copre più anni, vale la pena testare nuovamente questo stesso meccanismo su un campione adeguato.

Implementazione

Strategia swing long/short su ETHUSDT.BINANCE USD-M perp (barre 4H) che negozia i breakout di Donchian ONLY quando confermati da un open interest in aumento. A ogni barra allinea alla barra la serie open_interest catalogata (lista di dizionari riga, timestamp normalizzati in ns, campione più recente entro un ritardo di 8h) e calcola la variazione percentuale di OI sulla finestra del breakout. Una chiusura sopra il massimo delle precedenti 12 barre con OI in aumento di almeno oi_rise_threshold apre una posizione long; una chiusura sotto il minimo delle precedenti 12 barre con OI in aumento apre una posizione short. Esce non appena OI inverte la direzione (il valore corrente di OI scende sotto oi_rollover_threshold del suo picco dall'ingresso), oltre a uno stop 3%, un take-profit 8% e uno stop temporale di 30 barre. Capitale dimensionato in proporzione al capitale proprio, con leva per_leg_pct x (2x di leva integrata nel dimensionamento). Completamente simmetrica long/short.

Risultati di verifica

Verifica non superata (Layer 2 — scenari sintetici): Parametri usati: ['per_leg_pct', 'min_notional', 'stop_loss_pct', 'oi_lag_seconds', 'take_profit_pct', 'max_holding_bars', 'breakout_lookback', 'oi_rise_threshold', 'oi_rollover_threshold'] Controllare che __init__ imposti tutti gli attributi usando self.parameters.get(). - steady_uptrend: TypeError: EthOpenInterestConfirmedBreakoutLS._row_ts() accetta 1 argomenti posizionali ma ne sono stati forniti 2 (timestamp della barra: 1735690560000) - steady_downtrend:……Mostra altroMostra meno

Verifica non superata (Layer 2 — scenari sintetici): Parametri usati: ['per_leg_pct', 'min_notional', 'stop_loss_pct', 'oi_lag_seconds', 'take_profit_pct', 'max_holding_bars', 'breakout_lookback', 'oi_rise_threshold', 'oi_rollover_threshold'] Controllare che __init__ imposti tutti gli attributi usando self.parameters.get(). - steady_uptrend: TypeError: EthOpenInterestConfirmedBreakoutLS._row_ts() accetta 1 argomenti posizionali ma ne sono stati forniti 2 (timestamp della barra: 1735690560000) - steady_downtrend: TypeError: EthOpenInterestConfirmedBreakoutLS._row_ts() accetta 1 argomenti posizionali ma ne sono stati forniti 2 (timestamp della barra: 1735690560000) - flat_ranging: TypeError: EthOpenInterestConfirmedBreakoutLS._row_ts() accetta 1 argomenti posizionali ma ne sono stati forniti 2 (timestamp della barra: 1735690560000) - volatility_spike: TypeError: EthOpenInterestConfirmedBreakoutLS._row_ts() accetta 1 argomenti posizionali ma ne sono stati forniti 2 (timestamp della barra: 1735690560000) - zero_volume: TypeError: EthOpenInterestConfirmedBreakoutLS._row_ts() accetta 1 argomenti posizionali ma ne sono stati forniti 2 (timestamp della barra: 1735690560000) - price_gap: TypeError: EthOpenInterestConfirmedBreakoutLS._row_ts() accetta 1 argomenti posizionali ma ne sono stati forniti 2 (timestamp della barra: 1735690560000)

Ottimizzare oi_rollover_threshold su un intervallo più ampio e/o richiedere che il calo di OI persista per più di 1 barre.

Il valore predefinito oi_rollover_threshold 0.97 esce quando OI scende solo di 3% sotto il picco raggiunto dall'ingresso. L'OI orario allineato a barre 4H è rumoroso, quindi un'oscillazione di 3% può provocare un'uscita prematura — plausibilmente contribuendo al basso tasso di successo. È coerente con l'ipotesi STRUCTURE, quindi non si tratta di una discrepanza logica, ma è aggressivo.

Valuta il vantaggio a BACKTEST_REVIEW usando metriche affidabili sull'intera cronologia, non il sandbox di 7 giorni.

Il sandbox Layer-3 è NON-DIAGNOSTIC nonostante metriche estreme (Sharpe -20.1, PF 0.025, win_rate 0.143): metrics_reliable=false, data_days=7, solo 7 operazioni. Non presenta la firma win_rate=0/PF=0 o inversa di un bug. Polarità, dimensionamento, contatori, assenza di look-ahead e vantaggio OI sono stati tutti verificati e risultano corretti.

Revisione Backtest

Sharpe
-8,20
Rendimento totale
-9,43%
Drawdown massimo
11,80%
Operazioni totali
7
Tasso di successo
14,3%
Profit Factor
0,03

Segnale davvero innovativo e invisibile in OHLCV (open interest); la simmetria long/short colma la lacuna nella quota direzionale

Codice pulito: parsing robusto di OI multi-chiave e multi-unità, allineamento con ritardo di 8h, nessun fallback ingannevole basato solo sui prezzi, design con pochi parametri 3

La premessa sui dati dell'ipotesi è falsa nella pratica: nonostante un intervallo di barre da 2019 a 2026 e 14,354 barre osservate, sono state aperte solo 7 posizioni, ALL concentrate tra 2026-03 e 05 — in questa esecuzione la copertura di OI riguarda una finestra recente di circa 2-3 mesi, non risale a 2020

7 operazioni / data_days 21 — troppo poche per la validazione walk-forward (3 finestre) o il campione holdout di 15 giorni; l'ottimizzazione si adatterebbe al rumore

Il campione testato registra perdite nette: total_return -9.43%, profit_factor 0.027, win_rate 14.3%, valore atteso -$1352/operazione, Sharpe -8.2, commissioni pari a 154% del lordo, long_win_rate 0%

Riepilogo esito

Verificare la copertura storica effettiva di un segnale supplementare prima di basarsi su un'affermazione al riguardo: l'ipotesi sosteneva che la cronologia pluriennale di ETH OI fosse disponibile, ma il feed forniva solo alcuni mesi recenti. Perciò la strategia filtrata da OI poteva generare soltanto poche operazioni recenti; vale la pena riprovare il meccanismo solo se si conferma e si integra la copertura di OI sull'intero intervallo delle barre.

Il revisore del backtest ha deciso di «abbandonare» al controllo preliminare all'ottimizzazione: l'affermazione centrale dell'ipotesi sui dati — che la cronologia dell'open interest ETH risalga a circa 2020 — è stata smentita, poiché la copertura OI disponibile nell'esecuzione comprendeva solo una finestra recente di pochi mesi, generando 7 operazioni e data_days di 21, troppo poche per la validazione walk-forward o su un campione holdout. Nessuna modifica dei parametri può risolvere il problema della copertura dei dati.

Una strategia swing long-short su un singolo strumento, su ETHUSDT.BINANCE USD-M perp (4 barre), che negoziava i breakout di Donchian solo quando l'open interest era in aumento — considerando l'aumento di OI una conferma del fatto che nuovo capitale a leva stesse alimentando il movimento — e usciva non appena OI invertiva la direzione dopo aver raggiunto il picco, usando il segnale supplementare di open interest catalogato, invisibile nel puro OHLCV.

Il backtest ha aperto solo 7 posizioni in 14,354 barre 4H distribuite su 2019-2026, tutte concentrate in un'unica finestra di circa 2 mesi (da 2026-03 a 2026-05), perché il filtro di conferma OI poteva attivarsi solo dove erano disponibili dati OI. Il campione testato registra perdite nette: rendimento totale -9.43%, profit factor 0.027, tasso di successo 14.3% (long_win_rate 0%), valore atteso -$1,352/operazione, Sharpe -8.2 e commissioni pari a 154% del lordo. Non è stata eseguita alcuna fase di ottimizzazione.

Stratmill è uno strumento di ricerca e paper trading, non una consulenza finanziaria né un broker. I risultati di backtest e paper trading sono ipotetici. Il trading comporta un rischio di perdita.