Strategie

Tab Strategie

In breve

Il tab Strategie è la porta d’ingresso di QANTHOS: è il primo posto in cui metti piede ogni volta che apri il programma e il punto da cui parte tutto il resto del flusso di lavoro. Qui carichi i report delle tue strategie, li vedi raccolti in un’unica tabella ordinabile, e leggi a colpo d’occhio come si comporta ciascuna strategia — in-sample e, soprattutto, out-of-sample.

Detto semplice: prima costruisci e fai girare le strategie nel tuo software di sviluppo (MultiCharts o TradeStation); poi un piccolo segnale incluso in QANTHOS, il TradeExporter, scrive su disco un file di report per ogni strategia; infine QANTHOS legge quei file, calcola decine di metriche di qualità e te le presenta pronte da esplorare, filtrare e portare nel resto dei moduli.

Una premessa importante. QANTHOS è uno strumento di analisi, validazione e scoperta, non un consulente finanziario. Le metriche che vedi in questo tab sono informazioni che descrivono il comportamento passato di una strategia: vanno interpretate con la tua esperienza, non lette come verdetti. Soglie come “Profit Factor sopra 1.5 = solido” sono convenzioni di riferimento diffuse nella letteratura sul trading sistematico, utili come orientamento ma non come legge: la loro validità dipende dal mercato, dal timeframe, dai costi e dalla strategia.

1. Da MultiCharts a QANTHOS: il segnale TradeExporter

QANTHOS non si collega direttamente al motore di backtest del tuo software di sviluppo: legge dei file di report che le strategie scrivono su disco. Questo disaccoppiamento è una scelta di design precisa — rende QANTHOS indipendente dalla piattaforma e dalla sessione di sviluppo, e ti permette di rigenerare i dati quando vuoi senza tenere aperto nient’altro.

Il ponte tra le due metà è il segnale TradeExporter, distribuito insieme a QANTHOS. È un signal in PowerLanguage/EasyLanguage che applichi al grafico della strategia in MultiCharts (o in TradeStation, con i dovuti adattamenti del linguaggio): ad ogni operazione chiusa scrive una riga nel file di report, e all’avvio scrive in testa un blocco di metadati che descrive la strategia.

1.1 Applicare il segnale al grafico

Il flusso è quello classico di un signal:

  1. Apri il grafico su cui gira la strategia nel tuo software di sviluppo.
  2. Aggiungi al grafico, insieme alla strategia, il segnale TradeExporter (la versione corrente distribuita con QANTHOS).
  3. Compila gli input del segnale (in particolare il blocco Meta*, descritto qui sotto).
  4. Lascia girare il backtest: il segnale genera il file di report nella cartella di esportazione.

Perché TradeExporter e non l’export nativo della piattaforma? Perché il file prodotto da TradeExporter è già nel formato che QANTHOS si aspetta — con il blocco di metadati in testa e il dettaglio trade-by-trade. È il formato che abilita tutto il calcolo metriche a valle senza passaggi manuali.

1.2 I tag //META: — descrivere la strategia

Il modo con cui descrivi una strategia a QANTHOS — ticker, data OOS, classe, sessione, timeframe — è il blocco di metadati che il TradeExporter scrive in testa al file: una manciata di righe //META:CHIAVE=VALORE. È un blocco semplice da configurare e ha il vantaggio di tenere le informazioni dentro il report, dove non si perdono.

È una delle parti che vale la pena configurare con cura, perché è qui — e solo qui — che dici a QANTHOS cos’è davvero ogni strategia. I tag si compilano riempiendo gli input Meta* nell’editor della strategia, una volta sola, e da quel momento i metadati viaggiano sempre insieme al report. Sei quindi libero di nominare le strategie come preferisci: il nome del file non deve seguire alcuna convenzione, perché tutto ciò che conta per QANTHOS sta nei tag.

Un solo campo può restare tranquillamente vuoto: MetaTicker (in quel caso QANTHOS usa il ticker letto dal grafico). Gli altri conviene compilarli — in particolare MetaOOS, senza il quale le metriche Out-of-Sample restano N/D.

