Articoli con esempi di programmazione in MQL5

icon

Accedi a una vasta collezione di articoli con esempi di codice che spiegano come creare indicatori e robot di trading per la piattaforma MetaTrader nel linguaggio MQL5. I codici sorgente sono collegati agli articoli, in modo da poterli aprire in MetaEditor ed eseguirli per vedere come funzionano le applicazioni.

Questi articoli saranno utili sia per coloro che hanno appena iniziato ad esplorare il trading automatizzato sia per i trader professionisti più esperti di programmazione. Non presentano solo esempi, ma contengono anche nuove idee.

Aggiungi un nuovo articolo
più recente | il migliore
preview
Operazioni con matrici e vettori in MQL5

Operazioni con matrici e vettori in MQL5

Le matrici e i vettori sono stati introdotti in MQL5 per un’operatività efficiente con soluzioni matematiche. I nuovi tipi offrono metodi integrati per creare codice conciso e comprensibile, vicino alla notazione matematica. Gli array offrono ampie possibilità, ma ci sono molti casi in cui le matrici sono molto più efficienti.
Visualizza questo! Libreria grafica di MQL5 simile a 'plot' del linguaggio R
Visualizza questo! Libreria grafica di MQL5 simile a 'plot' del linguaggio R

Visualizza questo! Libreria grafica di MQL5 simile a 'plot' del linguaggio R

Quando si studia la logica del trading, la rappresentazione visiva sotto forma di grafici è di grande importanza. Alcuni linguaggi di programmazione popolari tra la comunità scientifica (come R e Python) dispongono della speciale funzione "plot" utilizzata per la visualizzazione. Permette di disegnare linee, distribuzioni di punti e istogrammi per visualizzare i modelli. In MQL5, è possibile fare lo stesso utilizzando la classe CGraphics.
preview
Scienza dei dati e apprendimento automatico (Parte 03): Regressioni a matrice

Scienza dei dati e apprendimento automatico (Parte 03): Regressioni a matrice

Questa volta i nostri modelli sono realizzati da matrici, il che ci permette flessibilità e consente di creare modelli potenti che possono gestire non solo cinque variabili indipendenti ma anche molte variabili finché restiamo entro i limiti di calcolo di un computer, questo articolo sarà una lettura interessante, questo è sicuro.
preview
Cosa è possibile fare con le Medie Mobili

Cosa è possibile fare con le Medie Mobili

L'articolo prende in considerazione diversi metodi di applicazione dell'indicatore Media Mobile. Ogni metodo che riguarda l'analisi di un processo è accompagnato da indicatori che ne visualizzano l'idea. Nella maggior parte dei casi, le idee mostrate qui appartengono ai loro rispettivi autori. Il mio unico compito era quello di riunirli per farvi vedere gli approcci principali e, si spera, prendere decisioni più ragionevoli nel trading. Livello di competenza MQL5 — base.
preview
Indicatori multipli su un grafico (Parte 03): Sviluppo di definizioni per gli utenti

Indicatori multipli su un grafico (Parte 03): Sviluppo di definizioni per gli utenti

Oggi aggiorneremo per la prima volta la funzionalità del sistema di indicatori. Nel precedente articolo "Indicatori multipli su un grafico" abbiamo esaminato il codice di base che permette di utilizzare più di un indicatore in una sottofinestra del grafico. Quanto ho presentato è però solo la base di partenza di un sistema molto più ampio.
preview
Indicatori multipli su un grafico (parte 01): Comprendere i concetti

Indicatori multipli su un grafico (parte 01): Comprendere i concetti

Oggi impareremo come aggiungere più indicatori in esecuzione simultanea su un grafico, ma senza occupare un'area separata. Molti trader si sentono più sicuri se monitorano più indicatori alla volta (ad esempio, RSI, STOCASTIC, MACD, ADX e altri), o in alcuni casi anche i diversi asset di cui è composto un indice.
preview
Stoploss Fisso sulla PriceAction o RSI Fisso (StopLoss Intelligente)

Stoploss Fisso sulla PriceAction o RSI Fisso (StopLoss Intelligente)

