Articoli sulla programmazione in MQL4 e MQL5

icon

Grazie ai numerosi articoli pubblicati dai membri della comunità, potrai imparare il linguaggio MQL5 che ti consentirà di elaborare strategie di trading. Gli articoli sono raggruppati in categorie per facilitare la ricerca rapida di qualsiasi argomento inerente la programmazione: Integrazioni, Tester, Strategie di trading, ecc.

Tieni d'occhio le nostre nuove pubblicazioni e discutine sul Forum!

Aggiungi un nuovo articolo
più recente | il migliore
Utilizzo della Funzione TesterWithdrawal() per il Modeling dei Prelievi di Profitto
Utilizzo della Funzione TesterWithdrawal() per il Modeling dei Prelievi di Profitto

Utilizzo della Funzione TesterWithdrawal() per il Modeling dei Prelievi di Profitto

Questo articolo descrive l'uso della funzione TesterWithDrawal() per stimare i rischi nei sistemi commerciali che implicano il ritiro di una certa parte delle attività durante il loro funzionamento. Inoltre, descrive l'effetto di questa funzione sull'algoritmo di calcolo del drawdown del capitale nello Strategy Tester. Questa funzione è utile quando si ottimizzano i parametri dei propri Expert Advisor.
Aumenta all’ennesima potenza i tuoi sistemi di trading lineare
Aumenta all’ennesima potenza i tuoi sistemi di trading lineare

Aumenta all’ennesima potenza i tuoi sistemi di trading lineare

L'articolo di oggi mostra ai programmatori MQL5 di livello intermedio come possono ottenere maggiori profitti dai loro sistemi di trading lineare (Fixed Lot) implementando facilmente la cosiddetta tecnica di esponenziazione. Questo perché la crescita della curva azionaria risultante è quindi geometrica, o esponenziale, assumendo la forma di una parabola. Nello specifico, implementeremo una pratica variante MQL5 del dimensionamento a posizione frazionaria fissa sviluppato da Ralph Vince.
Programmatore Migliore (Parte 07): Note su come diventare uno sviluppatore freelance di successo
Programmatore Migliore (Parte 07): Note su come diventare uno sviluppatore freelance di successo

Programmatore Migliore (Parte 07): Note su come diventare uno sviluppatore freelance di successo

Desideri diventare uno sviluppatore freelance di successo su MQL5? Se la risposta è sì, questo articolo fa per te.
Creazione di Indicatori di Tick in MQL5
Creazione di Indicatori di Tick in MQL5

Creazione di Indicatori di Tick in MQL5

In questo articolo, analizzeremo la creazione di due indicatori: l'indicatore tick, che traccia il grafico tick del prezzo e l'indicatore tick candle, che traccia le candele con il numero di tick specificato. Ciascuno degli indicatori scrive i prezzi in entrata in un file e utilizza i dati salvati dopo il riavvio dell'indicatore (questi dati possono essere utilizzati anche dagli altri programmi)
Programmazione delle modalità di EA utilizzando l'approccio orientato agli oggetti
Programmazione delle modalità di EA utilizzando l'approccio orientato agli oggetti

Programmazione delle modalità di EA utilizzando l'approccio orientato agli oggetti

Questo articolo parla della programmazione di robot di trading multimodale in MQL5. Ogni modalità è implementata con l'approccio orientato agli oggetti. Vengono fornite istanze sia della gerarchia delle classi di modalità che delle classi per il test. Si suppone che la programmazione multimodale dei robot di trading tenga conto di tutte le peculiarità di ogni modalità operativa di un EA scritto in MQL5. Le funzioni e l'enumerazione vengono create per identificare la modalità.
preview
Indicatori multipli su un grafico (Parte 05): Trasformiamo MetaTrader 5 in un sistema RAD (I)

Indicatori multipli su un grafico (Parte 05): Trasformiamo MetaTrader 5 in un sistema RAD (I)

