English Русский 한국어 Türkçe
preview
Pubblica il codice del tuo articolo su MQL5 Algo Forge in 10 minuti: Una guida passo passo

Pubblica il codice del tuo articolo su MQL5 Algo Forge in 10 minuti: Una guida passo passo

MetaTrader 5 — Esempi |
13 5
MetaQuotes
MetaQuotes

Contenuto


Introduzione

Il tuo articolo è già stato pubblicato su MQL5? Quindi fai il passo successivo: trasforma il codice dell'articolo in un progetto completo su MQL5 Algo Forge. Non lasciare i file sorgente solo in un archivio. Spostali nel repository in modo che i lettori possano visualizzare la versione corrente del progetto, una struttura di file chiara, la cronologia delle modifiche e una descrizione precisa. Algo Forge è basato su Git, ma le principali azioni di Git sono già integrate nell'interfaccia di MetaEditor e il file README.md diventa la vetrina del progetto.


Preparazione dell'ambiente

Prepara le tue credenziali di accesso a MQL5, tutti i file dell'articolo e il file README.md completo. Non rimandare la pubblicazione del tuo progetto. Crealo ora, finché hai a portata di mano tutto il codice, le impostazioni e i materiali di supporto. 
Bastano pochi semplici passaggi per pubblicare il tuo progetto nel repository. Pubblicare il codice richiederà non più di 10 minuti e potrai dimenticarti degli archivi disordinati, poiché il tuo progetto verrà archiviato e aggiornato nel cloud.


Accesso

Apri MetaEditor. Vai su Strumenti -> Opzioni -> Community e assicurati di aver effettuato l'accesso con il tuo account MQL5. Senza questa autenticazione, MetaEditor non sarà in grado di funzionare con MQL5 Algo Forge.


1. Accedi a MetaEditor utilizzando il tuo nome utente e la password di mql5.com.


Creazione di un progetto

Apri la finestra del Navigatore. Individua la cartella Shared Projects. Fai clic con il pulsante destro del mouse e seleziona Nuovo progetto. Crea qui il tuo progetto: questo è il punto di accesso corretto ad Algo Forge da MetaEditor.

2. Crea un nuovo progetto nell'editor di codice.


Tipo di progetto

Seleziona una tipologia di progetto in base al contenuto dell'articolo:

  • Expert Advisor — se pubblichi un EA;
  • Indicatore personalizzato — se pubblichi un indicatore;
  • Script — se pubblichi uno script;
  • Servizio — se pubblichi un servizio;
  • Libreria — se pubblichi una libreria;
  • Vuoto — se l'articolo contiene molti file che devono essere compilati separatamente e hai bisogno di un modello vuoto.

In caso di dubbio, e se il progetto ha un solo file principale compilato, scegli il tipo corrispondente al file principale compilato. In questo modo, MetaEditor creerà immediatamente una comoda struttura di progetto.
Se un articolo contiene un insieme di file diversi che devono essere compilati separatamente, allora tale progetto dovrebbe essere inizialmente creato come Vuoto e poi popolato manualmente con i file necessari.

Se si crea un progetto non vuoto e vi si inseriscono, ad esempio, due o più script, solo uno di loro sarà in grado di compilare. Quando proviamo a compilare altri script, riceviamo un errore che indica che un file di questo tipo esiste già nel progetto.

3. Seleziona il tipo di progetto da creare in base al contenuto dell'articolo


Denominazione

Utilizza il nome che ti invieremo. Se non hai ancora un nome, usa uno schema di denominazione chiaro:

[Material type]-[article ID]-[Short topic]

Per esempio: Article-21732-Code-Tears-And-Algo-Forge. Questo nome collega immediatamente il progetto all'articolo e semplifica la navigazione.


File di progetto

Includi tutto ciò di cui il lettore ha bisogno per compilare, eseguire o testare il codice:

  • il file principale .mq5;
  • il file .mqh;
  • le librerie;
  • i file di preimpostazioni .set;
  • immagini;
  • file CSV, TXT e altri dati;
  • risorse aggiuntive utilizzate dal progetto.

Non limitarti a un singolo file principale. Se l'articolo si basa su un modulo, una risorsa o un set di impostazioni, assicurati di includerli anche nel progetto. Un progetto completo è sempre più utile al lettore di un archivio incompleto.

4. Riempi il progetto con i file dell'articolo


Organizzazione delle cartelle

Non mettere tutto insieme senza criterio. Organizza il progetto in modo che sia facile da consultare. Nella finestra Progetti, MetaEditor visualizza automaticamente i file in sezioni logiche: Sources, Headers, Resources, Settings e altri file, mostrando inoltre le dipendenze separatamente. Questo ordine consente di visualizzare immediatamente la posizione del codice principale, dei file di intestazione, delle risorse e dei file di servizio.

Se stai migrando un vecchio archivio, per prima cosa raccogli tutti i suoi file in una cartella di progetto ordinata, e poi collegali a MetaEditor. In questo modo non perderai nulla e non ti confonderai tra le diverse versioni.

