L’analisi seguente è frutto di un esperimento con un bot di trading sviluppato per l’ambito delle cripto valute. Tale strumento utilizza un motore costituito da un algoritmo di reinforcement learning per le azioni di acquisto, vendita e attesa. Il testo seguente è elaborato con una chiamata API a Claude e rielaborato successivamente per l’articolo. In ogni aggiornamento si specificano alcune variabili importanti e le eventuali modifiche al codice e ai parametri analizzando le sessioni di training.
La singolarità dell’esperimento è l’utilizzo di un strumento di IA per migliorare le performance di un algoritmo di machine learning.
Grando ruggero
Panoramica del Periodo
Nel periodo analizzato fino al 4 giugno 2026, il sistema di trading basato sull’algoritmo di reinforcement learning Rainbow DQN ha completato un totale di 6640 episodi distribuiti su 5 sessioni di training. Le sessioni attive con dati completi sono principalmente la sessione 1 (2171 episodi) e la sessione 4 (2099 episodi), mentre le sessioni 2 e 3 risultano prive di episodi registrati nei metadati principali pur avendo dati statistici sugli episodi caricati, suggerendo una possibile anomalia nel sistema di tracciamento o nel salvataggio dei checkpoint.
Il quadro generale dell’apprendimento mostra un agente in progressivo miglioramento su diversi fronti: il win rate nelle sessioni complete oscilla tra il 77.9% e l’86.5%, valori che indicano una capacità di classificazione delle operazioni in crescita rispetto alle fasi iniziali. Tuttavia, alcune metriche — in particolare il Max Drawdown — rimangono critiche in quasi tutte le sessioni recenti, segnalando che il guadagno in termini di accuratezza non si traduce ancora in una gestione del rischio affidabile.
La loss di training converge in modo consistente verso valori molto bassi (intorno a 0.003–0.005) in tutte le sessioni analizzate, e l’epsilon greedy raggiunge il suo minimo configurato di 0.08 in tutti i run, segno che l’agente ha completato la fase di esplorazione e opera principalmente in modalità sfruttamento della policy appresa.
Metriche Chiave
Sessione
Episodi
Win Rate
PnL Cumulativo
Max Drawdown
Trade Totali
HOLD / BUY / SELL
Loss Finale
Sessione 1
2171
77.9%
1000.00%
99.90%
190
32.3% / 42.2% / 25.6%
0.0054
Sessione 2
0 (dati parziali)
0.0%
0.00%
0.00%
0
dato non disponibile
0.0045
Sessione 3
0 (dati parziali)
0.0%
0.00%
0.00%
0
dato non disponibile
0.0044
Sessione 4
2099
86.5%
378.85%
99.91%
178
19.3% / 40.3% / 40.5%
0.0032
Sessione 5
2370
81.1%
147.25%
18.37%
37
14.6% / 51.8% / 33.6%
0.0030
Tabella 1 (Metriche chiave)
I dati presenti nella tabella uno mostrano un quadro contrastante. Il win rate elevato (fino all’86.5% nella sessione 4) è un segnale positivo, ma il Max Drawdown vicino al 100% nelle sessioni 1 e 4 indica che l’agente, in simulazione, subisce perdite di portafoglio quasi totali prima di recuperare. La sessione 5 è l’unica che presenta un drawdown contenuto (18.37%), suggerendo che in quel contesto di mercato l’agente ha operato in modo più prudente. Il PnL cumulativo del 1000% nella sessione 1 va interpretato con cautela: in ambiente simulato con drawdown al 99.9%, significa che l’agente rischia il capitale quasi completamente e recupera, un comportamento non accettabile in produzione.
Modifiche Apportate
Dall’analisi comparativa dei file di configurazione disponibili, non emergono modifiche strutturali ai parametri tra le sessioni analizzate. Tutti i run condividono gli stessi iperparametri fondamentali: learning rate a 0.0003, batch size 64, tau 0.005, replay frequency 2 e lookback window di 100 candele. Anche i parametri della rete neurale (LSTM a due livelli con 96 e 48 unità, dropout 0.15, dense layer a 96 unità) risultano invariati.
Questo suggerisce che stiamo valutando il comportamento dell’agente in condizioni di mercato diverse senza variare l’architettura, una scelta metodologicamente corretta per isolare l’effetto del dato di mercato rispetto a quello dell’iperparametro. Tuttavia, alla luce dei problemi persistenti di drawdown, nelle prossime iterazioni potrebbero essere necessari interventi mirati sulla reward function o sui parametri di penalizzazione del rischio.
Analisi del Comportamento dell’Agente
Il comportamento dell’agente mostra pattern differenti a seconda della sessione. Nella sessione 4, la distribuzione delle azioni è quasi perfettamente bilanciata tra BUY (40.3%) e SELL (40.5%), con HOLD al 19.3%: un pattern che indica un agente attivo, che entra ed esce dal mercato con frequenza simmetrica. Nella sessione 1, invece, prevalgono i BUY (42.2%) rispetto ai SELL (25.6%), con un HOLD più elevato (32.3%), suggerendo un bias direzionale verso posizioni lunghe.
La sessione 5 è particolarmente interessante: con soli 37 trade totali e una predominanza di BUY (51.8%), l’agente ha mantenuto posizioni a lungo senza eccessivo turnover, ottenendo il drawdown più basso del gruppo (18.37%). Questo comportamento più conservativo potrebbe essere il risultato di condizioni di mercato specifiche o di una fase di convergenza della policy più stabile.
Il trend della reward è positivo in tutte le sessioni con dati completi: la sessione 4 passa da -27.35 a +37.95 (+65.30 di incremento), la sessione 5 da -18.61 a +34.70 (+53.31). La sessione 1 migliora da -31.14 a -14.73, rimanendo tuttavia in territorio negativo, il che indica che l’apprendimento è avvenuto ma la policy non ha ancora raggiunto redditività consistente in quella configurazione.
Problemi Aperti e Sfide
1. Max Drawdown estremo nelle sessioni recenti. Le sessioni 1 e 4 mostrano un Max Drawdown del 99.90% e 99.91% rispettivamente. Questo valore, in simulazione, indica che l’agente porta il portafoglio quasi a zero prima di recuperare. Sebbene il PnL finale possa essere positivo, questo comportamento è incompatibile con un deploy in produzione e suggerisce che la reward function non penalizza sufficientemente le perdite di capitale prolungate.
2. Anomalie nel tracciamento delle sessioni 2 e 3. Le sessioni 2 e 3 risultano con 0 episodi completati nei metadati principali, pur avendo statistiche di episodi caricate (reward, win rate, loss). Questo disallineamento rende difficile l’analisi longitudinale e potrebbe indicare un problema nel sistema di logging o nel salvataggio dei checkpoint di fine sessione.
3. Reward media ancora negativa nella sessione più recente. La sessione 1 (la più recente, terminata il 4 giugno 2026) chiude con una reward media finale di -14.73. Nonostante il miglioramento rispetto all’inizio (-31.14), il valore negativo indica che l’agente non ha ancora consolidato una policy stabile e profittevole in questo specifico contesto di mercato.
Prossimi Passi
Nel prossimo ciclo di sviluppo, previsto per i prossimi giorni successivi al 4 giugno 2026, si interverrà su tre fronti principali:
Revisione della reward per il rischio: introdurre o rafforzare una penalizzazione esplicita per drawdown elevati all’interno della reward function, ad esempio aggiungendo un termine negativo proporzionale alla perdita massima registrata durante l’episodio. L’obiettivo è ridurre il Max Drawdown al di sotto del 30% nelle sessioni simulate.
Diagnosi del sistema di logging: investigare e risolvere l’anomalia che ha prodotto sessioni con 0 episodi registrati nei metadati principali (sessioni 2 e 3), garantendo la continuità e affidabilità dei dati per le analisi future.
Sperimentazione con numero di trade ottimali: la sessione 5 ha mostrato il miglior drawdown con soli 37 trade; si valuterà se ridurre il parametro optimal_trades_per_episode dall’attuale 30 verso valori inferiori per spingere l’agente verso un comportamento più selettivo e meno esposto al rischio di overtrading.
Conclusioni
Il sistema Rainbow DQN per il trading crypto mostra segnali concreti di apprendimento un win rate in crescita, loss in convergenza, reward trend positivo, ma affronta ancora sfide significative che ne impediscono la maturazione verso un deploy produttivo. Il problema più critico rimane il Max Drawdown quasi totale nelle sessioni principali, un dato che deve essere risolto prima di qualsiasi considerazione operativa. La sessione 5 offre uno spunto interessante: con un comportamento più conservativo e selettivo, l’agente ha ottenuto risultati molto più bilanciati. Il percorso da seguire sembra quindi orientarsi verso una maggiore disciplina nella gestione del rischio, piuttosto che verso un ulteriore raffinamento dell’architettura neurale, che appare già adeguata alla complessità del problema.
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?
In questa serie di articoli, tratti dai miei appunti, vedremo come realizzare alcuni algoritmi in ambito “Finance” di machine Learning scritti in linguaggio Python partendo da alcune nozioni elementari. Non si tratta di un corso vero e proprio, ma sicuramente vi potrà aiutare nella progettazione di un sistema di trading. Facebook Share on X LinkedIn…
In questa seconda parte di appunti, continueremo a scrivere del codice in Python. Scendendo nel particolare, vedremo una breve introduzione al modello della regressione polinomiale che ci permetterà nella terza parte di individuare il valore della variabile dipendente dal valore della variabile indipendente. Nel nostro caso, come descritto nella prima parte, la variabile dipendente è…
Con l’avvento delle crypto-valute o più comunemente chiamate “bitcoins” (non è il termine più corretto, ma il più usato per indicare attualmente le crypto-valute), sono nate numerose attività on-line, e una tra le più importanti, è quella di Cloud Mining. COSA SI INTENDE PER CRYPTO-VALUTA? “Una criptovaluta (o crittovaluta) è una valuta paritaria, decentralizzata digitale,…
Crypto_1_Backtester è un software di backtesting sviluppato da Grando Ruggero per il mondo delle cryptovalute. Il tool permette la simulazione di una cryptocurrency’s pair per volta e implementa sia lo static che il dynamic stoploss. Attualmente è disponibile la versione 0.0.2, e ne sono previste di nuove secondo la seguente roadmap. Il software è stato…
In questa terza parte, utilizzeremo il modello della regressione polinomiale per trovare la funzione che meglio approssima i valori reali dell’andamento di una pair con l’obiettivo di poter “calcolare” il valore futuro del prezzo dell’asset. Inoltre, vedremo come misurare l’approssimazione dei valori predetti (calcolati con l’equazione desunta della regressione lineare) e i valori reali con…
Questo documento propone un’implementazione dell’algoritmo di Reinforcement Learning nell’ambito di un progetto dello sviluppo di un software di bot-trading. Non si tratta di una versione definitiva, ma soltanto di un prototipo con tutti i difetti del caso. In questo articolo partiremo con una versione già sviluppata e cercheremo di migliorarla integrando un idea di “calcolo…
We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept All”, you consent to the use of ALL the cookies. However, you may visit "Cookie Settings" to provide a controlled consent.
This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
Cookie
Durata
Descrizione
cookielawinfo-checkbox-analytics
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional
11 months
The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-others
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-performance
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
viewed_cookie_policy
11 months
The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.