Tante persone non sanno programmare ma sono molto creative e hanno grandi idee. Purtroppo però, la mancanza di conoscenze di programmazione impedisce loro di realizzare queste idee. Vediamo insieme come creare un Chart Trade utilizzando la piattaforma MetaTrader 5 stessa, come se fosse un IDE.
MQL per "Duri di Comprendonio": Come Progettare e Costruire Classi di Oggetti
MQL per "Duri di Comprendonio": Come Progettare e Costruire Classi di Oggetti

MQL per "Duri di Comprendonio": Come Progettare e Costruire Classi di Oggetti

Creando un programma di esempio di visual design, dimostriamo come progettare e costruire classi in MQL5. L'articolo è scritto per i programmatori principianti che stanno lavorando su applicazioni MT5. Proponiamo una tecnologia semplice e di facile comprensione per la creazione di classi, senza la necessità di immergersi profondamente nella teoria della programmazione orientata agli oggetti.
Costruire un trader automatico di notizie
Costruire un trader automatico di notizie

Costruire un trader automatico di notizie

Questa è la continuazione di un altro articolo sulla classe OOP MQL5 che ha mostrato come costruire un semplice EA OO da zero, dando alcuni suggerimenti sulla programmazione orientata agli oggetti. Oggi vi mostro le basi tecniche necessarie per sviluppare un EA in grado di scambiare le notizie. Il mio obiettivo è quello di continuare a darti idee su OOP e anche coprire un nuovo argomento in questa serie di articoli, lavorando con il file system.
SQL e MQL5: Lavorare con il database SQLite
SQL e MQL5: Lavorare con il database SQLite

SQL e MQL5: Lavorare con il database SQLite

Questo articolo è destinato agli sviluppatori interessati a utilizzare SQL nei loro progetti. Spiega le funzionalità e i vantaggi di SQLite. L'articolo non richiede una conoscenza speciale delle funzioni SQLite, ma sarebbe utile una minima conoscenza di SQL.
preview
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.
Simulink: una Guida per gli Sviluppatori di Expert Advisor
Simulink: una Guida per gli Sviluppatori di Expert Advisor

Simulink: una Guida per gli Sviluppatori di Expert Advisor

Non sono un programmatore professionista. E così, il principio di "passare dal semplice al complesso" è di primaria importanza per me quando lavoro allo sviluppo del sistema di trading. Cosa esattamente è semplice per me? Prima di tutto, è la visualizzazione del processo di creazione del sistema e la logica del suo lavoro. Inoltre, è un minimo di codice scritto a mano. In questo articolo, tenterò di creare e testare il sistema di trading basato su un pacchetto Matlab, e quindi scrivere un Expert Advisor per MetaTrader 5. I dati storici di MetaTrader 5 verranno utilizzati per il processo del test.
preview
Python, ONNX e MetaTrader 5: Creazione di un modello RandomForest con RobustScaler e preelaborazione dei dati PolynomialFeatures

Python, ONNX e MetaTrader 5: Creazione di un modello RandomForest con RobustScaler e preelaborazione dei dati PolynomialFeatures

In questo articolo, creeremo un modello foresta casuale in Python, lo addestreremo e lo salveremo come pipeline ONNX con la pre-elaborazione dei dati. Dopodiché, utilizzeremo il modello nel terminale MetaTrader 5.
Comunicare con MetaTrader 5 utilizzando pipe denominate senza utilizzare DLL
Comunicare con MetaTrader 5 utilizzando pipe denominate senza utilizzare DLL

Comunicare con MetaTrader 5 utilizzando pipe denominate senza utilizzare DLL

Molti sviluppatori affrontano lo stesso problema: come accedere alla sandbox del terminale di trading senza utilizzare DLL non sicure. Uno dei metodi più semplici e sicuri consiste nell'utilizzare pipe denominate standard che funzionano come normali operazioni sui file. Consentono di organizzare la comunicazione client-server interprocessore tra i programmi. Dai un'occhiata agli esempi pratici in C++ e MQL5 che includono server, client, scambio di dati tra loro e benchmark delle prestazioni.
preview
Algoritmo di riacquisto: Modello matematico per aumentare l'efficienza

