Nuova MetaTrader 5 build 5572: Miglioramenti al Rendering dei Grafici e di ONNX

 

L'aggiornamento della piattaforma MetaTrader 5 sarà rilasciato Venerdì 30 Gennaio 2026.

In questa versione abbiamo migliorato il supporto ONNX in MQL5. Ora i modelli funzionano in modo notevolmente più veloce sulle GPU con supporto CUDA. Inoltre, abbiamo introdotto il supporto per nuovi flag e rivisto il flusso di lavoro della libreria: ONNX ora viene installato solo alla prima esecuzione di un programma che lo utilizza, anziché insieme alla piattaforma.

Abbiamo anche perfezionato il rendering del testo e degli oggetti analitici sui grafici per il motore Blend2D introdotto nell'aggiornamento precedente. Inoltre, questo aggiornamento apporta miglioramenti ai report di trading e alla stabilità dello Strategy Tester.

Anche la versione web della piattaforma ha ricevuto diversi miglioramenti. Quando si regolano i livelli di stop direttamente su un grafico, ora è possibile visualizzare un valore approssimativo di profitto o perdita in termini monetari. Abbiamo anche corretto la visualizzazione di alcuni dati di trading.

Nuova MetaTrader 5 Build 5572: Miglioramenti al Rendering dei Grafici e di ONNX


