Premessa
L’algoritmo di reinforcement learing, come sottolineato nel precedente appuntamento, è ancora in una fase iniziale in cui vengono eseguite frequenti modifiche al codice, definiti i premi e le penalità.
Tengo a precisare che ogni articolo pubblicato riguarda l’analisi delle ultime cinque sessioni di apprendimento basato su un modello di reinforcement learning e in particolare la versione Rainbow DQN durante le quali il codice cambia continuamente i parametri del modello che costituiscono l’input della rete neurale.
Le sezioni di ogni articolo saranno costituite da una panoramica del periodo di riferimento in cui è stato eseguita tale analisi sulle cinque sessioni, dai valori delle metriche chiave dell’apprendimento dell’algoritmo, da una breve sessione che spiega quali modifiche sono state apportate, da una parte importante sul comportamento dell’agente, da una sezione sui problemi, sulle sfide aperte e sui prossimi passi e infine dalla conclusione vera e propria. Ma andiamo con ordine e iniziamo con l’articolo vero e proprio.
Panoramica del Periodo
Nel periodo compreso tra il 10 e il 21 aprile 2026, il sistema di trading basato su Rainbow DQN ha completato cinque sessioni di addestramento, accumulando un totale di 10.471 episodi. Il quadro generale che emerge è eterogeneo: si alternano sessioni di apprendimento molto promettenti ad altre che rivelano ancora fragilità strutturali, suggerendo che il processo di ottimizzazione degli iperparametri è ancora in una fase attiva di esplorazione.
Le sessioni più recenti (Sessione 1 e 2) mostrano segnali incoraggianti: win rate superiori all’80%, PnL cumulativi rispettivamente del 147,25% e 94,38%, e una perdita (loss) che converge verso valori molto bassi (0,003 e 0,002). Al contrario, le sessioni più datate (Sessione 3, 4 e 5) presentano configurazioni di iperparametri differenti — in particolare learning rate più basso e lookback ridotto a 50 — che hanno prodotto risultati decisamente peggiori, inclusi drawdown estremi e PnL negativi.
La Sessione 5 risulta priva di dati operativi significativi (0 episodi completati, 0 trade), ma le statistiche interne sui 125 episodi caricati mostrano reward iniziali molto negativi (-769,37) con un trend positivo (+641,56), segnale che anche quella configurazione stava avviando un processo di recupero. Nel complesso, il sistema dimostra una chiara sensibilità alla scelta degli iperparametri, con la configurazione a learning rate 0,0003 e lookback 100 che si conferma nettamente superiore.
Metriche Chiave
| Sessione | Episodi | Win Rate | PnL Cum. | Max Drawdown | Trade | Loss Finale | HOLD/BUY/SELL |
|---|---|---|---|---|---|---|---|
| Sessione 1 | 2370 | 81,1% | +147,25% | 18,37% | 37 | 0,003 | 14,6% / 51,8% / 33,6% |
| Sessione 2 | 662 | 84,6% | +94,38% | 1,41% | 13 | 0,002 | 25,1% / 44,2% / 30,7% |
| Sessione 3 | 3700 | 45,2% | +87,27% | 99,74% | 62 | 0,0081 | 27,8% / 46,1% / 26,1% |
| Sessione 4 | 3739 | 16,7% | -16,28% | 42,80% | 6 | 0,0075 | 37,6% / 44,5% / 17,9% |
| Sessione 5 | 0 | 0,0% | 0,00% | 0,00% | 0 | 0,0418* | dato non disponibile |
* Loss riferita ai 125 episodi interni caricati, non a episodi completati ufficialmente.
Tabella 1
(Metriche chiave delle sessioni eseguite)
I dati evidenziano con chiarezza la dicotomia tra le due configurazioni testate. Le Sessioni 1 e 2, addestrate con learning rate 0,0003 e lookback 100, mostrano win rate elevati e loss convergenti a valori quasi nulli, segno di un apprendimento stabile. La Sessione 3, pur raggiungendo un PnL del 87,27%, presenta un drawdown massimo del 99,74% — praticamente un azzeramento del capitale simulato in almeno un episodio — e un win rate appena del 45,2%, indicando una redditività complessiva illusoria mascherata da pochi trade fortunati. La Sessione 4 è la più critica: PnL negativo e win rate al 16,7% confermano che quella combinazione di iperparametri non è praticabile.
Modifiche Apportate
Confrontando le sessioni cronologicamente, si osservano due configurazioni distinte che sono state alternate nel corso del periodo. Le Sessioni 4 e 5 (le più datate) utilizzavano learning rate=0,0001, batch_size=32, lookback=50 e replay_freq=4. A partire dalla Sessione 3 e poi con le Sessioni 2 e 1, si è operato un progressivo aggiustamento verso configurazioni più aggressive: il learning rate è stato portato prima a 0,00005 (Sessione 3, con risultati deludenti) e poi a 0,0003 (Sessioni 1 e 2), il batch_size è stato aumentato a 64 e poi 128, il lookback esteso a 100 e la replay_freq dimezzata a 2.
L’incremento del lookback da 50 a 100 consente alla rete LSTM di elaborare una finestra temporale più ampia, migliorando la capacità di riconoscere pattern di mercato su orizzonti più lunghi. Il batch_size maggiore stabilizza il gradiente durante l’aggiornamento dei pesi. La replay_freq=2 significa che il modello si aggiorna più frequentemente per episodio rispetto a replica_freq=4, accelerando la convergenza. I risultati confermano che la configurazione finale (lr=0,0003, batch=64, lookback=100) è quella che produce i migliori risultati nel periodo analizzato.
Analisi del Comportamento dell’Agente
Nelle sessioni meglio configurate (1 e 2), l’agente mostra un comportamento operativamente sensato: privilegia l’azione BUY (circa 44-52% delle azioni) in un contesto di mercato classificato al 100% come trending, mantiene un numero di trade contenuto (13-37 per sessione) e riesce a portare il win rate da circa il 51% iniziale fino all’81-84% a fine addestramento. Questo miglioramento progressivo del win rate all’interno della stessa sessione è il segnale più positivo del periodo: l’agente impara davvero.
Al contrario, la Sessione 3 — classificata al 100% come regime neutral — mostra un agente disorientato: 62 trade totali (quasi il doppio rispetto alle altre sessioni), win rate finale al 45,2% e reward che peggiora progressivamente (-39,06 di trend). In un mercato senza direzionalità, l’agente tende all’overtrading, accumulando commissioni senza generare profitto netto. La penalizzazione per overtrading prevista nella funzione reward (overtrading_penalty_scale=0,001) non è stata sufficiente a contenere questo comportamento in quella configurazione.
La Sessione 4 presenta solo 6 trade totali, con un HOLD dominante al 37,6% e una quasi assenza di SELL (17,9%). L’agente sembra essersi “bloccato” in una strategia passiva, incapace di chiudere le posizioni in perdita. Questo comportamento, combinato con il win rate al 16,7%, indica che la funzione valore stimata dalla rete era fortemente distorta nelle fasi iniziali di quella sessione.
Problemi Aperti e Sfide
1. Drawdown estremi in regime neutral: La Sessione 3 ha registrato un drawdown massimo del 99,74% e una media episodio del 97,56%. Anche la Sessione 4 mostra una media drawdown degli episodi di 1554% — un valore anomalo che suggerisce instabilità numerica nella normalizzazione del reward in fasi di esplorazione intensa (epsilon alto, reward iniziale a -739). Il sistema non dispone ancora di un meccanismo robusto per gestire contesti di mercato non-trending.
2. Sensibilità eccessiva agli iperparametri: Il divario tra i risultati della configurazione migliore (PnL +147,25%, win rate 81,1%) e quella peggiore (PnL -16,28%, win rate 16,7%) è enorme, pur con variazioni relativamente piccole nei parametri. Questo rende il sistema fragile: una scelta subottimale degli iperparametri produce risultati radicalmente diversi, rendendo necessario un processo di selezione più sistematico.
3. Numero di trade molto basso nelle sessioni critiche: Con soli 6 trade nella Sessione 4 e 13 nella Sessione 2, il campione statistico è troppo ridotto per valutare con affidabilità la qualità della strategia. Il parametro inactivity_threshold=50 dovrebbe teoricamente spingere l’agente verso più azioni, ma evidentemente non è sufficiente in certe configurazioni. Un win rate calcolato su 6 trade ha una varianza statistica elevatissima e non è rappresentativo delle reali capacità del modello.
Prossimi Passi
Nel prossimo ciclo di addestramento si prevede di concentrare gli sforzi su tre fronti specifici:
- Consolidare la configurazione vincente: eseguire almeno 2-3 sessioni complete con la configurazione lr=0,0003, batch=64, lookback=100 fino al completamento dei 3700 episodi previsti, per verificare la replicabilità dei risultati delle Sessioni 1 e 2.
- Testare la robustezza in regime neutral: raccogliere dati di addestramento specifici per il regime di mercato neutro, eventualmente modificando i parametri di reward per penalizzare più aggressivamente l’overtrading (innalzare overtrading_penalty_scale o abbassare optimal_trades_per_episode).
- Aumentare il numero minimo di trade per sessione: riesaminare i parametri inactivity_threshold e inactivity_penalty_scale per garantire che l’agente generi almeno 30-50 trade per sessione, rendendo le statistiche di win rate statisticamente significative e riducendo la varianza nelle valutazioni di performance.
Conclusioni
Il periodo analizzato conferma che il sistema Rainbow DQN è sulla strada giusta quando opera con la configurazione corretta (lr=0,0003, lookback=100), raggiungendo win rate superiori all’80% e PnL simulati molto positivi. Tuttavia, sarebbe disonesto presentare questi risultati senza sottolineare che le sessioni precedenti con configurazioni diverse hanno prodotto esiti molto peggiori, inclusi drawdown quasi totali e PnL negativi. Il sistema si trova ancora in una fase di ottimizzazione degli iperparametri, con una sensibilità che richiede attenzione. I prossimi cicli di addestramento dovranno consolidare la configurazione migliore e testarne la robustezza in condizioni di mercato diverse da quelle puramente trending, prima di poter trarre conclusioni definitive sull’efficacia complessiva del modello.
In tutto ciò che ho scritto, spero di aver trattato l’argomento in modo esaustivo, ma se qualcuno volesse esporre una qualche perplessità o domanda non esitate a “postare” dei commenti o ad inviarmi un e-mail a webmaster@megalinux.cloud.
Sostenete The Megalinux: In un mare di siti web sovraccarichi di pubblicità invadente, The Megalinux si distingue come l’unico rifugio libero da annunci. Abbiamo scelto di offrirvi un’esperienza di navigazione pulita e ininterrotta, ma per fare ciò, abbiamo bisogno del vostro supporto. Considerate l’idea di contribuire alla nostra missione inviando Bitcoin al nostro indirizzo. Anche una piccola donazione può fare la differenza e ci aiuterà a mantenere il sito libero da pubblicità.
È davvero difficile immaginare che esista qualcuno che, indipendentemente dalle donazioni ricevute (che non ci sono), continui a scrivere in totale libertà, tutto ciò o quasi che trova interessante?
3LpoukFpvDHTZPn5qGbLwUzve3rX9zsSq6