La potenza di MetaTrader 5: Dal debug passo-passo alla protezione dei file EX5 in un ambiente integrato

La potenza di MetaTrader 5: Dal debug passo-passo alla protezione dei file EX5 in un ambiente integrato

Questo articolo esamina un approccio completo allo sviluppo di algoritmi di trading: dalla configurazione del progetto e del debug della logica, alla protezione del prodotto finito. Esploreremo gli strumenti integrati di MetaEditor, tra cui il debug passo-passo tramite tick reali, la profilazione delle prestazioni e l'integrazione diretta con le DLL C++ per velocizzare i calcoli. L'articolo spiega anche come proteggere la proprietà intellettuale utilizzando MQL5 Cloud Protector. L'applicazione delle tecniche descritte trasformerà lo sviluppo degli Expert Advisor da una ricerca caotica di soluzioni in un processo sistematico, riducendo significativamente il tempo necessario per sviluppare una strategia.
Visualizzazione 3D senza librerie esterne: come MetaTrader 5 mostra i risultati dell'ottimizzazione tramite MQL5 + DX11

Visualizzazione 3D senza librerie esterne: come MetaTrader 5 mostra i risultati dell'ottimizzazione tramite MQL5 + DX11

L'articolo descrive l'applicazione pratica di DirectX 11 e degli strumenti MQL5 integrati per la creazione di visualizzazioni 3D e interfacce interattive in MetaTrader 5. L'attenzione si concentra sull'efficienza cognitiva - la capacità dei grafici 3D e delle scene interattive strutturate per facilitare la comprensione dei dati di ottimizzazione, dei cluster di liquidità e degli scenari di trading multidimensionali. Vengono discussi in dettaglio i principi fondamentali della pipeline DX, il funzionamento degli shader, l'associazione degli eventi del mouse e della tastiera e i limiti tecnologici oggettivi. L'articolo è destinato agli sviluppatori MQL5 e ai trader algoritmici che sono pronti a trasformare le metriche delle strategie in paesaggi analitici 3D comprensibili, dove l'aspetto visivo accelera il processo decisionale.
MetaTrader 5: Costruire un mercato su misura per la propria strategia — grafici Renko, Range ed Equal-Volume, simboli sintetici e stress test con simboli personalizzati.

MetaTrader 5: Costruire un mercato su misura per la propria strategia — grafici Renko, Range ed Equal-Volume, simboli sintetici e stress test con simboli personalizzati.

In questo articolo, mostriamo come utilizzare le API dei simboli personalizzati di MetaTrader 5 per trasformare il terminale in un costruttore di dati per creare grafici Renko, Range ed Equal-Volume non basati sul tempo e per costruire strumenti sintetici. Analizzeremo l'aggregazione dei tick e la modifica dello storico per gli stress test (allargamento dello spread, variazioni del livello di stop) tenendo conto delle limitazioni della piattaforma. Inoltre, avrete modo di esercitarvi nella gestione di CiCustomSymbol e nell'instradamento degli ordini verso un simbolo reale tramite il wrapper CustomOrder con frammenti di codice predefiniti.
Architettura basata sugli eventi in MQL5: Come convertire un Expert Advisor in un sistema di trading a tutti gli effetti

Architettura basata sugli eventi in MQL5: Come convertire un Expert Advisor in un sistema di trading a tutti gli effetti

L'articolo è dedicato all'architettura basata sugli eventi in MQL5 e descrive il passaggio dal modello monolitico OnTick all'elaborazione distribuita. Prenderemo in considerazione eventi predefiniti e personalizzati, servizi e messaggistica tra programmi, nonché errori architetturali comuni. Un esempio pratico dimostra come organizzare le interazioni tra indicatori e un Expert Advisor (EA) per ridurre il carico, migliorare la leggibilità e semplificare la manutenzione.
MetaTrader 5 e il calendario economico di MQL5: Come Trasformare le Notizie in un Sistema di Trading Riproducibile

MetaTrader 5 e il calendario economico di MQL5: Come Trasformare le Notizie in un Sistema di Trading Riproducibile

L'articolo presenta un approccio sistematico al trading di notizie in MetaTrader 5 utilizzando il calendario economico integrato: struttura dei dati, funzioni API, regole di sincronizzazione temporale e filtraggio degli eventi. Vengono descritti metodi di caching e aggiornamento incrementale senza sovraccaricare il server. L'articolo fornisce anche un meccanismo funzionante per esportare la cronologia in una risorsa .EX5 per test deterministici utilizzando lo stesso algoritmo.
Trading algoritmico senza routine: Analisi rapida dei trade in MetaTrader 5 con SQLite

Trading algoritmico senza routine: Analisi rapida dei trade in MetaTrader 5 con SQLite