Algoritmo di riacquisto: Modello matematico per aumentare l'efficienza

In questo articolo utilizzeremo l'algoritmo di riacquisto per una comprensione più approfondita dell'efficienza dei sistemi di trading e inizieremo a lavorare sui principi generali del miglioramento dell'efficienza del trading utilizzando la matematica e la logica, oltre ad applicare metodi non standard per aumentare l'efficienza in termini di utilizzo di qualsiasi sistema di trading.
preview
Come creare un indicatore personalizzato (Heiken Ashi) utilizzando MQL5

Come creare un indicatore personalizzato (Heiken Ashi) utilizzando MQL5

In questo articolo impareremo a creare un indicatore personalizzato con MQL5 in base alle nostre preferenze, da utilizzare in MetaTrader 5 per aiutarci a leggere i grafici o per utilizzarli negli Expert Advisor automatici.
Ricerca di Errori e Registrazione
Ricerca di Errori e Registrazione

Ricerca di Errori e Registrazione

MetaEditor 5 ha la funzione di debug. Tuttavia quando scrivi i tuoi programmi MQL5, spesso non vuoi visualizzare solo i singoli valori, ma tutti i messaggi che appaiono durante i test e il lavoro online. Quando il contenuto del file del log è di grandi dimensioni, è ovvio automatizzare il recupero rapido e semplice del messaggio richiesto. In questo articolo considereremo i modi per trovare errori nei programmi MQL5 e i metodi di logging. Inoltre semplificheremo l'accesso ai file e conosceremo un semplice programma LogMon per una comoda visualizzazione dei log.
Fondamenti di programmazione MQL5: Variabili Globali del Terminale
Fondamenti di programmazione MQL5: Variabili Globali del Terminale

Fondamenti di programmazione MQL5: Variabili Globali del Terminale

Questo articolo evidenzia le capacità orientate agli oggetti del linguaggio MQL5 per la creazione di oggetti che facilitano il lavoro con le variabili globali del terminale. Come esempio pratico considero un caso in cui le variabili globali vengono utilizzate come punti di controllo per l'implementazione delle fasi del programma.
Scopri come progettare un sistema di trading con il CCI
Scopri come progettare un sistema di trading con il CCI

Scopri come progettare un sistema di trading con il CCI

In questo nuovo articolo della nostra serie dedicata a come progettare sistemi di trading, presenterò il Commodities Channel Index (CCI), spiegherò le sue caratteristiche e condividerò con voi come creare un sistema di trading basato su questo indicatore.
Creazione di un Indicatore Multivaluta, Utilizzando un Numero di Buffer di Indicatori Intermedi
Creazione di un Indicatore Multivaluta, Utilizzando un Numero di Buffer di Indicatori Intermedi

Creazione di un Indicatore Multivaluta, Utilizzando un Numero di Buffer di Indicatori Intermedi

C'è stato un recente aumento di interesse per le analisi dei cluster del mercato FOREX. MQL5 apre nuove possibilità di ricerca delle tendenze del movimento delle coppie di valute. Una caratteristica fondamentale di MQL5, che lo differenzia da MQL4, è la possibilità di utilizzare un numero illimitato di buffer indicatori. Questo articolo descrive un esempio di creazione di un indicatore multivaluta.
Calcoli paralleli su MetaTrader 5
Calcoli paralleli su MetaTrader 5

Calcoli paralleli su MetaTrader 5