Lo stop loss è uno strumento importante quando si tratta di gestione del denaro nel trading. L'uso efficace di stop-loss, take profit e dimensione del lotto può rendere un trader più costante nel trading e nel complesso più redditizio. Sebbene lo stop-loss sia un ottimo strumento, ci sono delle sfide che si incontrano quando viene utilizzato. La principale è la caccia allo stop loss. Questo articolo esamina come ridurre gli effetti della caccia allo stop loss nel trading e confrontarlo con il classico utilizzo dello stop loss per determinarne la redditività.
Programmatore Migliore (Parte 06): 9 abitudini che portano a una codifica efficace
Programmatore Migliore (Parte 06): 9 abitudini che portano a una codifica efficace

Programmatore Migliore (Parte 06): 9 abitudini che portano a una codifica efficace

Non si tratta sempre di scrivere il codice che porta a una codifica efficace. Ci sono alcune abitudini che ho trovato nella mia esperienza che portano a una codifica efficace. Ne discuteremo alcuni in dettaglio in questo articolo. Questo è un articolo da leggere per ogni programmatore che vuole migliorare la propria capacità di scrivere algoritmi complessi con meno problemi.
Programmatore migliore (Parte 05): Come diventare uno sviluppatore più veloce
Programmatore migliore (Parte 05): Come diventare uno sviluppatore più veloce

Programmatore migliore (Parte 05): 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ù veloce ed efficace non è un tipo di abilità speciale con cui solo poche persone sono nate. È un'abilità che può essere appresa, questo è ciò che sto cercando di insegnare in questo articolo.
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 MQL5: Ordini ОСО
Manuale MQL5: Ordini ОСО

Manuale MQL5: Ordini ОСО

L'attività di trading di qualsiasi trader comporta vari meccanismi e interrelazioni, comprese le relazioni tra gli ordini. Questo articolo suggerisce una soluzione per l'elaborazione degli ordini OCO. Le classi di libreria standard sono ampiamente coinvolte, e vengono creati nuovi tipi di 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

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.
Studiare la classe CCanvas. Come disegnare oggetti trasparenti
Studiare la classe CCanvas. Come disegnare oggetti trasparenti

Studiare la classe CCanvas. Come disegnare oggetti trasparenti

La solida grafica scomoda delle medie mobili non ti va più bene? Vuoi disegnare qualcosa di più bello di un semplice rettangolo riempito di colore nel tuo terminale? Puoi disegnare una grafica più accattivante nel tuo terminale. Questo può essere implementato tramite la classe CСanvas, che viene utilizzata per creare grafiche personalizzate. Con questa classe è possibile implementare la trasparenza, fondere i colori e produrre l'illusione della trasparenza mediante la sovrapposizione e la fusione dei colori.
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à.
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.
Manuale MQL5: Gestione di BookEvent
Manuale MQL5: Gestione di BookEvent

Manuale MQL5: Gestione di BookEvent

Questo articolo parla di BookEvent - un evento Depth of Market e il principio della sua elaborazione. Un programma MQL che serve a gestire gli stati di Depth of Market, servirà da esempio. È scritto utilizzando l'approccio orientato agli oggetti. I risultati della gestione vengono visualizzati sullo schermo come un pannello e livelli di Depth of Market.
Manuale MQL5: Gestione di eventi grafici personalizzati
Manuale MQL5: Gestione di eventi grafici personalizzati

Manuale MQL5: Gestione di eventi grafici personalizzati

Questo articolo prende in considerazione gli aspetti della progettazione e dello sviluppo del sistema di eventi grafici personalizzati nell'ambiente MQL5. Qui è possibile trovare anche un esempio di approccio alla classificazione degli eventi, nonché un codice di programma per una classe di eventi e una classe di gestori di eventi personalizzati.
Manuale MQL5: Elaborazione dell'evento TradeTransaction
Manuale MQL5: Elaborazione dell'evento TradeTransaction

Manuale MQL5: Elaborazione dell'evento TradeTransaction