Si configura una volta sola. I tag //META: vivono negli input del segnale applicato al grafico della strategia: li compili la prima volta e basta. Da quel momento puoi rigenerare i report tutte le volte che vuoi — dopo nuovi dati, una riottimizzazione o semplicemente per aggiornare lo storico — senza riconfigurare più nulla: a ogni esportazione il blocco di metadati viene riscritto identico in testa al file. L’unico gesto che ti resta è ricaricare il portafoglio in QANTHOS.

Input del segnale Tag scritto nel file A cosa serve Valori
MetaOOS //META:OOS= Data di inizio del periodo Out-of-Sample. È il confine che separa i dati usati in sviluppo da quelli “veri”. YYYY-MM-DD (es. 2022-01-01). Accettati anche DD/MM/YYYY, DD.MM.YYYY, DD-MM-YYYY, DDMMYYYY, YYYYMMDD.
MetaTicker //META:TICKER= Simbolo del mercato. Es. ES, NQ, GC. Se vuoto, QANTHOS usa il ticker letto dal grafico.
MetaTimeframe //META:TIMEFRAME= Timeframe del data series principale. Es. 15m, 1h, 1d.
MetaTimeframe2 / 3 //META:TIMEFRAME2= / TIMEFRAME3= Timeframe dei data series secondari (se la strategia è multi-timeframe). Es. 1440m, 1d.
MetaClass //META:CLASS= Classe della strategia. Solo: TF (trend following), REV (reversal/mean reversion), BIAS.
MetaSession //META:SESSION= Sessione operativa. Determina quale margine — overnight o intraday — la strategia impegna nel calcolo del capitale del portafoglio. Solo: ON (overnight), ID (intraday).
MetaDescription //META:DESCRIPTION= Note libere sulla strategia. Testo libero.

A questi si aggiunge //META:CURRENCY=, che QANTHOS scrive automaticamente in base al ticker (default USD) e che determina il suffisso del file di report.

Cosa succede se un tag è scritto male. QANTHOS non si blocca: scarta il singolo campo malformato (per esempio una data OOS con formato non valido) e a fine import ti mostra un solo riepilogo con l’elenco dei tag ignorati e il motivo. Nessuna correzione viene applicata in automatico e nessuna data viene “inventata”: se manca un confine OOS valido, la data OOS resta vuota e le metriche OOS di quella strategia restano N/D finché non la sistemi tu — correggendo il tag e ri-esportando, oppure impostando la data direttamente da QANTHOS (vedi §5).

1.3 Dove finiscono i file

Negli input del segnale imposti due cartelle distinte:

  • ExportPath — la cartella dei file dei trade (i report che QANTHOS leggerà). È pensata per essere specifica del portafoglio: una cartella per portafoglio è il modo più ordinato di tenerli.
  • StatusPath — una cartella centralizzata per i file di status del live, usati dal tab Monitoring. Non c’entra con l’import delle strategie.

Il TradeExporter genera e nomina i file di report in automatico: non devi preoccuparti del nome. Accanto al report può scrivere file ausiliari (_status.txt, _bardata.txt) che QANTHOS ignora in fase di import — vengono saltati automaticamente, quindi non devi separarli.

Una nota sui file “vuoti”. Una strategia long/short produce un file per lato. Se uno dei due lati non ha tradato nel periodo, il suo file conterrà solo il blocco //META: senza operazioni. Non è un errore: QANTHOS lo riconosce, lo salta, e lo segnala in una riga riassuntiva a fine caricamento.

2. Configurare la cartella dei portafogli

Una volta generati i report, devi dire a QANTHOS dove cercarli. Lo si fa una volta sola, dal menu:

Settings → Portfolio → Cambia Cartella Portfolios

Qui selezioni la cartella “radice” che contiene i tuoi portafogli. La logica è semplice: ogni sottocartella di questa radice è un portafoglio, e i file .txt al suo interno sono le strategie di quel portafoglio. È la stessa cartella che hai usato come ExportPath nel TradeExporter (o la cartella che le contiene tutte, se tieni un portafoglio per sottocartella).

Dopo aver impostato il path, dal menu a tendina Portfolio in alto nel tab Strategie compariranno tutti i portafogli trovati, ciascuno con tra parentesi il numero di file che contiene.