Il tempo ha sempre avuto un grande valore in tutta la storia dell'umanità e noi ci sforziamo di non sprecarlo inutilmente. Questo articolo ti dirà come accelerare il lavoro del tuo Expert Advisor se il tuo computer ha un processore multi-core. Inoltre, l'implementazione del metodo proposto non richiede la conoscenza di altri linguaggi oltre a MQL5.
3 Metodi di accelerazione degli indicatori mediante l'esempio della regressione lineare
3 Metodi di accelerazione degli indicatori mediante l'esempio della regressione lineare

3 Metodi di accelerazione degli indicatori mediante l'esempio della regressione lineare

L'articolo tratta i metodi di ottimizzazione degli algoritmi di calcolo degli indicatori. Ciascuno troverà il metodo più adatto alle proprie esigenze. Qui sono descritti tre metodi. Uno di questi è abbastanza semplice, il successivo richiede una solida conoscenza della matematica e l'ultimo richiede un po' di arguzia. Gli indicatori o le funzionalità di progettazione del terminale MetaTrader5 vengono utilizzati per realizzare la maggior parte dei metodi descritti. I metodi sono abbastanza universali e possono essere utilizzati non solo per l'accelerazione del calcolo della regressione lineare, ma anche per molti altri indicatori.
Video tutorial MetaTrader Signals Service
Video tutorial MetaTrader Signals Service

Video tutorial MetaTrader Signals Service

In soli 15 minuti, questo video tutorial spiega cos'è il servizio di segnali MetaTrader e mostra in dettaglio come abbonarsi ai segnali di trading e come diventare un fornitore di segnali nel nostro servizio. Guardando questo tutorial, sarai in grado di iscriverti a qualsiasi segnale di trading o pubblicare e promuovere i tuoi segnali nel nostro servizio.
Come sviluppare un Expert Advisor utilizzando gli strumenti UML
Come sviluppare un Expert Advisor utilizzando gli strumenti UML

Come sviluppare un Expert Advisor utilizzando gli strumenti UML

Questo articolo discute la creazione di Expert Advisor utilizzando il linguaggio grafico UML, usato per la modellazione visiva di sistemi software orientati agli oggetti. Il vantaggio principale di questo approccio è la visualizzazione del processo di modellazione. L'articolo contiene un esempio che mostra la modellazione della struttura e delle proprietà di un Expert Advisor utilizzando il software Ideas Modeler.
MQL5 Cloud Network: Stai ancora calcolando?
MQL5 Cloud Network: Stai ancora calcolando?

MQL5 Cloud Network: Stai ancora calcolando?

Presto sarà passato un anno e mezzo dal lancio di MQL5 Cloud Network. Questo evento all'avanguardia ha inaugurato una nuova era del trading algoritmico: ora con un paio di clic, i trader possono avere centinaia e migliaia di core di calcolo a loro disposizione per l'ottimizzazione delle loro strategie di trading.
preview
Analisi quantitativa in MQL5: Implementazione di un algoritmo promettente

Analisi quantitativa in MQL5: Implementazione di un algoritmo promettente

Analizzeremo la questione di cosa sia l'analisi quantitativa e come viene utilizzata dai principali operatori. Creeremo uno degli algoritmi di analisi quantitativa nel linguaggio MQL5.
preview
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.
preview
Algoritmo di riacquisto: Simulazione di trading multivaluta

Algoritmo di riacquisto: Simulazione di trading multivaluta

In questo articolo creeremo un modello matematico per la simulazione dei prezzi multivaluta e completeremo lo studio del principio di diversificazione come parte della ricerca dei meccanismi per aumentare l'efficienza del trading, iniziata nel precedente articolo con calcoli teorici.
Utilizzo di WinInet.dll per lo scambio di dati tra terminali tramite Internet
Utilizzo di WinInet.dll per lo scambio di dati tra terminali tramite Internet

Utilizzo di WinInet.dll per lo scambio di dati tra terminali tramite Internet

