Sistema di Trading Automatico - Case Study Tecnico
Controllo portfolio, trading system personalizzati, indicatori proprietari e gestione ordini automatica. Notifiche in tempo reale per ogni operazione eseguita. Sistema sviluppato e operativo da 12+ anni.
MAOTrade nasce dall'esigenza di implementare in codice strategie di trading reali. Un sistema sviluppato da un developer con esperienza diretta nel mondo del trading, dove ogni account opera in modo completamente indipendente.
Un sistema di trading automatico deve garantire controllo totale. Per questo MAOTrade utilizza isolamento completo tra account e flessibilità operativa senza compromessi.
Ogni account opera in modo completamente indipendente. Se un account ha problemi, gli altri continuano a funzionare normalmente. Puoi fermare, riavviare o riconfigurare un account senza toccare gli altri.

Dashboard principale per monitorare portfolio, inserire segnali e intervenire manualmente quando necessario

Centro di controllo per configurare broker, strategie di trading e monitorare le performance
Gestione automatica degli ordini con connessioni dirette ai broker per velocità ed efficienza
Studi personalizzati e indicatori proprietari per analisi grafiche e decisioni di trading ottimizzate
Ogni account broker opera in modo completamente indipendente, eliminando rischi di interferenza
Sorveglianza continua delle operazioni con backup automatici e notifiche immediate
"Un sistema di trading automatico deve essere uno strumento nelle mani del trader, non un sostituto. Massima automazione quando tutto va bene, controllo immediato quando serve intervenire."
Inserisci il segnale di trading
La strategia elabora i dati
Ordine inviato al broker
Monitoraggio in tempo reale
Risultati e notifiche
Controllo totale: puoi intervenire manualmente in qualsiasi momento del processo
MAOTrade è nato dall'esperienza diretta sui mercati. Ogni funzionalità riflette le sfide reali del trading: dalla gestione del rischio operativo all'esecuzione degli ordini, dal controllo delle posizioni al monitoring delle performance.
Ogni trading system implementa i propri controlli pre-trade secondo le logiche specifiche della strategia. Gestione automatica delle posizioni e delle uscite completamente programmabile.
Attualmente integrato con IG Trading, con architettura estendibile per altri broker tramite connettori API personalizzati. Nessun intermediario, connessione diretta per massima velocità di esecuzione.
Sviluppa le tue strategie senza limitazioni per trading intra-day e multi-day. Timeframe da 1 minuto in su, indicatori proprietari e logiche di trading completamente custom.
Ogni account broker opera in isolamento completo. Un problema tecnico su un account non compromette gli altri. Architettura che garantisce separazione totale tra diversi account.
MAOData genera studi personalizzati e grafici avanzati. Test delle strategie su dati storici tramite MAOTrace per simulare il comportamento del trading system.
Monitoring dell'esecuzione dei trading system tramite MAOTrace. Notifiche push immediate per ordini ed errori. Visualizzazione delle situazioni di mercato che hanno generato ogni ordine.
Controllo immediato su ogni posizione. Possibilità di bloccare strategie, modificare ordini o chiudere posizioni con un click. Override istantaneo quando necessario.
MAOTrace - Il Tuo Client di TradingApplicazione Android (disponibile anche versione web) che ti mette in controllo completo delle tue operazioni.
La configurazione tecnica viene gestita una tantum: collegamento al broker, setup delle strategie, orari di operatività.
Tutto quello che ti serve per operare lo fai dal tuo smartphone o computer.
Ideale per operatori che gestiscono diverse strategie simultaneamente su account separati. L'isolamento garantisce che un problema su una strategia non comprometta le altre, mentre il controllo manuale permette override quando necessario.
Progettato per chi necessita di separazione rigorosa e reporting dettagliato. Ogni ambiente può avere il proprio setup dedicato con tracciabilità completa e monitoring continuo per operazioni prolungate.
Sistema distribuito per trading automatico con focus su affidabilità, isolamento degli errori e gestione robusta delle API broker. Architettura microservices progettata per strategie intra-day e multi-day.
Un account broker per container Docker. Questa scelta garantisce isolamento totale tra account, evitando che problemi API di un broker impattino su altri account operativi. MAOPods orchestra automaticamente i container.
Centralizzato per configurazioni di sistema, anagrafica account, impostazioni strategie e dati condivisi tra tutti i componenti.
Ad uso esclusivo di MAOTrade per ordini e segnali. Accesso limitato tramite API interne per garantire integrità dati.
Motore principale in Python 3 per esecuzione strategie e gestione ordini. Interfacciamento diretto con API broker, elaborazione segnali e controllo del flusso dati finanziari.
Data source: Time frame ≥1 minuto per strategie intra-day e multi-day. Accesso esclusivo al database trading tramite API interne.
Layer di servizi FastAPI per esposizione dati tramite API REST. Gateway unico per accesso ai database e comunicazione inter-servizi.
Async/await: Gestione asincrona per performance ottimali con connessioni MySQL e MongoDB simultanee.
MAOTrace: Evoluzione da Java Android a Vue 3 PWA per monitoring real-time. MAOAdmin: Interfaccia completa per configurazioni e gestione sistema.
Progressive Web App: Service worker con Workbox per funzionalità offline e performance native-like.
Sistema di scheduling per acquisizione dati e generazione indicatori personalizzati. Elaborazioni batch per analisi tecniche e data enrichment.
Data acquisition: Web scraping con Selenium per fonti esterne, elaborazione quantitativa con numpy/pandas.
Orchestratore custom per gestione automatica container Docker. Monitora configurazioni e gestisce lifecycle dei container per ogni account.
Auto-management: Creazione, restart e terminazione automatica dei container basata su configurazione account.
Logging centralizzato: Fluentd raccoglie log da tutti i componenti verso MongoDB. Monitoring: Nagios per health check e alerting.
Proactive monitoring: Alert automatici via email per anomalie su server o componenti dell'architettura.
Ogni scelta architetturale risolve problemi specifici del trading automatico:
Problema: API broker instabili: disconnessioni, timeout, risposte malformate
Soluzione: Containerizzazione per isolamento errori, restart automatici, retry logic robusto e logging dettagliato per troubleshooting
Problema: Evitare che problemi su un account impattino altri account operativi
Soluzione: Un container Docker per account, database dedicati per trading, comunicazione stateless via API REST
Problema: Processare time series da 1 minuto per strategie intra-day e multi-day
Soluzione: Buffer intelligenti, aggregazione dati con pandas, storage ottimizzato MySQL per query analitiche veloci
Problema: Supportare multiple strategie e account senza complessità operativa
Soluzione: Microservices con responsabilità definite, orchestrazione automatica, monitoring centralizzato e deployment semplificato
System design pragmatico con focus su robustezza e maintainability. Esperienza diretta nel dominio finanziario per requirements funzionali accurati e architetture adatte alle esigenze reali del trading automatico.
MAOTrade automatizza l'esecuzione. ARIA la racconta.
È il layer conversazionale che permette di interrogare in linguaggio naturale gli stessi motori di analisi che guidano le strategie — cicli, forza relativa, fair value, volumi — con routing automatico su quale tipo di analisi serve e risposte generate in tempo reale via streaming.
Leggere un'analisi tecnica di MAOTrade ha sempre significato aprire MAOTrace e interpretare grafici e tabelle. ARIA aggiunge un livello di accesso in linguaggio naturale: si può chiedere "com'è la situazione ciclica di un titolo" o "il DAX sovraperforma il MIB da inizio anno?" e ricevere una risposta narrativa generata a partire da dati reali calcolati dal motore di analisi — non un layer decorativo sopra numeri finti, ma un narratore sopra calcoli veri, gli stessi che guidano le strategie di trading.
Il sistema non dipende da un singolo fornitore LLM: instrada automaticamente tra i modelli disponibili in base al ruolo — interpretazione della domanda, ricerca, generazione della risposta — con fallback in cascata se un provider non risponde.
Dove vive. ARIA è una web app dedicata, pensata come ambiente a sé per la conversazione e l'analisi — non un pannello innestato in un'app già esistente. Le funzionalità di analisi (conversazioni lunghe, dettatura vocale, grafici incorporati nella risposta, storico ricercabile) hanno bisogno di spazio e di un'interfaccia pensata apposta, più di quanto gliene darebbe un riquadro dentro MAOTrace. Un'integrazione nativa in MAOTrace resta una delle direzioni naturali di sviluppo futuro.

