Pro e contro: Python, Java, C#/C++
In questo articolo mostreremo quali sono i Pro e i Contro dei 3 linguaggi più utilizzati dai trader automatici, in modo che tu possa prendere quella decisione da solo perché ognuno è unico e non esiste un percorso definito per il successo.
Questo blog post è quindi adatto a coloro che intendono avvicinarsi al mondo della programmazione e del trading algoritmico, ma non sanno quale linguaggio è più adatto per loro.
Python
Pro
- Facile da imparare e con tantissime risorse online e gratuite da cui studiare (qui il link alla pagina ufficiale, dove potrai trovare molto materiale utile per iniziare)
- Molte librerie differenti (Pandas, Numpy, Backtrader) per disegnare grafici e importare dati
- Grandissima comunità di sviluppatori a cui fare affidamento
- Supportato dai principali broker e data feed
- Sono necessarie solitamente meno righe di codice rispetto ad altri linguaggi per programmare la stessa cosa
Contro
- E’ necessaria moltissima memoria per farlo funzionare correttamente, soprattutto con set di dati di ampie dimensioni
- Grazie alla sua completezza e doti positive, spesso è difficile spostarsi su altri linguaggi
- Non è il linguaggio più veloce in assoluto. Quindi, se hai bisogno di un algoritmo davvero rapido, potrebbe non fare al tuo caso
Java (qui il link ufficiale)
Pro
- Ampie librerie statistiche e finanziarie per il backtesting e la formulazione di modelli di trading ad alta precisione
- In contronto a Python, è solitamente più veloce
- Supportato da moltissimi broker e ha alle spalle una grande comunità di sviluppatori a cui rivolgersi in caso di problemi
Contro
- E’ più complicato di altri linguaggi, quindi richiede una preparazione maggiore
- Richiede molto spazio di memoria, che altrimenti rallenterebbe l’algoritmo e di conseguenza la velocità del trading system
- Librerie di sviluppo poco intuitive
C#/C++ (link ufficiale)
Pro
- C++ è il linguaggio più veloce per quanto riguarda gli algoritmi di trading ed è utilizzato spesso per l’High Frequency Trading
- Molto performante per quanto riguarda la capacità di memoria
- Supportato da molti broker, che hanno un’API che può utilizzare C#
Contro
- Molto complicato da imparare
- Richiede di solito molte più linee di codice, quindi la creazione di strategie sarà più complessa
- Dipende molto dal framework di Windows, essendo un linguaggio sviluppato da Microsoft.
Conclusione
Se sei un principiante e ti stai affacciando alla programmazione di trading system il consiglio è quello di concentrarti principalmente su Python o Java.
Se invece hai già esperienza alle spalle e stai sviluppando algoritmi di trading per l’HFT il consiglio è quello di utilizzare C#/C++, per via della sua velocità migliore.
Rimani sempre aggiornato/a con il blog della Quant Trader Academy e seguici su Instagram.