Questo articolo considera le capacità del linguaggio MQL5 dal punto di vista della programmazione event-driven. Il più grande vantaggio di questo approccio è che il programma può ricevere informazioni sull'attuazione graduale di un'operazione di trading. L'articolo contiene anche un esempio di ricezione ed elaborazione di informazioni sull'operazione di trading in corso utilizzando il gestore dell'evento TradeTransaction. A mio parere, un tale approccio può essere utilizzato per copiare le offerte da un terminale all'altro.
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.
Suggerimenti per una presentazione efficace del prodotto sul Market
Suggerimenti per una presentazione efficace del prodotto sul Market

Suggerimenti per una presentazione efficace del prodotto sul Market

Per vendere programmi ai trader in modo efficace, non basta solo creare un prodotto efficiente e utile e pubblicarlo sul Market. È fondamentale fornire una descrizione completa e dettagliata e allegare le giuste illustrazioni. Un logo di qualità e i giusti screenshot sono importanti come la fase di codifica vera e propria Ricorda questa formula semplice: nessun download = nessuna vendita.
Come preparare un Account di trading per la migrazione sull'Hosting Virtuale
Come preparare un Account di trading per la migrazione sull'Hosting Virtuale

Come preparare un Account di trading per la migrazione sull'Hosting Virtuale

Il terminale cliente MetaTrader è perfetto per automatizzare le strategie di trading. Possiede tutti gli strumenti necessari per gli sviluppatori di trading robot ‒ potente linguaggio di programmazione MQL4/MQL5 basato su C++, comodo ambiente di sviluppo MetaEditor e tester di strategia multi-thread che supporta il calcolo distribuito in MQL5 Cloud Network. In questo articolo scoprirai come trasferire il tuo terminale cliente verso l’ambiente virtuale mantenendo tutti gli elementi personalizzati.
Indicatore per la costruzione di un grafico Three Line Break
Indicatore per la costruzione di un grafico Three Line Break

Indicatore per la costruzione di un grafico Three Line Break

Questo articolo è dedicato al grafico Three Line Break, suggerito da Steve Nison nel suo libro "Beyond Candlesticks". Il più grande vantaggio di questo grafico è che consente di filtrare le fluttuazioni minori di un prezzo rispetto al movimento precedente. Discuteremo il principio della costruzione del grafico, il codice dell'indicatore e alcuni esempi di strategie di trading basate su di esso.
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.
Indicatore per la creazione di grafici Renko
Indicatore per la creazione di grafici Renko

Indicatore per la creazione di grafici Renko

L'articolo descrive un esempio di creazione di grafici Renko e la sua implementazione in MQL5 come indicatore. Le modifiche di questo indicatore lo distinguono da un grafico classico. Può essere costruito sia nella finestra dell'indicatore che sul grafico principale. Inoltre, c'è l'indicatore ZigZag. Puoi trovare alcuni esempi dell'implementazione del grafico.
MQL5 Cookbook - Consulente esperto multi-valuta e il lavoro con ordini in sospeso in MQL5
MQL5 Cookbook - Consulente esperto multi-valuta e il lavoro con ordini in sospeso in MQL5

MQL5 Cookbook - Consulente esperto multi-valuta e il lavoro con ordini in sospeso in MQL5

Questa volta creeremo un Expert Advisor multi-valuta con un algoritmo di trading basato sul lavoro con gli ordini in sospeso Buy Stop e Sell Stop. Questo articolo considera le seguenti questioni: fare trading in un intervallo di tempo specificato, inserire/modificare/eliminare ordini in sospeso, verificare se l'ultima posizione è stata chiusa a Take Profit o Stop Loss e controllo della cronologia delle operazioni per ciascun simbolo.
Manuale MQL5: Sviluppo di un indicatore multi-simbolo per l’analisi della divergenza dei prezzi
Manuale MQL5: Sviluppo di un indicatore multi-simbolo per l’analisi della divergenza dei prezzi

Manuale MQL5: Sviluppo di un indicatore multi-simbolo per l’analisi della divergenza dei prezzi