Un esempio. Alla domanda "il DAX sovraperforma il MIB da inizio anno?" il sistema riconosce l'intent di confronto tecnico, recupera i dati dei due strumenti e risponde citando il periodo di riferimento e le differenze rilevanti.
Anche a voce. Le domande si possono anche dettare: trascrizione vocale in tempo reale, pensata per l'uso da mobile senza dover scrivere.
Storico ricercabile. Le conversazioni restano salvate e sono cercabili per titolo con ricerca full-text (stemming italiano incluso).
Risposta progressiva. Il testo compare parola per parola via streaming, non con un caricamento a blocco unico — la stessa logica "controllo immediato" della filosofia di MAOTrade, applicata all'attesa della risposta.
Un motore FastAPI asincrono riceve la domanda, un livello di routing ne estrae l'intento, uno o più handler dedicati eseguono l'elaborazione (in parallelo quando gli intent sono indipendenti tra loro), un livello di generazione compone la risposta finale con prompt modulari specifici per ogni tipo di analisi.
Una singola domanda può contenere più richieste distinte — per esempio una domanda educativa e una richiesta di notizie nello stesso messaggio. Un modello dedicato le scompone in sotto-richieste tipizzate, ciascuna instradata al proprio handler, con una soglia di confidenza minima sotto la quale il sistema chiede chiarimenti invece di rispondere a caso.
Dal linguaggio naturale al ticker esatto. Quando la domanda cita uno strumento — "Ferrari", "FTSE MIB", "euro dollaro" — un primo livello LLM interpreta il riferimento testuale, poi un motore di ricerca deterministico lo risolve nel ticker preciso del catalogo MAOTrade: pulizia dei nomi societari, filtro di strumenti obsoleti o duplicati, riconciliazione automatica tra simboli intraday e daily quando differiscono per lo stesso strumento.
Quando il router classifica la domanda come analisi tecnica, la risposta viene formulata sui risultati reali del motore di calcolo interno: canali ciclici multi-periodo, forza relativa tra strumenti, fair value calcolato con due metodi distinti (uno sui soli prezzi, uno su prezzi e volumi, con segnalazione automatica quando i due divergono), analisi dei volumi con rilevamento anomalie. Sono gli stessi calcoli che alimentano l'analisi tecnica di MAOTrade, ora accessibili in una conversazione.
Quando il router classifica la domanda come richiesta di analisi fondamentale — per esempio "analizza i risultati finanziari Q4 di Tesla, identifica rischi e opportunità" — il percorso non passa dal motore di calcolo interno: la richiesta viene gestita con una ricerca web in tempo reale, perché fondamentali e notizie di mercato sono per natura dati esterni, non calcoli proprietari.
Una knowledge base finanziaria vettorizzata supporta le domande educative, con imbedding multilingue e una soglia di confidenza minima: se la ricerca semantica non trova materiale sufficientemente pertinente, il sistema non inventa una risposta — aggrega invece i risultati di una ricerca web (Brave Search) per fornire comunque un riscontro affidabile.
Priorità configurabile per ruolo tra i provider LLM disponibili, con retry automatico sugli errori di rete o di rate limit e fail-fast sugli errori di validazione. Il provider primario è scelto per il miglior rapporto costo/qualità: circa il 60% di risparmio rispetto all'alternativa più diretta, a parità di qualità delle risposte.
Protocollo Server-Sent Events, formato newline-delimited JSON, rendering progressivo lato client.
Sistema a punti, non a sola richiesta: la complessità della domanda (token utilizzati, tipo di analisi richiesta) pesa sul consumo di quota, con doppio controllo prima e dopo l'elaborazione per garantire equità sui costi tra utenti.
Ogni domanda viene validata contro pattern sospetti prima di raggiungere qualsiasi modello linguistico.
Problema: una domanda in linguaggio naturale può contenere richieste eterogenee nello stesso messaggio
Soluzione: parser dedicato che scompone la domanda in sotto-richieste tipizzate, ciascuna con soglia di confidenza minima
Problema: più chiamate LLM per una singola risposta possono generare un costo imprevedibile
Soluzione: provider primario a basso costo con fallback a cascata, tracking granulare del costo per singola chiamata
Problema: input libero da parte dell'utente è superficie di attacco per pattern malevoli
Soluzione: validazione pre-processing con blocco esplicito prima che la query raggiunga qualsiasi modello linguistico
Problema: richieste di complessità molto diversa tra loro consumano risorse in modo diseguale
Soluzione: sistema di rate limiting a punti calcolato su token e tipo di analisi, non sulla singola richiesta
Problema: un motore di analisi fondamentale proprietario richiederebbe dati aziendali strutturati (bilanci, utili, guidance) che MAOTrade non raccoglie — costruirlo o comprarlo da un data provider ha un costo che l'analisi fondamentale, non core alla mia strategia di trading, non giustifica
Soluzione: risposta esplorativa basata su ricerca web in tempo reale — un punto di partenza, non un sostituto di un'analisi fatta con documenti e metodo propri. L'analisi guidata da documenti forniti dall'utente è tra le feature future valutate per ARIA
Problema: una knowledge base finanziaria, per quanto curata, non può coprire ogni possibile domanda educativa — sotto una certa soglia di pertinenza, rispondere comunque rischia di inventare informazioni
Soluzione: soglia di confidenza minima sulla ricerca semantica; sotto soglia, il sistema aggrega risultati da una ricerca web (Brave Search) invece di allucinare o di bloccarsi
Problema: l'utente scrive "Ferrari", non "RACE" — il catalogo MAOTrade ha migliaia di ticker, con nomi societari rumorosi, duplicati, strumenti obsoleti, e simboli diversi tra dati intraday e daily per lo stesso strumento
Soluzione: un primo stadio LLM interpreta il riferimento testuale, un motore di ricerca fuzzy deterministico lo risolve nel ticker esatto, con pulizia dei nomi e riconciliazione automatica intraday/daily
Problema: un singolo metodo di calcolo del fair value può risultare fuorviante in certe condizioni di mercato — mostrare un solo numero rischia di comunicare una certezza che i dati non hanno
Soluzione: calcolo con due metodi indipendenti (uno sui soli prezzi, uno su prezzi e volumi), con segnalazione esplicita quando divergono — l'incertezza viene mostrata, non nascosta dietro un numero unico

Sono Alessandro Osti, sviluppatore e trader con oltre 12 anni di esperienza nella progettazione di sistemi di trading automatico.
MAOTrade nasce nel 2012 come idea di mio padre Maurizio Osti, ex direttore in pensione della filiale di Bologna di Banca Monte dei Paschi e prima gestore di portafoglio per grandi clienti. Mi coinvolse per due ragioni: la mia competenza tecnica e il suo desiderio di farmi avvicinare al mondo della finanza per crearmi una competenza redditizia.
L'idea originale era sviluppare una piattaforma di trading da offrire come servizio ad alcuni investitori privati che mio padre conosceva. Il mio ruolo era tradurre la sua visione in codice, seguendo i suoi consigli su logiche di risk management e architettura del sistema.
Mio padre mi introdusse al trading professionale presentandomi Giuseppe Migliorino, figura di riferimento dell'analisi ciclica in Italia. Ho partecipato ai suoi corsi e Think Tank come punto di partenza della mia formazione. Nel tempo ho approfondito studiando le fonti originali su cui si basa l'analisi ciclica moderna, conoscendo anche Eugenio Sartorelli, esperto di analisi ciclica e intermarket. La mia formazione è proseguita seguendo conferenze di settore con Maurizio Mazziero, Roberto Malnati, Davide Biocchi e Francesco Caruso.
Nel 2016 mio padre morì prima di completare il progetto, e i tre clienti pilot decisero di abbandonare. Da quel momento MAOTrade è diventato il mio laboratorio di ricerca personale: un framework dove testare e mettere in pratica le strategie che avevo iniziato a imparare.
Durante gli anni si è evoluto rispettando sempre i presupposti da cui è nato: ogni componente risolve problemi reali che ho incontrato facendo trading con denaro vero.
Credo nell'importanza di bilanciare automazione e controllo umano. MAOTrade automatizza l'esecuzione delle strategie e registra nei suoi log tutte le informazioni necessarie per monitorare operazioni, eventuali errori infrastrutturali, dati e ordini eseguiti. In questo modo combina la comodità di un sistema automatico con la sicurezza derivante dalla sua trasparenza.
Queste condizioni mi permettono di affidare con serenità alla macchina la gestione dei miei capitali. Allo stesso tempo, mantengo sempre la possibilità di intervenire manualmente, chiudendo in qualsiasi momento le posizioni, in modo totale o parziale.
Sia i mercati che le infrastrutture IT che utilizziamo, sono sistemi complessi dove l'imprevisto è la norma, non l'eccezione.
MBA in Finance con specializzazione in business management e corporate finance
Analisi tecnica e ciclica dei mercati
Python 3, Docker, MySQL, MongoDB, Vue 3 PWA, Android, Selenium, NumPy, Pandas
Easy Language, architetture distribuite, database management
FastAPI, Qdrant, RAG, LLM multi-provider (Google, Anthropic, OpenAI)
TradeStation, MultiCharts per analisi tecnica, backtesting, ricerca e test strategie
12+ anni di sviluppo sistemi di trading, consulente IT, ricerca quantitativa
Behavioral Finance e Processo Decisionale
Un'esplorazione dei concetti chiave di "Thinking, Fast and Slow" di Daniel Kahneman e dell'approccio critico di Taleb alla behavioral finance, con implicazioni per il design di sistemi di trading.
Scarica PDFEpistemologia e Filosofia della Scienza
Un viaggio filosofico attraverso il pensiero di Karl Popper e la sua applicazione pratica ai mercati finanziari tramite Nassim Nicholas Taleb. Esplorazione dei concetti di falsificabilità, problema dell'induzione, cigni neri e antifragilità applicati al trading e alla gestione dell'incertezza.
Scarica PDFHo costruito MAOTrade negli ultimi anni per automatizzare completamente il mio trading. Funziona, è in produzione, e sono sempre curioso di confrontarmi con chi lavora su problemi simili o vuole capire come l'ho risolto.
Magari hai le tue strategie ma le esegui ancora a mano, o vuoi automatizzare completamente il workflow, o ti interessa come gestisco multiple strategie contemporaneamente su account separati.
Questo progetto mostra come lavoro: Python, Docker, database, interfacce web. È tutto scritto da me, è in produzione da anni, e gestisce operazioni reali.
Ti piace vedere come altri risolvono problemi complessi. Gestire dati real-time, container isolati per ogni account, interfacce robuste - sono tutte sfide interessanti.
Lavori per un broker, una banca, o sviluppi software per trader. Magari possiamo scambiarci idee su API, protocolli, o semplicemente confrontare approcci diversi.
Rispondo a stretto giro: Non mi piace tenere le mail in sospeso
Entro nei dettagli: Se la conversazione è interessante e reciprocamente utile
Zero bullshit: Dimmi cosa ti interessa, andiamo dritti al punto
Non sto vendendo nulla: È un progetto personale che condivido per esperienza
Se hai domande specifiche o vuoi confrontarti su qualcosa, scrivi pure.