3. Selezionare e caricare un portafoglio

La toolbar in cima al tab raccoglie tutto ciò che serve per portare le strategie a schermo.

  1. Scegli il portafoglio dal menu a tendina Portfolio. Appena selezionato, la barra di stato in basso mostra nome, numero di file e percorso del portafoglio: una conferma rapida di aver puntato alla cartella giusta.
  2. Premi Carica Portfolio. QANTHOS legge in parallelo tutti i file del portafoglio (sfrutta tutti i core disponibili, quindi anche pool grandi si caricano in fretta), calcola le metriche di ciascuna strategia e popola la tabella.

A caricamento concluso compare un breve messaggio di riepilogo con il numero di strategie caricate e — se ce ne sono — gli eventuali avvisi (file saltati, tag //META: malformati, date OOS da sistemare).

Oltre al caricamento dell’intero portafoglio, la toolbar offre:

Pulsante Cosa fa
Carica Portfolio Carica tutte le strategie del portafoglio selezionato. È il flusso normale.
Carica File Singolo Carica un solo file di report. Comodo per ispezionare al volo una singola strategia senza caricare tutto il pool.
Configura Colonne Apre la finestra di scelta delle colonne visibili (vedi §6).
Tutti / Nessuno Abilita o disabilita in blocco tutte le strategie (vedi §5.1).

Caricare significa anche “registrare”. In sottofondo, e senza rallentare l’interfaccia, QANTHOS registra l’impronta (fingerprint) dei dati nel sistema di Data Integrity: serve a riconoscere, ai caricamenti successivi, se lo storico di una strategia è cambiato. È trasparente per te in questo tab, ma è il motivo per cui il primo caricamento di un portafoglio nuovo crea una “baseline”.

4. La tabella delle strategie

Finito il caricamento, hai davanti la lista completa delle strategie del portafoglio, una per riga, con le rispettive metriche. È il cuore del tab, ed è progettata per due modi di lettura: uno scorrimento veloce per chi sa già cosa cerca, e una panoramica ricca per chi vuole capire ogni strategia in profondità.

La tabella delle strategie in QANTHOS, con colonne anagrafiche e metriche In-Sample e Out-of-Sample
La tabella delle strategie, con le colonne anagrafiche e le metriche In-Sample / Out-of-Sample.

4.1 Le informazioni anagrafiche

Le prime colonne descrivono cosa è la strategia, prima ancora di come performa:

  • Nome Strategia — il nome completo, dal report.
  • Ticker — il mercato su cui opera (ES, NQ, GC, …).
  • Classe — la classificazione (Trend Following, Reversal, Bias), ricavata dal tag //META:CLASS o dal nome del file.
  • TF — la sessione operativa: ON per overnight, ID per intraday. (Attenzione a non confonderla con la colonna TimeFrame, che indica invece il timeframe del grafico, es. 15min, 60min.)
  • TimeFrame / TF2 — il timeframe principale ed eventuali timeframe secondari.
  • Data OOS — la data che separa il periodo In-Sample da quello Out-of-Sample.

Perché la classificazione ID/ON conta davvero. La sessione — ID (intraday) o ON (overnight) — non è un’etichetta solo descrittiva: QANTHOS la usa per calcolare correttamente i margini richiesti dal portafoglio. Una strategia che chiude le posizioni in giornata impegna il margine intraday (più basso), mentre una che porta la posizione overnight impegna il margine overnight (più alto, e di norma ben più consistente). Distinguere le due cose è ciò che permette a QANTHOS di sommare i margini giusti e stimare con precisione il capitale necessario per tradare il portafoglio: una strategia classificata male falsa quel calcolo. I valori di margine intraday e overnight di ciascun mercato vivono nel tab Strumenti (colonne Margine ID / Margine ON).

4.2 Le metriche di performance

A seguire, le metriche calcolate da QANTHOS su tutto lo storico: profittabilità (Net Profit, Profit Factor, Avg Trade, Win Rate…), rischio (Max Drawdown), rischio aggiustato (Sharpe Ratio, Sortino Ratio, Calmar Ratio), qualità della curva equity (Continuity Index, UPI) e altro ancora. La lista è ampia e personalizzabile: nessuno tiene a video tutte le colonne contemporaneamente, ed è proprio per questo che esiste Configura Colonne (§6).

4.3 Le metriche In-Sample vs Out-of-Sample

Qui sta uno degli aspetti più importanti del tab. Per QANTHOS la domanda non è solo “questa strategia ha guadagnato?”, ma “ha continuato a guadagnare anche dopo lo sviluppo?”. Per rispondere, ogni metrica rilevante viene calcolata due volte: sull’intero storico e sul solo periodo Out-of-Sample (i trade successivi alla Data OOS).

Le colonne dedicate — Trade OOS, Profit OOS, UPI OOS, Worst Day/Month OOS — sono il termometro della robustezza: una strategia eccellente in-sample ma spenta out-of-sample è un classico segnale di overfitting. Queste colonne hanno senso, però, solo se la Data OOS di ciascuna strategia è impostata correttamente: senza un confine valido, le metriche OOS restano N/D (vedi §5).

Ordinare la tabella. Un click sull’intestazione di una colonna ordina le strategie per quel valore; un secondo click inverte l’ordine. È il modo più rapido per portare in cima, per esempio, le strategie con UPI OOS più alto o con Max Drawdown più contenuto.

5. Lavorare sulle singole strategie

La tabella non è solo da guardare: da qui ispezioni, correggi e cura ogni strategia.

5.1 Abilitare e disabilitare

La prima colonna è una checkbox. Le strategie con la spunta sono abilitate e vengono propagate agli altri moduli (Portfolio Analyzer, Volatility Analyzer, Data Integrity, …); quelle senza spunta restano in lista ma escono dall’analisi. È un modo non distruttivo per escludere temporaneamente una strategia senza eliminarla. I pulsanti Tutti / Nessuno in toolbar fanno la stessa cosa in blocco.

5.2 Il dettaglio di una strategia (doppio click)

Un doppio click su una strategia apre un dialog di dettaglio dedicato alla sua performance. Mostra le metriche principali in alto e, sotto, l’equity line della strategia con la sua curva di drawdown e l’High Water Mark. L’elemento che rende questo dialog particolarmente utile è un marcatore verticale che divide visivamente la parte di dati In-Sample da quella Out-of-Sample: con un colpo d’occhio vedi se l’equity ha continuato a salire dopo il confine OOS o se ha cambiato passo — esattamente l’informazione che le colonne numeriche riassumono, ma resa immediata dal grafico.

5.3 Il menu contestuale (tasto destro)

Un click destro su una o più strategie selezionate apre un menu di azioni:

Azione Cosa fa
Visualizza dettagli Apre la scheda di dettaglio delle performance della strategia.
Modifica Data OOS Imposta o corregge il confine Out-of-Sample, per una o per più strategie insieme. Ricalcola al volo le metriche OOS.
Modifica Classe Assegna o cambia la classe (TF / REV / BIAS), singolarmente o in blocco.
Elimina Rimuove le strategie selezionate dal portafoglio corrente.

Le modifiche restano. Quando correggi una Data OOS o una Classe dal tab, QANTHOS salva la modifica come override del portafoglio: la ritrovi al caricamento successivo senza doverla rifare. Il modo più pulito resta comunque impostare i tag //META: a monte, così l’informazione viaggia insieme al report.

6. Configurare le colonne

Le metriche disponibili sono molte — decine — e mostrarle tutte renderebbe la tabella illeggibile. Il pulsante Configura Colonne apre una finestra in cui scegli quali colonne vedere e quali nascondere, spuntando le voci che ti interessano. Le colonne sono raggruppate per tipo (anagrafica, profittabilità, drawdown e rischio, rischio aggiustato, continuità, periodi peggiori, metriche OOS, performance) così da ritrovarle facilmente.

La selezione è per portafoglio: ogni portafoglio ricorda il proprio set di colonne, perché un pool intraday e uno overnight spesso si guardano con occhi diversi. Puoi inoltre trascinare le intestazioni per riordinare le colonne a tuo gusto: anche l’ordine viene memorizzato.

Un approccio comune è tenere a video poche colonne “di lavoro” (per esempio Net Profit, Profit OOS, UPI OOS, Max DD e la metrica su cui stai ragionando in quel momento) e attivare le altre solo quando servono. È una decisione di comodità personale, non una regola: l’importante è ridurre il rumore visivo per concentrarti su ciò che stai valutando.

7. Errori comuni e come evitarli

7.1 “Non vedo nessun portafoglio nel menu a tendina”

Quasi sempre significa che la cartella dei portafogli non è impostata, o punta a una cartella sbagliata. Ripassa da Settings → Portfolio → Cambia Cartella Portfolios e verifica che la radice contenga le sottocartelle dei portafogli con dentro i file .txt.

7.2 “Le metriche OOS sono tutte N/D”

Vuol dire che le strategie non hanno una Data OOS valida — di solito perché il tag //META:OOS è vuoto o scritto in un formato non riconosciuto. Soluzioni: compila MetaOOS nel TradeExporter (formato YYYY-MM-DD) e ri-esporta, oppure imposta/corregge la data dal menu contestuale (Modifica Data OOS). Ricorda che QANTHOS non inventa mai un confine: preferisce lasciare N/D piuttosto che misurare contro una data arbitraria.

7.3 “Una strategia che mi aspettavo non è stata caricata”

Se il report contiene solo il blocco //META: e nessuna operazione (per esempio il lato long o short che non ha tradato nel periodo), QANTHOS lo salta di proposito e lo segnala nel riepilogo a fine caricamento. Non è un errore.

7.4 “Ho rigenerato i report ma vedo ancora i vecchi dati”

Dopo un re-export, ricarica il portafoglio con Carica Portfolio: QANTHOS non aggiorna la tabella in automatico per non consumare risorse mentre lavori. Non devi riconfigurare nulla — i tag //META: sono già dentro il report — e se a suo tempo li hai modificati, il nuovo caricamento li rileggerà aggiornati.

8. Un flusso operativo tipico

Per chi parte da zero, ecco la sequenza completa — da intendere come percorso di riferimento, non come ricetta rigida:

  1. In MultiCharts/TradeStation, applica il segnale TradeExporter al grafico di ciascuna strategia, insieme alla strategia stessa.
  2. Compila gli input Meta* del segnale (almeno MetaOOS; idealmente anche MetaTicker, MetaClass, MetaSession, MetaTimeframe) e imposta ExportPath su una cartella dedicata al portafoglio.
  3. Fai girare i backtest: i report vengono scritti nella cartella di esportazione.
  4. In QANTHOS, imposta una volta la radice dei portafogli da Settings → Portfolio → Cambia Cartella Portfolios.
  5. Nel tab Strategie, scegli il portafoglio dal menu Portfolio e premi Carica Portfolio.
  6. Leggi il riepilogo di caricamento e sistema eventuali avvisi (date OOS malformate, tag ignorati).
  7. Esplora la tabella: ordina per le metriche che ti interessano, apri il dettaglio di qualche strategia con il doppio click per ispezionare l’equity IS/OOS, e personalizza le colonne con Configura Colonne.
  8. Abilita le strategie che vuoi portare nell’analisi e prosegui verso il Portfolio Analyzer, dove i filtri e il Builder lavoreranno su questo insieme.

Il tab Strategie fa un lavoro silenzioso ma fondamentale: trasforma una manciata di file di testo sparsi su disco in un dataset coerente, validato e arricchito di metriche, pronto per tutto ciò che QANTHOS sa fare. Quanto più curata è la fase di export (tag //META: compilati, date OOS corrette), tanto più affidabile sarà ogni analisi a valle.

9. Per approfondire

  • Portfolio Rules — Builder, filtri e costruzione del portafoglio.
  • Strumenti — dove si impostano le soglie operative per ticker (es. Min Avg Trade) e i margini.
QANTHOS è uno strumento di analisi, validazione e scoperta, non un servizio di consulenza finanziaria. Le metriche e i valori mostrati hanno scopo illustrativo e descrivono comportamenti passati. Il trading su strumenti finanziari a leva comporta un rischio significativo di perdita.