5. Organizza i file nelle rispettive cartelle all'interno del progetto.


README

Prendi il file README.md già pronto che ti invieremo e posizionalo nella directory root del tuo progetto. Non inserirlo in sottocartelle. Il file README è ciò che introduce il progetto al lettore: spiega cos'è il codice, cosa è incluso nel progetto e da dove iniziare. Senza di esso, il repository appare come una raccolta di file senza nome.

6. Posiziona il file di descrizione del progetto README.md nella cartella root del progetto.


Codifica e compilazione

Prima di inviare, prenditi un minuto per controllare il tuo progetto:

  • tutti i file dell'articolo sono stati aggiunti;
  • il file .mq5 principale è presente;
  • il file README.md si trova nella root;
  • il progetto viene compilato senza errori;
  • i vecchi file di testo (se li trasferisci da un archivio) vengono salvati in formato UTF-8.
Non tralasciate l'ultimo punto. Questo è importante per i progetti pubblici: se la codifica non è corretta, la cronologia delle modifiche potrebbe non essere visualizzata correttamente.

7. Salvare tutti i file del progetto con codifica UTF-8


Se il progetto è costituito da un unico file principale compilato, la compilazione può essere eseguita facendo clic con il pulsante destro del mouse sul nome del progetto nella finestra del Navigatore e selezionando il comando Compila dal menu contestuale.
Se il progetto contiene più file compilati, ciascuno di essi deve essere compilato separatamente, altrimenti si verificherà un errore di compilazione.

8.1 Verificare che il progetto sia stato compilato correttamente.


8.2 Se ci sono molti file eseguibili da compilare, compilarli separatamente


Commit e sincronizzazione con Git

Aggiungi nuovi file a Git utilizzando il comando Git Add file/cartella, quindi fai clic su Git Commit. Scrivi un breve e chiaro messaggio di commit che indichi cosa hai aggiunto o aggiornato. Non lasciare vuoto questo campo. I commenti ben scritti aiutano sia te che i tuoi lettori a comprendere rapidamente la cronologia del progetto. 

In uno scenario tipico, questo passaggio è sufficiente: MetaEditor esegue il commit dello stato corrente del progetto e invia le modifiche al cloud. Se il progetto esiste già e stai continuando a lavorarci, esegui prima un Git Pull e poi aggiungi le tue modifiche. Questo ti aiuterà a evitare conflitti inutili tra le versioni locali e quelle cloud.

9.1 Prima di iniziare a lavorare su un progetto, scarica le modifiche dal repository


9.2 Al termine, invia le modifiche locali al repository


9.3 Assicurati di fornire un messaggio di commit per ogni commit



Modalità pubblica

Una volta che il progetto è pronto e sincronizzato, apri la sua versione web su Algo Forge e rendilo pubblico. Fino ad allora, può rimanere privato. Pubblica il tuo progetto solo dopo esserti assicurato che contenga tutto il codice, un file README e una struttura funzionante.

10. Se il progetto deve essere pubblico, deseleziona la casella "progetto privato".


Progetti multi-articolo

Se hai una serie di articoli su una singola libreria, un indicatore o un Expert Advisor, non caricare solo l'ultima versione senza fornire il contesto. Aggiungi le versioni in sequenza dal primo all'ultimo articolo e se necessario, crea le relative release nell'interfaccia web di Algo Forge. In questo modo, il lettore vedrà subito quale versione del progetto corrisponde a quale articolo.


11. Per ogni articolo della serie, creare una nuova release del repository per preservare la cronologia dello sviluppo del progetto.


Checklist

Prima di terminare, assicurati che:

  • il progetto sia stato creato in Shared Projects;
  • il nome del progetto è corretto;
  • tutti i file dell'articolo sono stati aggiunti;
  • La struttura del progetto è leggibile e non genera confusione;
  • il file README.md si trova nella root;
  • il progetto sia compilato;
  • le modifiche siano state committate e inviate ad Algo Forge;
  • se necessario, che il progetto sia aperto all'accesso del pubblico.

Conclusioni

Non inserire il codice dell'articolo come semplice appendice alla pubblicazione. Trasformalo in un progetto. Questo renderà i tuoi contenuti più utili, semplificherà la manutenzione, preserverà la cronologia delle revisioni e offrirà ai lettori un comodo punto di accesso al tuo lavoro. L'articolo spiega l’idea. Il progetto MQL5 Algo Forge mostra questa idea in azione.

Assicurati di studiare le seguenti fonti per una panoramica dettagliata di MQL5 Algo Forge:

Tradotto dal russo da MetaQuotes Ltd.
Articolo originale: https://www.mql5.com/ru/articles/22699

Ultimi commenti | Vai alla discussione (5)
Vladislav Boyko
Vladislav Boyko | 26 mag 2026 a 12:49

Именование