Terminale Client MetaTrader 5

  1. Terminale: Corretto il rendering del testo sui grafici negli ambienti macOS e Linux che usano Wine.
  2. Terminale: Corretto il disegno degli indicatori visualizzati come linee con colori variabili.
  3. Terminale: Corretto il rendering degli oggetti Etichetta di Testo e Pulsante .
  4. Terminale: Corretta la formattazione di alcune statistiche nei report di trading, che in precedenza potevano essere arrotondate in modo errato.
  5. Terminale: Calcolo rivisto di "Profitto Totale" e "Perdita Totale" nei report di trading. Questi valori ora includono commissioni e swap.
  6. Terminale: Corretto il salvataggio dello stato della barra degli strumenti per i grafici sganciati. Le barre degli strumenti nascoste potrebbero riapparire dopo il riavvio della piattaforma.
  7. Terminale: Corretto il caricamento delle impostazioni dello strumento di trading personalizzato da file JSON. In particolare, le impostazioni di swap, le sessioni di trading e i valori dei tick potrebbero essere importati in modo non corretto.
  8. Terminale: Aggiunta la visualizzazione dello strumento e del timeframe nel titolo della finestra quando si esegue uno script su un grafico.



    Aggiunta la visualizzazione dello strumento e del timeframe nel titolo della finestra quando si esegue uno script su un grafico.


  9. Terminale: Corretta la duplicazione degli strumenti di trading nel suggerimento visualizzato durante la ricerca di strumenti nel Market Watch.
  10. Terminale: Corretto il rendering dei caratteri Wingdings sui grafici.
  11. Terminale: Corretto il rendering degli indicatori visualizzati come candele colorate (DRAW_COLOR_CANDLES) e linee colorate (DRAW_COLOR_LINE).
  12. Terminale: Aggiunto l'output di un messaggio di log che indica che il server del broker sta eseguendo una versione obsoleta. Se la versione del server è inferiore a 5200, rilasciata sei mesi fa, verrà visualizzato un avviso:
    outdated server build - must be at least 5200, contact your broker please
    Il messaggio viene visualizzato solo a scopo informativo e non influisce sulla possibilità di connettersi al server.

  13. MQL5: La libreria ONNX ora viene caricata alla prima esecuzione di un programma MQL5 che utilizza ONNX, anziché con la piattaforma. Gli aggiornamenti della libreria avvengono automaticamente.
  14. MQL5: Aggiunto il supporto CUDA per ONNX. Se la vostra scheda grafica supporta questa tecnologia, le prestazioni di inferenza del modello saranno notevolmente migliorate. Si consiglia vivamente di aggiornare i driver NVIDIA per migliorare la stabilità e le prestazioni.
    Le autorizzazioni all'uso di CUDA possono essere gestite nelle impostazioni della piattaforma: 


    Gestione CUDA nelle impostazioni della piattaforma


  15. MQL5: Flag aggiornati nell'enumerazione ENUM_ONNX_FLAGS. Questi flag vengono utilizzati durante la creazione e l'esecuzionedei modelli ONNX:

    Log
    Invece del deprecato ONNX_DEBUG_LOGS, ora vengono utilizzati i seguenti flag di log:

    • ONNX_LOGLEVEL_VERBOSE — registra tutti i messaggi.
    • ONNX_LOGLEVEL_INFO — registra messaggi informativi, avvisi ed errori. Sostituisce il deprecato ONNX_DEBUG_LOGS.
    • ONNX_LOGLEVEL_WARNING — registra avvisi ed errori. Utilizzato per impostazione predefinita.
    • ONNX_LOGLEVEL_ERROR — registra solo gli errori.

    Gestione CUDA e GPU
    Il flag ONNX_CUDA_DISABLE è stato rimosso. Utilizzare invece il nuovo flag ONNX_USE_CPU_ONLY. Se abilitata, per l'esecuzione del modello verrà utilizzata solo la CPU.

    Sono stati aggiunti flag per selezionare il dispositivo GPU su cui verrà eseguito il modello:

    • ONNX_GPU_DEVICE_0
    • ONNX_GPU_DEVICE_1
    • ONNX_GPU_DEVICE_2
    • ONNX_GPU_DEVICE_3
    • ONNX_GPU_DEVICE_4
    • ONNX_GPU_DEVICE_5
    • ONNX_GPU_DEVICE_6
    • ONNX_GPU_DEVICE_7

    Utilizzare questi flag se il sistema dispone di due o più dispositivi compatibili con CUDA. Se vengono specificati più flag, verrà selezionato il dispositivo con l'indice più basso.

    Profilazione del Modello
    Abbiamo aggiunto il flag ONNX_ENABLE_PROFILING per abilitare la profilazione del modello ONNX.

    Quando un modello viene avviato con questo flag abilitato, verrà creato un file di report di profilazione con il nome: [nome file EX5]_[data]_[ora].json nella cartella /MQL5/Files/OnnxProfileReports/.

  16. MQL5: Aumentato il limite dei file che possono essere inclusi in un programma come risorsa. Il nuovo limite è di 1 GB e consente di includere nei progetti modelli ONNX di grandi dimensioni. 
  17. MQL5: Migliorata la stabilità delle operazioni OpenCL .
  18. MQL5: Aggiunto il metodo ReplaceToZero. Sostituisce i valori piccoli in una matrice/vettore con valori zero e restituisce il numero di elementi sostituiti.
  19. MQL5: Aggiunti nuovi metodi OpenBLAS :

    • FactorizationLDLComplexSyRaw — calcola la fattorizzazione di una matrice complessa utilizzando il metodo di pivoting diagonale di Bunch-Kaufman.
    • LDLComplexSyLinearEquationsSolution — risolve un sistema di equazioni lineari A * X = B con una matrice indefinita simmetrica complessa utilizzando la fattorizzazione A = U**T * D * U o A = L * D * L**T calcolata da FactorizationLDLComplexSyRaw, con più lati destri.
    • LDLComplexSyInverse — calcola l'inversa di una matrice indefinita simmetrica complessa utilizzando la fattorizzazione A = U**T * D * U o A = L * D * L**T calcolata da FactorizationLDLComplexSyRaw.
    • LDLComplexSyCondNumReciprocal — stima il reciproco del numero di condizionamento di una matrice Hermitiana indefinita simmetrica o complessa reale A, utilizzando la fattorizzazione LDLT calcolata da FactorizationLDLRaw.

  20. MQL5: Aggiunta della funzione ColorToPRGB. Converte il tipo di colore in uint per ottenere una rappresentazione del colore PRGB. Questo formato viene utilizzato per la creazione di risorse grafiche, per il rendering del testo e nella classe CCanvas della libreria standard quando si lavora con il formato di colore COLOR_FORMAT_ARGB_RAW.
    uint  ColorToPRGB(
       color  clr,          // the color to be converted, in 'color' format
       uchar  alpha=255     // the alpha channel that controls color transparency
    );
    Il colore PRGB viene calcolato con la seguente formula:
    R = R * A / 255
    G = G * A / 255
    B = B * A / 255
    A = A
  21. MQL5: Corretta l’impostazione del testo programmatico per gli oggetti OBJ_LABEL, OBJ_TEXT, OBJ_BUTTON e OBJ_EDIT . Il testo potrebbe non essere visualizzato in determinate condizioni.
  22. MQL5: Corretta l'impostazione dei colori per gli oggetti grafici utilizzando ObjectSetInteger. Il valore clrNONE poteva essere ignorato in precedenza.
  23. MQL5: Corretto il blocco della funzione Bars quando non è disponibile lo storico dei prezzi sul server.
  24. MQL5: Corretta la ricerca di variabili globali negli ambiti. In precedenza, le variabili all'interno di un namespace non potevano avere gli stessi nomi delle variabili di livello globale.
  25. MQL5: Corretto il funzionamento dell'attributo final. Il tentativo di sovrascrivere una funzione contrassegnata come "final" ora produce correttamente un errore del compilatore.
  26. MQL5: Corretti i falsi avvisi del compilatore che si verificavano quando si usavano dichiarazioni forward di funzioni inclusi in file *.mqh senza la direttiva #import. Il compilatore ora gestisce correttamente tali dichiarazioni e non richiede #import se le funzioni non sono importate da una DLL.

    Esempio

    File utils.mqh: 
    // Function forward declaration
    double CalcLot(double risk, double stop);
    File expert.mq5:
    #include "utils.mqh"
    
    double CalcLot(double risk, double stop)
      {   
       return risk / stop;
      }
    In precedenza, il compilatore poteva emettere un avviso che segnalava la mancanza della direttiva #import per la funzione CalcLot in utils.mqh, anche se la funzione è definita dall'utente e implementata nel codice del progetto. Tale codice ora viene compilato senza avvertimenti. La direttiva #import è necessaria solo per le funzioni effettivamente importate da DLL esterne. 

  27. MetaEditor: Risolti gli errori di memoria insufficiente quando si lavora con file sorgente di grandi dimensioni (megabyte).
  28. MetaEditor: Corretta la visualizzazione dei valori e dei nomi delle enumerazioni nella Watch window durante il debug.
  29. Tester: Corretta l'interruzione dei test per i cicli degli Expert Advisor. Anche con cicli infiniti, premendo "Stop" ora l'esecuzione si interrompe immediatamente.
  30. Tester: Corretta la chiamata EventChartCustom durante il test visivo. In precedenza, l'evento poteva essere inviato per errore due volte.
  31. Tester: Corretto il controllo del livello di congelamento (SYMBOL_TRADE_FREEZE_LEVEL) quando si eliminano ordini pendenti appena inseriti.
  32. Tester: Corretta l'esportazione dei dati dei test di previsione (forward-testing). Quando si esportava un test che non utilizzava la modalità forward, a volte potevano essere salvati i dati dei forward test precedenti.
  33. Traduzioni dell'interfaccia utente aggiornate.