In questo articolo, considereremo lo sviluppo di un indicatore multi-simbolo per analizzare la divergenza dei prezzi in un determinato periodo di tempo. Gli argomenti principali sono già stati discussi nel precedente articolo sulla programmazione degli indicatori multi-valuta "MQL5 Cookbook: Sviluppo di un indicatore di volatilità multi-simbolo in MQL5". Quindi questa volta ci soffermeremo solo su quelle nuove caratteristiche e funzioni che sono state cambiate radicalmente. Se sei un neofita della programmazione di indicatori multi-valuta, ti consiglio di leggere prima l'articolo precedente.
Forum sulla programmazione MQL5 Liste
Forum sulla programmazione MQL5 Liste

Forum sulla programmazione MQL5 Liste

La nuova versione del linguaggio di programmazione per lo sviluppo di strategie di trading, MQL [MQL5], fornisce funzionalità più potenti ed efficaci rispetto alla versione precedente [MQL4]. Il vantaggio risiede essenzialmente nelle funzionalità di programmazione orientata agli oggetti. Questo articolo esamina la possibilità di utilizzare tipi di dati personalizzati complessi, come nodi ed elenchi. Fornisce inoltre un esempio di utilizzo delle liste nella programmazione pratica in MQL5.
Indicatore per Kagi Charting
Indicatore per Kagi Charting

Indicatore per Kagi Charting

L'articolo presenta l'indicatore grafico Kagi con varie opzioni per la creazione di grafici e funzioni aggiuntive. Inoltre, vengono considerati il principio del grafico dell'indicatore e le sue funzionalità di implementazione MQL5. Vengono visualizzati i casi più popolari della sua implementazione nel trading: strategia di scambio Yin / Yang, allontanandosi dalla linea di tendenza e aumentando costantemente le "spalle" / diminuendo la "vita".
Creazione di un Multi-Currency Multi-System Expert Advisor
Creazione di un Multi-Currency Multi-System Expert Advisor

Creazione di un Multi-Currency Multi-System Expert Advisor

L'articolo introduce una struttura per un Expert Advisor che scambia più simboli e utilizza diversi sistemi di trading contemporaneamente. Se hai già identificato i parametri di input ottimali per tutti i tuoi EA e hai ottenuto buoni risultati di backtesting per ciascuno di essi separatamente, chiediti quali risultati otterresti se testassi tutti gli EA contemporaneamente, con tutte le tue strategie messe insieme.
MQL5 Cookbook: Sviluppo di un indicatore di volatilità multi-simbolo in MQL5
MQL5 Cookbook: Sviluppo di un indicatore di volatilità multi-simbolo in MQL5

MQL5 Cookbook: Sviluppo di un indicatore di volatilità multi-simbolo in MQL5

In questo articolo, considereremo lo sviluppo di un indicatore di volatilità multi-simbolo. Lo sviluppo di indicatori multi-simbolo può presentare alcune difficoltà per gli sviluppatori MQL5 alle prime armi che questo articolo aiuta a chiarire. Le principali questioni che sorgono nel corso dello sviluppo di un indicatore multi-simbolo hanno a che fare con la sincronizzazione dei dati di altri simboli rispetto al simbolo corrente, con la mancanza di alcuni dati indicatori e con l'identificazione dell'inizio di barre "vere" di un determinato intervallo di tempo. Tutti questi problemi saranno attentamente considerati nell'articolo.
Manuale MQL5: Controlli della finestra secondaria degli indicatori - Barra di scorrimento
Manuale MQL5: Controlli della finestra secondaria degli indicatori - Barra di scorrimento

Manuale MQL5: Controlli della finestra secondaria degli indicatori - Barra di scorrimento

Continuiamo ad esplorare i vari controlli e questa volta rivolgiamo la nostra attenzione alla barra di scorrimento. Proprio come nel precedente articolo intitolato "Manuale MQL5: Controlli della finestra secondaria dell'indicatore - Pulsanti", tutte le operazioni verranno eseguite nella finestra secondaria dell'indicatore. Prenditi un momento per leggere l'articolo sopra menzionato in quanto fornisce una descrizione dettagliata dell'utilizzo degli eventi nella funzione OnChartEvent(). Questo argomento verrà solo menzionato in questo articolo. A scopo illustrativo, questa volta creeremo una barra di scorrimento verticale per un ampio elenco di tutte le proprietà degli strumenti finanziari che possono essere ottenute utilizzando le risorse MQL5.