Utilizzate il nome che vi forniremo. Se non avete ancora un nome, seguite uno schema chiaro:

[Тип материала]-[ID статьи]-[Краткая тема]

Ad esempio: Article-21732-Code-Tears-And-Algo-Forge. Un nome di questo tipo collega immediatamente il progetto all'articolo e semplifica la navigazione.

Vi preghiamo di non renderlo uno standard obbligatorio per chi ha le proprie idee su come organizzare i repository.

La mia idea è questa. Ho creato un'organizzazione in cui saranno raccolti i repository relativi a una stessa serie di articoli. È come una "cartella" che raggruppa i repository collegati tra loro, aggiunge contesto e permette di dare ai repository nomi concisi. Si apre l’organizzazione e al suo interno sono raccolti in modo ordinato tutti i repository relativi alla serie di articoli (e solo quelli).

Vladislav Boyko
Vladislav Boyko | 26 mag 2026 a 12:58
[Тип материала]-[ID статьи]-[Краткая тема]

Ad esempio: Article-21732-Code-Tears-And-Algo-Forge. Un nome del genere collega immediatamente il progetto all’articolo e semplifica la navigazione.

La mia situazione è la seguente:

  • Un repository può essere sviluppato in sequenza in diversi articoli.
  • Un singolo articolo può coinvolgere più repository.

Pertanto, questo schema non mi va affatto bene.

L’idea in sé è buona e si adatta perfettamente alla maggior parte degli autori (credo). Chiedo però di consentire di non attenersi a questa regola, se una persona è in grado di spiegare in modo argomentato perché non fa al caso suo.

Vladislav Boyko
Vladislav Boyko | 26 mag 2026 a 13:15

Типизация

  • Vuoto — se nell'articolo ci sono molti file che devono essere compilati separatamente...

È possibile suddividerli in diversi repository (spesso).

È un'idea per chi ha abbastanza entusiasmo e disciplina da dedicarsi a questa attività.

Max Brown
Max Brown | 27 mag 2026 a 12:51
Questo mi aiuterà sicuramente a organizzarmi meglio d’ora in poi, e lo configurerò questo fine settimana.

Grazie
Rashid Umarov
Rashid Umarov | 27 mag 2026 a 14:23
Vladislav Boyko #:
Vi preghiamo di non renderlo uno standard obbligatorio per chi ha le proprie idee su come organizzare i repository.
Potete utilizzare il vostro schema, che rispecchi bene la struttura degli articoli/progetti
Arriva il Nuovo MetaTrader 5 e MQL5 Arriva il Nuovo MetaTrader 5 e MQL5
Questa è solo una panoramica di MetaTrader 5. Non posso descrivere tutte le nuove funzionalità del sistema per un periodo di tempo così breve: i test sono iniziati il 09.09.2009. Questa è una data simbolica e sono sicuro che sarà un numero fortunato. Sono passati alcuni giorni da quando ho ricevuto la versione beta del terminale MetaTrader 5 e MQL5. Non sono riuscito a provare tutte le sue funzionalità, ma sono già sorpreso.
Dal “Best Pass” a soluzioni robuste: Esplorazione della superficie di ottimizzazione in MetaTrader 5 Dal “Best Pass” a soluzioni robuste: Esplorazione della superficie di ottimizzazione in MetaTrader 5
L'articolo esamina un approccio ingegneristico all'ottimizzazione di un Expert Advisor in MetaTrader 5: dalla raccolta di metriche personalizzate tramite Optimization Frames all'analisi della superficie dei parametri. Un semplice modello EMA/RSI basato sugli eventi dimostra l'esportazione in formato CSV, lo smussamento e la valutazione della stabilità locale in Python. L'obiettivo è individuare aree di configurazione stabili e convalidarle tramite ottimizzazione forward per un'implementazione affidabile.
Utilizza i canali MQL5.community e le chat di gruppo Utilizza i canali MQL5.community e le chat di gruppo
Il sito web MQL5.com riunisce trader di tutto il mondo. Gli utenti pubblicano articoli, condividono codici gratuiti, vendono prodotti nel Market, offrono servizi da freelance e copiano segnali di trading. Puoi comunicare con loro sul Forum, nelle chat dei trader e nei canali MetaTrader.
Dalle matrici ai modelli: Come costruire una pipeline di machine learning in MQL5 ed esportarla nel formato ONNX Dalle matrici ai modelli: Come costruire una pipeline di machine learning in MQL5 ed esportarla nel formato ONNX
L'articolo descrive la configurazione di una pipeline di machine learning coordinata in MetaTrader 5 con separazione dei ruoli: Python addestra ed esporta il modello in ONNX, MQL5 riproduce la normalizzazione e la PCA tramite matrice/vettore ed esegue l'inferenza. Questo approccio rende stabili e verificabili i dati di input del modello, e lo strategy tester di MetaTrader 5 fornisce metriche per analizzare il comportamento del sistema.