L'articolo presenta un set minimo di funzionalità per la gestione di un registro di trading in MQL5 utilizzando SQLite: una struttura di tabelle per transazioni, segnali, eventi, indici, istruzioni preparate e gestione delle operazioni, nonché query SQL analitiche standard. Vengono illustrate l'integrazione con la dashboard delle statistiche in MetaTrader 5 e il lavoro con il database tramite MetaEditor. Questo approccio consente di automatizzare il registro, accelerare i calcoli ed eseguire analisi senza complicare il codice dell'EA.
Classi di Tabelle e Intestazioni basate su un modello di tabella in MQL5: Applicazione del concetto MVC

Classi di Tabelle e Intestazioni basate su un modello di tabella in MQL5: Applicazione del concetto MVC

Questa è la seconda parte dell'articolo dedicato all'implementazione del modello di tabella in MQL5 utilizzando il paradigma architettonico MVC (Model-View-Controller). L'articolo discute lo sviluppo di classi di tabella e della sua intestazione basate su un modello di tabella creato in precedenza. Le classi sviluppate costituiranno la base per l'ulteriore implementazione dei componenti View e Controller, che saranno discussi nei seguenti articoli.
Implementazione di un modello di tabella in MQL5: Applicazione del concetto MVC

Implementazione di un modello di tabella in MQL5: Applicazione del concetto MVC

In questo articolo, esaminiamo il processo di sviluppo di un modello di tabella in MQL5 utilizzando il modello architettonico MVC (Model-View-Controller) per separare la logica dei dati, la presentazione e il controllo, consentendo un codice strutturato, flessibile e scalabile. Consideriamo l'implementazione di classi per la costruzione di un modello di tabella, compreso l'uso di liste collegate per la memorizzazione dei dati.
Passaggio a MQL5 Algo Forge (Parte 3): Utilizzo di Repository Esterni nei Propri Progetti

Passaggio a MQL5 Algo Forge (Parte 3): Utilizzo di Repository Esterni nei Propri Progetti

Esaminiamo come è possibile iniziare a integrare nel proprio progetto, codice esterno proveniente da qualsiasi repository dell'archivio MQL5 Algo Forge. In questo articolo ci occupiamo finalmente di questo promettente, ma più complesso, compito: come collegare e utilizzare praticamente le librerie di repository di terze parti all'interno di MQL5 Algo Forge.
Passaggio a MQL5 Algo Forge (parte 1): Creazione del repository principale

Passaggio a MQL5 Algo Forge (parte 1): Creazione del repository principale

Quando si lavora su progetti in MetaEditor, gli sviluppatori si trovano spesso a dover gestire le versioni del codice. MetaQuotes ha recentemente annunciato la migrazione a GIT e il lancio di MQL5 Algo Forge con funzionalità di controllo delle versioni del codice e di collaborazione. In questo articolo discuteremo come utilizzare in modo più efficiente i nuovi strumenti e quelli già esistenti.
Introduzione a MQL5 Algo Forge

Introduzione a MQL5 Algo Forge

Stiamo introducendo MQL5 Algo Forge - un portale dedicato agli sviluppatori di trading algoritmico. Combina la potenza di Git con un'interfaccia intuitiva per gestire e organizzare i progetti all'interno dell'ecosistema MQL5. Qui è possibile seguire autori interessanti, formare team e collaborare a progetti di trading algoritmico.
Approccio brute force per la ricerca di pattern (Parte VI): Ottimizzazione ciclica

Approccio brute force per la ricerca di pattern (Parte VI): Ottimizzazione ciclica

In questo articolo mostrerò la prima parte dei miglioramenti che mi hanno permesso non solo di chiudere l'intera catena di automazione per il trading su MetaTrader 4 e 5, ma anche di fare qualcosa di molto più interessante. D'ora in poi, questa soluzione mi consente di automatizzare completamente sia la creazione di EA che l'ottimizzazione, nonché di minimizzare i costi di manodopera per trovare configurazioni di trading efficaci.
Misurazione delle informazioni degli indicatori

Misurazione delle informazioni degli indicatori

L'apprendimento automatico è diventato un metodo popolare per lo sviluppo di strategie. Sebbene sia stata posta maggiore enfasi sulla massimizzazione della redditività e dell'accuratezza delle previsioni, l'importanza dell'elaborazione dei dati utilizzati per costruire i modelli predittivi non ha ricevuto molta attenzione. In questo articolo consideriamo l'utilizzo del concetto di entropia per valutare l'adeguatezza degli indicatori da utilizzare nella costruzione di modelli predittivi, come documentato nel libro Testing and Tuning Market Trading Systems di Timothy Masters.
Template pronti per includere indicatori negli Expert Advisor (Parte 1): Oscillatori