Questo articolo descrive i principi del lavoro con Internet tramite l'uso di richieste HTTP e lo scambio di dati tra terminali, utilizzando un server intermedio. Viene presentata una classe di libreria MqlNet per lavorare con le risorse Internet nell'ambiente MQL5. Monitorare i prezzi di diversi broker, scambiare messaggi con altri trader senza uscire dal terminale, cercare informazioni su Internet: questi sono solo alcuni esempi recensiti in questo articolo.
MQL5 Cookbook: Implementazione di un array associativo o di un dizionario per l'accesso rapido ai dati
MQL5 Cookbook: Implementazione di un array associativo o di un dizionario per l'accesso rapido ai dati

MQL5 Cookbook: Implementazione di un array associativo o di un dizionario per l'accesso rapido ai dati

Questo articolo descrive uno speciale algoritmo che consente di accedere agli elementi tramite le loro chiavi univoche. Qualsiasi tipo di dati di base può essere utilizzato come chiave. Ad esempio può essere rappresentato come una stringa o una variabile intera. Tale contenitore di dati è comunemente indicato come dizionario o array associativo. Fornisce un modo più semplice ed efficiente di risolvere i problemi.
Creazione di Indicatori Multicolor in MQL5
Creazione di Indicatori Multicolor in MQL5

Creazione di Indicatori Multicolor in MQL5

In questo articolo, considereremo come creare indicatori multicolor o convertire quelli esistenti in multicolor. MQL5 permette di rappresentare le informazioni nella forma più conveniente. Ora, non è più necessario guardare una dozzina di grafici con indicatori ed eseguire analisi dell’RSI o dei livelli stocastici, è meglio semplicemente colorare le candele con colori diversi a seconda dei valori degli indicatori.
Programmatore migliore (Parte 02): Smetti di fare queste 5 cose per diventare un programmatore MQL5 di successo
Programmatore migliore (Parte 02): Smetti di fare queste 5 cose per diventare un programmatore MQL5 di successo

Programmatore migliore (Parte 02): Smetti di fare queste 5 cose per diventare un programmatore MQL5 di successo

Questo è l'articolo da leggere per chiunque voglia migliorare la propria carriera di programmatore. Questa serie di articoli ha lo scopo di renderti il miglior programmatore che puoi essere, non importa quanto tu sia esperto. Le idee discusse funzionano sia per i neofiti della programmazione MQL5 che per i professionisti.
Random Walk e l'indicatore di tendenza
Random Walk e l'indicatore di tendenza

Random Walk e l'indicatore di tendenza

Random Walk sembra molto simile ai dati di mercato reali, ma ha alcune caratteristiche significative. In questo articolo considereremo le proprietà di Random Walk, simulato utilizzando il gioco del lancio della moneta. Per studiare le proprietà dei dati, viene sviluppato l'indicatore di tendenza.
Ottimizzazione. Alcune semplici idee
Ottimizzazione. Alcune semplici idee

Ottimizzazione. Alcune semplici idee

Il processo di ottimizzazione può richiedere risorse significative del computer o anche degli agenti di test MQL5 Cloud Network. Questo articolo comprende alcune semplici idee che uso per facilitare il lavoro e migliorare il MetaTrader 5 Strategy Tester. Ho preso queste idee dalla documentazione, dal forum e dagli articoli.
Programmatore Migliore (Parte 04): Come diventare uno sviluppatore più veloce
Programmatore Migliore (Parte 04): Come diventare uno sviluppatore più veloce

Programmatore Migliore (Parte 04): Come diventare uno sviluppatore più veloce

Ogni sviluppatore vuole essere in grado di scrivere codice più velocemente, ed essere in grado di programmare in modo più rapido ed efficace non è un tipo di abilità speciale con cui solo poche persone sono nate. È un'abilità che può essere appresa da ogni programmatore, indipendentemente dagli anni di esperienza sulla tastiera.
Manuale statistico del trader ipotesi
Manuale statistico del trader ipotesi

Manuale statistico del trader ipotesi