Terminale Web MetaTrader 5

  1. Aggiunta la visualizzazione del profitto/perdita approssimativo in denaro quando si imposta Stop Loss o Take Profit sul grafico.


    Aggiunta visualizzazione del profitto/perdita approssimativo in denaro


  2. Corretta la visualizzazione delle specifiche dei simboli per gli strumenti con caratteri speciali.
  3. Corretta la visualizzazione dei prezzi negativi nelle finestre di dialogo dei trade.
  4. Corretta la visualizzazione delle metriche finanziarie del conto nei casi in cui la valuta del deposito ha una precisione superiore a due cifre decimali.


L'aggiornamento sarà disponibile tramite Live Update.

 
l'errore 539 continua ad essere presente per gli indicatori creati in precedenza, non risolto!
 
Matteo Appella # :
l'errore 539 continua ad essere presente per gli indicatori creati in precedenza, non risolto!
Ricompilare l'indicatore o chiedere all'autore di farlo.
 
Alain Verleyen #:
Ricompilare l'indicatore o chiedere all'autore di farlo.
ok, con la ricompilazione funziona correttamente! thx
 
Dati storici spariti completamente dopo questo aggiornamento, se esegui backtest dati reali mi da 0% storico. Come mai? 
 

Forum sul trading, sistemi di trading automatizzati e test di strategie di trading

MT5 completamente rovinato dopo il recente aggiornamento

Alain Verleyen , 4.02.2026 13:50

È necessario utilizzare la versione precedente 5430 o l'ultima beta 5574, in cui tutti questi errori sono stati corretti.
Oppure attendere il lancio ufficiale, che dovrebbe avvenire a breve.

https://www.mql5.com/es/forum/502088

Per la versione beta più recente, vai al menu Aiuto -> Controlla aggiornamenti.

Se riscontri ancora problemi con 5574, pubblica i dettagli tecnici al riguardo (codice sorgente se possibile, record, screenshot...).