Template pronti per includere indicatori negli Expert Advisor (Parte 1): Oscillatori

L'articolo prende in considerazione gli indicatori standard della categoria degli oscillatori. Creeremo template pronti all'uso per il loro utilizzo negli EA - dichiarazione e impostazione dei parametri, inizializzazione e deinizializzazione degli indicatori, nonché ricezione dei dati e segnali dai buffer degli indicatori negli EA.
MQL5 - Anche voi potete diventare maestri di questo linguaggio

MQL5 - Anche voi potete diventare maestri di questo linguaggio

Questo articolo sarà una sorta di intervista a me stesso, in cui vi racconterò come ho mosso i primi passi nel linguaggio MQL5. Vi mostrerò come potete diventare un ottimo programmatore MQL5. Vi spiegherò le basi necessarie per raggiungere questo traguardo. L'unico prerequisito è la volontà di imparare.
Algoritmi di ottimizzazione della popolazione: Algoritmo di Ricerca Gravitazionale (GSA)

Algoritmi di ottimizzazione della popolazione: Algoritmo di Ricerca Gravitazionale (GSA)

GSA è un algoritmo di ottimizzazione della popolazione ispirato alla natura inanimata. Grazie alla legge di gravità di Newton implementata nell'algoritmo, l'alta affidabilità della modellazione dell'interazione dei corpi fisici ci permette di osservare l'incantevole danza dei sistemi planetari e degli ammassi galattici. In questo articolo prenderò in considerazione uno degli algoritmi di ottimizzazione più interessanti e originali. È previsto anche un simulatore del movimento degli oggetti spaziali.
Multibot in MetaTrader: Avvio di più robot da un singolo grafico

Multibot in MetaTrader: Avvio di più robot da un singolo grafico

In questo articolo, prenderò in considerazione un semplice modello per la creazione di un robot MetaTrader universale che può essere utilizzato su più grafici, pur essendo allegato a un solo grafico, senza la necessità di configurare ogni istanza del robot su ogni singolo grafico.
Sviluppare un Expert Advisor per il trading da zero (Parte 29): La piattaforma parlante

Sviluppare un Expert Advisor per il trading da zero (Parte 29): La piattaforma parlante

In questo articolo scopriremo come far parlare la piattaforma MetaTrader 5. E se rendessimo l'EA più divertente? Il trading sui mercati finanziari è spesso troppo noioso e monotono, ma possiamo rendere questo lavoro meno faticoso. Notare che questo progetto può essere pericoloso per chi ha problemi di dipendenza. Tuttavia, in generale, rende le cose meno noiose.
Modelli di classificazione nella libreria Scikit-Learn e la loro esportazione in ONNX

Modelli di classificazione nella libreria Scikit-Learn e la loro esportazione in ONNX

In questo articolo esploreremo l'applicazione di tutti i modelli di classificazione disponibili nella libreria Scikit-Learn per risolvere il compito di classificazione del set di dati Iris di Fisher. Cercheremo di convertire questi modelli in formato ONNX e di utilizzare i modelli risultanti nei programmi MQL5. Inoltre, confronteremo l'accuratezza dei modelli originali con le loro versioni ONNX sull'intero set di dati Iris.
Libreria di analisi numerica ALGLIB in MQL5

Libreria di analisi numerica ALGLIB in MQL5

L'articolo dà una rapida occhiata alla libreria di analisi numerica ALGLIB 3.19, alle sue applicazioni e ai nuovi algoritmi che possono migliorare l'efficienza dell'analisi dei dati finanziari.
Matematica del mercato: profitti, perdite e costi

Matematica del mercato: profitti, perdite e costi

In questo articolo, vi mostrerò come calcolare il profitto o la perdita totale di qualsiasi trade, comprese le commissioni e gli swap. Fornirò il modello matematico più accurato e lo utilizzerò per scrivere il codice e confrontarlo con lo standard. Inoltre, cercherò anche di entrare all'interno della funzione principale di MQL5 per calcolare il profitto e di arrivare in fondo a tutti i valori necessari dalla specifica.
Implementare i modelli ONNX in classi

Implementare i modelli ONNX in classi

La programmazione orientata agli oggetti consente di creare un codice più compatto che sia facile da leggere e da modificare. Qui di seguito vedremo l'esempio di tre modelli ONNX.
Matrici e vettori in MQL5: Funzioni di attivazione

Matrici e vettori in MQL5: Funzioni di attivazione

Qui descriveremo solo uno degli aspetti dell'apprendimento automatico - le funzioni di attivazione. Nelle reti neurali artificiali, una funzione di attivazione del neurone calcola il valore di un segnale di output in base ai valori di un segnale di input o di un insieme di segnali di input. Ci addentreremo nei meccanismi interni del processo.