Questo articolo considera l'ipotesi, una delle idee di base della statistica matematica. Varie ipotesi vengono esaminate e verificate attraverso esempi utilizzando metodi di statistica matematica. I dati effettivi vengono generalizzati utilizzando metodi non parametrici. Per l'elaborazione dei dati vengono utilizzati il pacchetto Statistica e la libreria di analisi numerica ALGLIB MQL5 pilotata.
Test delle Prestazioni del Calcolo delle Medie Mobili in MQL5
Test delle Prestazioni del Calcolo delle Medie Mobili in MQL5

Test delle Prestazioni del Calcolo delle Medie Mobili in MQL5

Dal momento della creazione del primo indicatore della media mobile, sono comparsi numerosi indicatori. Molti di loro utilizzano metodi di smoothing simili, ma non sono state studiate le prestazioni di diversi algoritmi di medie mobili. In questo articolo, prenderemo in considerazione i possibili modi d’utilizzo delle medie mobili in MQL5 e confronteremo le loro prestazioni.
Passi su Nuovi Binari: Indicatori Personalizzati in MQL5
Passi su Nuovi Binari: Indicatori Personalizzati in MQL5

Passi su Nuovi Binari: Indicatori Personalizzati in MQL5

Non elencherò tutte le nuove possibilità e funzionalità del nuovo terminale e del nuovo linguaggio. Sono numerose e alcune novità meritano la trattazione in un articolo a parte. Inoltre non c'è codice qui, scritto con programmazione orientata agli oggetti, è un argomento troppo serio per essere semplicemente menzionato in un contesto come i vantaggi aggiuntivi per gli sviluppatori. In questo articolo, considereremo gli indicatori, la loro struttura, il disegno, i tipi e i loro dettagli di programmazione rispetto a MQL4. Spero che questo articolo sia utile sia per i principianti che per gli sviluppatori esperti, forse alcuni di loro troveranno qualcosa di nuovo.
Analisi dei parametri statistici degli indicatori
Analisi dei parametri statistici degli indicatori

Analisi dei parametri statistici degli indicatori

L'analisi tecnica implementa ampiamente gli indicatori che mostrano le quotazioni di base "più chiaramente" e consentono ai trader di eseguire analisi e prevedere il movimento dei prezzi di mercato. È abbastanza ovvio che non ha senso utilizzare gli indicatori, tanto meno applicarli nella creazione di sistemi di trading, a meno che non si risolvano i problemi relativi alla trasformazione delle quotazioni iniziali e alla credibilità dei risultati ottenuti. In questo articolo mostriamo che ci sono serie ragioni per una tale conclusione.
Sistemi di Trading Adattivi e loro utilizzo nel Client MetaTrader 5
Sistemi di Trading Adattivi e loro utilizzo nel Client MetaTrader 5

Sistemi di Trading Adattivi e loro utilizzo nel Client MetaTrader 5

Questo articolo suggerisce una variante di un sistema adattivo che consiste in molte strategie, ognuna delle quali esegue le proprie operazioni di trading "virtuali". Il trading reale viene eseguito in conformità con i segnali di una strategia più redditizia al momento. Grazie all'utilizzo dell'approccio orientato agli oggetti, le classi per lavorare con i dati e le classi di trading della libreria Standard, l'architettura del sistema è apparsa semplice e scalabile; ora puoi facilmente creare e analizzare i sistemi adattivi che includono centinaia di strategie di trading.
Approccio econometrico all'analisi dei grafici
Approccio econometrico all'analisi dei grafici

Approccio econometrico all'analisi dei grafici

Questo articolo descrive in particolare i metodi econometrici di analisi, l'analisi di autocorrelazione e l'analisi della varianza condizionale. Qual è il vantaggio dell'approccio qui descritto? L'uso dei modelli GARCH non lineari consente di rappresentare formalmente la serie analizzata dal punto di vista matematico e di creare una previsione per un numero specificato di passaggi.