Nuova versione della piattaforma MetaTrader 5 build 3260: operazioni in blocco, funzioni di matrice e vettori e miglioramenti della chat

 

La versione della piattaforma MetaTrader 5 aggiornata verrà rilasciata venerdì, 15 aprile, 2022.

Nella nuova versione, abbiamo aggiunto un set di comandi per la chiusura di posizioni in blocco e le operazioni di annullamento degli ordini pendenti. Ora, le azioni rilevanti possono essere eseguite con un paio di clic del mouse.

Abbiamo anche ampliato le capacità del linguaggio MQL5. L'aggiornamento fornisce nuove funzioni di matrice e vettore, nonché metodi di matrice e stringa integrati.

Nuova versione della piattaforma MetaTrader 5 build 3260: operazioni in blocco, funzioni di matrice e vettori e miglioramenti della chat

Inoltre, abbiamo migliorato le chat integrate. Ora, le chat supportano la citazione e la combinazione di messaggi contenenti testo, immagini e allegati.

In aggiunta, abbiamo implementato molteplici correzioni e miglioramenti nei processi di acquisto dei servizi MQL5 e abbiamo ottimizzato il sistema grafico del terminale.

Queste modifiche, insieme ad altre nuove funzionalità della versione aggiornata della piattaforma MetaTrader 5, sono descritte in dettaglio di seguito:


  1. Terminale: Aggiunti comandi per la chiusura in blocco delle posizioni e la cancellazione degli ordini pendenti.

    È stato aggiunto il nuovo comando 'Operazioni in blocco' al menu contestuale della scheda Trade. L'elenco dei comandi disponibili viene formato automaticamente, a seconda dell'operazione selezionata e del tipo di account.


    Chiusura di posizioni in blocco e cancellazione dell'ordine


    Nel menu sono sempre disponibili i seguenti comandi:

    • Chiusura di tutte le posizioni Sui conti di hedging, il sistema tenta di chiudere le posizioni contrapposte (Close By), quindi chiude le posizioni rimanenti seguendo una procedura regolare.
    • Chiudi tutte le posizioni redditizie o in perdita
    • Elimina tutti gli ordini pendenti
    • Elimina gli ordini pendenti di determinati tipi: Limit, Stop, Stop Limit

    Se si seleziona una posizione, nel menu vengono visualizzati comandi aggiuntivi:

    • Chiudi tutte le posizioni per il simbolo
    • Chiudi tutte le posizioni nella stessa direzione (su conti di hedging)
    • Chiudi posizioni opposte per lo stesso simbolo (su conti di hedging)
    • Inversione di posizione (su conti di netting)

    Se selezioni un ordine pendente, nel menu vengono visualizzati comandi aggiuntivi:

    • Elimina tutti gli ordini pendenti per lo stesso simbolo
    • Elimina tutti gli ordini pendenti dello stesso tipo per lo stesso simbolo

    Questi comandi sono disponibili solo se Trading con un click è abilitato nelle impostazioni della piattaforma: Attrezzi \ Opzioni Compravendita.
  2. Terminale: Migliorate caratteristiche interne del grafico:

    • Aggiunta la possibilità di rispondere ai messaggi. Il testo del messaggio di origine sarà citato nella risposta.
    • Aggiunta la possibilità di creare messaggi con diversi tipi di contenuto, come immagini con testo e testo con allegati, tra gli altri.
    • Corretta la visualizzazione del separatore tra messaggi letti e non letti.
    • Correzioni di errori e miglioramenti della stabilità.




  3. Terminale: Funzionamento ottimizzato e accelerato del sistema grafico del terminale. Il rendering dell'interfaccia richiederà meno risorse.
  4. Terminale: Corretto il calcolo delle variazioni di prezzo giornaliere per i futures. Se il broker fornisce un prezzo di compensazione, questo prezzo verrà utilizzato per i calcoli.
    ((Ultimo - Prezzo di compensazione)/Prezzo di compensazione)*100
    Una descrizione dettagliata di tutti i tipi di calcolo è disponibile nella Documentazione.

  5. Terminale: Risolti errori durante gli acquisti del servizio MQL5:

    • I sistemi di pagamento potrebbero restituire errori per operazioni riuscite in determinate condizioni.
    • Un prezzo errato potrebbe essere visualizzato nelle fasi intermedie di noleggio del prodotto nel Market.

  6. Terminale: Corretto il funzionamento del pulsante "Avvio" nella pagina del prodotto Market acquistato/scaricato. Ora il pulsante avvia correttamente l'applicazione sul primo grafico aperto.
  7. Terminale: Corretta la contabilizzazione di alcuni tipi di operazioni durante la generazione dello storico operazioni.
  8. MQL5: Aggiunte nuove funzioni per lavorare con matrici e vettori:

    • Median — restituisce la mediana della matrice o degli elementi vettoriali
    • Quantile — restituisce il q-esimo quantile di elementi matrice/vettoriali o elementi lungo l'asse specificato
    • Percentile — restituisce il q-esimo percentile di elementi di matrice/vettore o elementi lungo l'asse specificato
    • Std — calcola la deviazione standard degli elementi di matrice o vettore
    • Var — calcola la varianza di elementi di matrice o vettore
    • CorrCoef — calcola il coefficiente di correlazione matrice/vettore
    • Correlate — calcola la correlazione incrociata di due vettori
    • Convolve — restituisce la convoluzione lineare e discreta di due vettori
    • Cov — calcola la matrice di covarianza

  9. MQL5: Abbiamo iniziato ad aggiungere metodi integrati per gli array numerici. I nuovi metodi migliorano l'usabilità, aumentano la compattezza del codice e migliorano la compatibilità del codice con altri linguaggi.

    Sono già disponibili i tre metodi seguenti:

    • ArgSort — ordina gli array in base alla dimensione specificata; l'ultimo viene utilizzato per impostazione predefinita (asse=-1).
    • Range — restituisce il numero di elementi nella dimensione della matrice specificata. Analogico di ArrayRange.
    • Size — restituisce il numero di elementi dell'array. Analogo di ArraySize.

    Esempio:
    void OnStart()
      {
       int arr[4][5]=
         {
            {22, 34, 11, 20,  1},
            {10, 36,  2, 12,  5},
            {33, 37, 25, 13,  4},
            {14,  9, 26, 21, 59}
         };
       ulong indexes[4][5];
    //--- Sort the array
       arr.ArgSort(indexes,-1,0);
       Print("indexes");  
       ArrayPrint(indexes);
      }
    
    // Result log:
    // indexes
    //     [,0][,1][,2][,3][,4]
    // [0,]   4   2   3   0   1
    // [1,]   2   4   0   3   1
    // [2,]   4   3   2   0   1
    // [3,]   1   0   3   2   4

  10. MQL5: Abbiamo iniziato ad aggiungere metodi integrati per stringhe.

    Sono attualmente disponibili i seguenti metodi:

    • BufferSize — restituisce la dimensione del buffer allocata per la stringa.
    • Compare — confronta due stringhe e restituisce il risultato del confronto come numero intero.
    • Length — restituisce il numero di caratteri in una stringa.
    • Find — ricerca una sottostringa in una stringa.
    • Upper — capitalizza una stringa.
    • Lower — converte una stringa in minuscolo.
    • Replace — sostituisce una sottostringa.
    • Reserve — riserva un buffer per una stringa.

    Tutti i metodi sono analoghi alle funzioni stringa.

      Esempio:
      void OnStart()
        {
         string test="some string";
         PrintFormat("String length is %d",test.Length());
        }
      
      // Result log:
      // String length is 11
    • MQL5: Aggiunto il valore SYMBOL_SUBSCRIPTION_DELAY nell'enumerazione ENUM_SYMBOL_INFO_INTEGER per il ritardo nella consegna delle quotazioni per simboli specifici.

      Viene utilizzato solo per i simboli di trading basati su abbonamento. Il ritardo è solitamente applicabile ai dati forniti in modalità di prova.

      La proprietà può essere richiesta solo per i simboli selezionati nel Market Watch. In caso contrario, verrà restituito l'errore ERR_MARKET_NOT_SELECTED (4302).

    • MQL5: aggiunta la proprietà ACCOUNT_HEDGE_ALLOWED nell'enumerazione ENUM_ACCOUNT_INFO_INTEGER — abilita l'apertura di posizioni opposte e ordini pendenti. La proprietà viene utilizzata solo per i conti di hedging per ottemperare a specifici requisiti normativi, secondo i quali un conto non può avere posizioni opposte per lo stesso simbolo, mentre sono consentite posizioni nella stessa direzione.

      Se questa opzione è disabilitata, i conti non possono avere posizioni e ordini di direzione opposta per lo stesso strumento finanziario. Ad esempio, se l'account ha una posizione di acquisto, l'utente non può aprire una posizione di vendita o effettuare un ordine di vendita pendente. Se l'utente tenta di eseguire tale operazione, verrà restituito l'errore TRADE_RETCODE_HEDGE_PROHIBITED.

    • MQL5: Nuove proprietà nell'enumerazione ENUM_SYMBOL_INFO_DOUBLE:

      • SYMBOL_SWAP_SUNDAY
      • SYMBOL_SWAP_MONDAY
      • SYMBOL_SWAP_TUESDAY
      • SYMBOL_SWAP_WEDNESDAY
      • SYMBOL_SWAP_THURSDAY
      • SYMBOL_SWAP_FRIDAY
      • SYMBOL_SWAP_SATURDAY

      Usa i valori per ottenere i tassi di calcolo dello swap per giorni specifici della settimana. 1 — swap singolo, 3 — swap triplo, 0 — nessuno swap.

    • MQL5: Corretto funzionamento delle funzioni CopyTicks e CopyTicksRange. Un errore poteva causare la restituzione di dati obsoleti a cavallo della mezzanotte. L'errore si verificava quando non venivano forniti tick per lo strumento finanziario.
    • Risolti gli errori segnalati nei registri degli arresti anomali.


    L'aggiornamento sarà disponibile tramite il sistema Live Update.

    Motivazione: