Cosa ci vorrebbe per far sì che tutti passino finalmente alla MT5? (raccolta di opinioni) - pagina 35

 
Artyom Trishkin:

In quale area la MT4 è superiore alla MT5?

In tutti loro.)) Ti ho già fatto un esempio: la mia vecchia auto è superiore a tutte quelle nuove, ha tutte le stesse cose e costa come una bicicletta).

 
Makar Anoshin:

Almeno non fa glitch sui vecchi PC e portatili all'avvio. MT5 è estremamente scomodo in questo senso... Non sto parlando di ottimizzazione e lavoro con Expert Advisors e indicatori. Lì tutto è più complicato... Così, in queste condizioni si sceglie involontariamente ciò che è più facile... (MT4)

Cosa ne pensate?

Forum sul trading, sistemi di trading automatico e test di strategia

Ha senso passare dalla MT4 alla MT5? Perché dovresti passare alla MT5?

Renat Fatkhullin, 2019.02.08 23:07

Voglio avvicinarvi alla realtà date le discussioni del thread Cosa si dovrebbe fare per far passare finalmente tutti alla MT5? (raccogliendo opinioni):

  1. MetaTrader 5 è più veloce nel trading

    L'architettura del 5 è un ordine di grandezza più efficiente del 4. Tutti i processi sono stati riprogettati per consentire il trading con ritardi minimi.

    Con (o senza) operazioni asincrone si può raggiungere un massimo di diverse migliaia di scambi al secondo. Tutto è costruito per la velocità, compresa la priorità degli scambi.

    Non è nemmeno vicino ad essere fatto in 4.

  2. In MetaTrader 5 i robot sono fino a 20 volte più veloci

    Questo perché 5 usa un compilatore di livello C++ che rende il codice estremamente efficiente. F4 usa il vecchio sistema di runtime senza ottimizzazione del codice.

    Una maggiore velocità significa una latenza ridotta e una migliore qualità di esecuzione.

  3. In MetaTrader 5 è possibile gestire enormi quantità di dati

    Coloro che sono impegnati nello sviluppo profondo conoscono la dimensione dei dati memorizzati nelle directory dei cinque. Ci sono spesso decine di gigabyte di dati storici, compresi i dati di tick completi.

    La memorizzazione e la visualizzazione dei dati di tick completi da parte di Five è una caratteristica non escludibile. Non fate l'errore di pensare che perché i dati dei tick non sono mostrati sul grafico, significa che non esistono.

    Ecco un semplice codice eseguito su un conto reale presso il broker Otkritie e il simbolo RTS Splice, che è un collante di tutti i contratti futures dell'indice RTS per molti anni:
    void OnStart()
      {
       MqlTick ticks[];
       int     records=CopyTicks(Symbol(),ticks,COPY_TICKS_ALL,0,1000000000);
    //---
       Print(Symbol()," ticks ",records);   
      }
    
    produce 472 milioni di zecche:
    RTS Splice ticks 472 111 564
    
    Sì, 472 milioni di zecche in una query. Fate quello che volete con loro dopo.

    Ti dà il controllo assoluto sui dati. Si possono avere anche miliardi di zecche. Basta riuscire a dare un calcio al broker per prendersi cura dei dati storici. È la SUA OPERA DIRETTA E IL SUO MANDATO.

    Due righe di codice e tutti i dati sono nelle vostre mani. Chi sta parlando della complessità di MQL5?

    Non esiste una cosa del genere nel 4.

  4. MetaTrader 5 ha un tester multisimbolo molto preciso con precisione al millisecondo

    Questo ti permette di correre strategie molto complesse e avere più garanzie che la tua strategia non sia autodistruttiva.

    Voi scrivete direttamente il codice e il tester si occupa di tutta la complessità di modellare tutta la varietà del mercato.

    Periodicamente i commercianti si vantano di poter scrivere il loro semplice tester molte volte più velocemente, ma è tutto a livello di una corsa economica del ciclo per bar. Per non parlare della completa esclusione di tutta la varietà di condizioni di mercato, strumenti e requisiti di margine.

    E non abbiamo solo la modellazione più dettagliata, compresa la conversione precisa di tutti i profitti nella valuta di bilancio, ma anche la raccolta di tutte le informazioni statistiche insieme alla storia dei cambiamenti fluttuanti del patrimonio netto.

    Questo non è nemmeno vicino a quello che abbiamo in MetaTrader 4.

  5. Nel tester di MetaTrader 5 c'è una sorprendente funzione di contabilità di esecuzione ritardata

    La modalità di trading con un determinato ritardo ci permette di squalificare completamente la maggior parte delle strategie scalper che sono favolose nel tester, ma disastrose nell'ambiente di trading reale.



    Anche l'aggiunta di 50-100 ms di ritardo è sufficiente per degradare drasticamente molte strategie.

    La potenza di questa funzione si basa sulla simulazione accurata dell'ambiente di mercato, quando anche Sleep(ms) nel tester funziona come nella realtà. Siamo in grado di parallelizzare lo sviluppo del mercato creando ritardi per l'Expert Advisor stesso, il che gli permette di eseguire l'esecuzione reale in modo qualitativo.

    Giocate con il vostro ritardo di rete e aumentatelo un paio di volte per testare la robustezza del vostro robot. Controlla la qualità delle riquotazioni e dei rimbalzi allo stesso tempo.

    Ce l'avete in 4? No, certo che no.

  6. Il sistema a 64 bit di Five permette di operare con un'enorme quantità di grafici e una storia profonda.

    Questo è molto importante quando si fanno analisi complesse o si analizzano più simboli e timeframes. Puoi tenere e gestire migliaia di grafici (simbolo + periodo) ed essere sicuro che siano disponibili istantaneamente.

    Alcuni commercianti dicono che non hanno bisogno di molto e che i miseri dati dei quattro sono sufficienti per loro. Ma in realtà la posta in gioco nell'analisi dei dati è in continuo aumento.

    La mia opinione è che la quantità di dati in un cinque non è ancora sufficiente. Lavoriamo costantemente per migliorare l'efficienza e la velocità di consegna dei dati. Stiamo costantemente sintonizzando le prestazioni in modo che enormi dati siano sempre a portata di mano e rapidamente disponibili da MQL5.

  7. Uso di tester multithread, calcolo e server cloud

    Il costo principale dello sviluppo della strategia è l'ottimizzazione delle strategie. Questo è il settore in cui abbiamo investito molto.

    Potete usare tutti i vostri core locali, costruire una fattoria di calcolo nella vostra area locale o collegare la rete MQL5 Cloud Network. Questo permette di accelerare l'ottimizzazione di decine o centinaia di volte.


  8. MetaTrader 5 ha stack ed esecuzione su una moltitudine di gateway

    I trader non lo sanno molto bene, ma MetaTrader 5 ha un potente sistema di aggregazione di diversi fornitori di liquidità e un sistema flessibile di trasferimento delle transazioni a diversi fornitori.

    ECN, l'aggregazione della liquidità e il motore di corrispondenza permettono l'esecuzione efficiente di strategie di esecuzione al miglior prezzo e supportano più mercati da un singolo conto.

  9. Cinque non ha limiti di volume di dati

    Puoi richiedere enormi volumi di dati grafici storici (limitati al 1970) e lo storico delle transazioni.

    Hai un milione di transazioni nella storia del tuo conto? Non è un problema. Basta aggiungere più memoria.

  10. Un architetto di grafici e una gestione degli oggetti completamente diversi

    Puoi gestire il tuo grafico in modo molto più efficiente, e disabilitare del tutto il grafico per il bene delle tue costruzioni.

    Usate la finestra come volete con oggetti grafici o kanvas.

  11. Enorme libreria standard

    Ecco la libreria standard di MQL5. C'è la matematica a livello di linguaggio R, collezioni di dati, OpenCL, grafica ecc.

    La maggior parte dei trader non sa che abbiamo implementato centinaia di funzioni matematiche e statistiche del pacchetto R nel codice sorgente. Vi permettono di fare molti calcoli complessi molto più velocemente (da 5 a 50 volte più velocemente) di quello che è disponibile in R.

    Sì, i programmi scritti nel codice sorgente MQL5 fanno saltare la velocità dell'implementazione C++ di R fino a 50 volte.

  12. Simboli personalizzati, pile personalizzate, simboli sintetici e semplice importazione di dati

    In Five, puoi creare facilmente i tuoi simboli, comprese le pile di prezzi. Crearli dal codice MQL5 e inserirli in rltime dal codice MQL5. Si possono costruire simboli sintetici usando formule.

    In altre parole, MetaTrader 5 è stata a lungo una piattaforma analitica indipendente dove è possibile analizzare qualsiasi altro dato. Qualsiasi programma MQL5 può gestire i feed di dati.

  13. E un sacco di altre caratteristiche ripetutamente descritte.



Bisogna rendersene conto:

  • La tecnologia è in continua evoluzione, e coloro che rimangono con il vecchio mantra della sufficienza vengono lasciati indietro.

  • Sì, è una corsa alla tecnologia. E prima di tutto per i commercianti

  • I linguaggi MQL4 e MQL5 sono assolutamente la stessa cosa in termini di complessità

    È davvero divertente ascoltare le dichiarazioni sulla semplicità di MQL4, quando la complessità di MQL5 è esattamente la stessa. LA COMPLESSITÀ DI MQL5 È ESATTAMENTE LA STESSA.

    Oppure dobbiamo ammettere che un paio di parametri aggiuntivi sono un problema universale per un programmatore. No, certo che no. Questa è una bella leggenda per coloro che stanno calpestando i vecchi.

  • L'ho detto molte volte e lo dirò ancora: i programmi sono scritti da sviluppatori professionisti

    Meno del 2% degli utenti usa l'editor di codice. La maggior parte dei commercianti scarica roba off-the-shelf dal mercato e da kodobase senza analizzare il codice.

    Le storie sul semplice MQL4 sono eccezionalmente ridicole. Le discussioni sull'OOP sono assolutamente fuori luogo, soprattutto perché è stato in MQL4 per molto tempo. Qualsiasi programmatore al giorno d'oggi deve conoscere l'OOP di default.

    Solo un programmatore sufficientemente abile può creare un programma di qualità accettabile. Non fatevi ingannare dalla possibilità di "scrivere codice accettabile senza conoscenze di programmazione".

    Ho passato 28 anni a programmare quotidianamente e so che la mia affermazione è la realtà.

  • Un numero sufficiente di nostri partner tecnologici e sviluppatori di terze parti sono direttamente interessati a mantenere MetaTrader 4

    Siccome questa piattaforma ha così tanti difetti tecnologici, si sono imbrigliati nella nicchia degli add-on/fori e si stanno alimentando direttamente su di essa.

    Sì, spendono una discreta quantità di risorse per convincere broker e trader che "MetaTrader 4 è meglio". Perché i loro affari crolleranno. E qui siedono sotto il nome di commercianti indipendenti, lavorando all'opposizione.

    Non abbiamo la capacità di combattere questo in modo aggressivo, anche se siamo particolarmente zelanti e sappiamo molto bene cosa e come dicono ai broker e ai commercianti.

    Per esempio, ricordate la protesta che i venditori di antivirus hanno sollevato per 10 anni quando Microsoft ha reso la loro piattaforma più sicura e ha tolto le loro caratteristiche di sicurezza. Solo rabbia virtuosa e un sacco di PR.

  • Il progresso è inarrestabile.

 
Artyom Trishkin:

Cosa ne pensate di questo?


È tutto buono, naturalmente, ma in pratica, ahimè... per qualche motivo tutto gira più lentamente dall'avvio, caricamento delle citazioni e test approfonditi dei programmi MQL su dati storici.

Per qualche ragione impensabile, nonostante i vantaggi menzionati sopra, tutto gira e prova più velocemente sul mio computer e sul server VPS che su Mt4. E comprare un moderno computer da gioco specificamente per il trading FOREX, beh, dove è conveniente e pratico?

 
Artyom Trishkin:

Cosa ne pensate di questo?


Penso che sia una miseria se l'ottimizzazione è quasi 4 volte più lenta, e se avete solo file eX5 allora probabilmente si bloccano, senza alcuna possibilità di scrivere codice per interrompere il passaggio di ottimizzazione!!!

Lo stesso problema con il rendering degli ordini pendenti, e se la strategia si basa su di essi, allora kaput...

 
Renat Akhtyamov:

dipende dalla strategia

Non è solo la velocità che conta, ma anche il prezzo al momento dell'ordine di aprire il trade

Una casa di intermediazione "intelligente" non ti lascerà mai andare avanti nel gioco...

 
Makar Anoshin:

È tutto buono, naturalmente, ma in pratica, ahimè... per qualche motivo tutto gira più lentamente dal lancio, al caricamento delle quotazioni e ai test approfonditi dei programmi MQL sui dati storici.

Per qualche ragione impensabile e contrariamente ai benefici di cui sopra, tutto gira e prova più velocemente in MT4 (personalmente sul mio computer e VPS). E comprare appositamente per il trading sul FOREX un moderno computer da gioco, beh, dove è conveniente e pratico?

Lavoro su un semplice computer portatile. Non può giocare a nessun gioco in qualità normale. E ho solo 5GB di memoria. E ne ho abbastanza per il lavoro quotidiano sui miei progetti in cinque. E in qualche modo non rallenta come lei sostiene. Anche facendo un indicatore che prende i dati su tutti i simboli della revisione del mercato e su tutti i timeframe di ogni simbolo, aspetto solo la prima esecuzione. Secondi per cinque secondi per scambiare la cronologia mancante per simbolo e periodo di tempo. Dopo di che, tutto funziona rapidamente e senza ritardi.

E lasciate che vi dica un segreto: se iniziate a scrivere correttamente i programmi in mql4, avrete quasi lo stesso codice che in mql5. I ragazzi si sono abituati all'idea che una volta ottenuti i dati, li si può immediatamente spalare nei calcoli, dimenticando di controllare completamente: cosa ho lì? E se sbagliano qualcosa, devono elaborare tale risultato, non metterlo nei calcoli. È da questo approccio negligente alla programmazione che la gente comincia a chiedere su tutti i forum come aggiornare l'indicatore in modo permanente, perché mostra sempre delle cose strane, e solo rinnovando manualmente il grafico o ricompilando il codice dell'indicatore le letture tornano a una forma accettabile. Avete visto una tale richiesta di una tale stampella? No? Beh, l'ho fatto molte volte. Ma non appena si guarda il codice, si aggiungono tutti i controlli necessari, il codice mql4 diventa miracolosamente grande come il codice mql5, e comincia a funzionare senza crash e stampelle con aggiornamento forzato.

Quindi per lo più tutti questi lamenti su "orribile mql5" sono solo lamenti di non programmatori che nel loro tempo libero hanno creato il loro piccolo strumento da pezzi sparsi raccolti sulla rete. E appena a queste persone è stato impedito di far circolare tranquillamente il loro lavoro alle masse, hanno pianto - oh, com'è tutto complicato. Non è complicato. Quelli che originariamente hanno scritto correttamente sui quattro, non hanno notato la differenza. Solo le caratteristiche extra.

Quindi sono d'accordo. Niente per riempire lo spazio con codice non funzionante.

 
xxz:

Il problema è che se l'ottimizzazione è quasi 4 volte più lenta, e se avete solo file eX5 allora probabilmente si bloccano, senza alcuna possibilità di scrivere codice per interrompere il passaggio di ottimizzazione!!!

Lo stesso problema con il rendering degli ordini pendenti, e se la strategia si basa su di essi, allora kaput...

Prove. Una prova comparativa, per favore, la fornisca qui. Lo stesso codice multipiattaforma e i suoi risultati di ottimizzazione. Gli stessi parametri con le stesse impostazioni - i risultati di ottimizzazione su quattro, e i risultati di ottimizzazione su cinque - il tempo trascorso su tutti i passaggi di ottimizzazione. Senza tutto questo, le sue parole sono solo un abbozzo.

 
Artyom Trishkin:

Lavoro su un semplice computer portatile. Non può giocare a nessun gioco in qualità normale. E ci sono solo 5GB di memoria. E mi basta per lavorare ai miei progetti in 5 ogni giorno. E in qualche modo non rallenta come lei sostiene. Anche facendo un indicatore che prende i dati su tutti i simboli della revisione del mercato e su tutti i timeframe di ogni simbolo, aspetto solo la prima esecuzione. Secondi per cinque secondi per scambiare la cronologia mancante per simbolo e periodo di tempo. Dopo di che, tutto funziona rapidamente e senza ritardi.

E lasciate che vi dica un segreto, se iniziate a scrivere correttamente i programmi in mql4, avrete quasi lo stesso codice che in mql5. I ragazzi si sono abituati all'idea che una volta ottenuti i dati, li si può immediatamente spalare nei calcoli, dimenticando di controllare completamente: cosa ho lì? E se sbagliano qualcosa, devono elaborare tale risultato, non metterlo nei calcoli. È da questo approccio negligente alla programmazione che la gente comincia a chiedere su tutti i forum come aggiornare l'indicatore in modo permanente, perché mostra sempre delle cose strane, e solo rinnovando manualmente il grafico o ricompilando il codice dell'indicatore le letture tornano a una forma accettabile. Avete visto una tale richiesta di una tale stampella? No? Beh, l'ho fatto molte volte. Ma non appena si guarda il codice, si aggiungono tutti i controlli necessari, il codice mql4 diventa miracolosamente grande come il codice mql5, e comincia a funzionare senza crash e stampelle con aggiornamento forzato.

Quindi per lo più tutti questi lamenti su "orribile mql5" sono solo lamenti di non programmatori che nel loro tempo libero hanno creato il loro piccolo strumento da pezzi sparsi raccolti sulla rete. E appena a queste persone è stato impedito di far circolare tranquillamente il loro lavoro alle masse, hanno pianto - oh, com'è tutto complicato. Non è complicato. Quelli che originariamente hanno scritto correttamente sui quattro, non hanno notato la differenza. Solo le caratteristiche extra.

Quindi sono d'accordo. Niente per riempire lo spazio con codice non funzionante.

Abbiamo capito che l'importante è non sottolineare la mancanza di brevità del linguaggio come in mql4.

DayOfWeek_p=DayOfWeek();

MqlDateTime str1;
TimeToStruct(TimeCurrent(),str1);
DayOfWeek_p=str1.day_of_week;
 
Artyom Trishkin:

...

Quindi sono d'accordo. Non c'è niente che riempia lo spazio con codice non funzionante.


Esattamente! Ricostruisci te stesso - diventa un programmatore professionista! Se non puoi diventare un professionista - vattene da qui!))

ZS. Intendo la facilità d'uso. E' fuori scala)).

 
Реter Konow:


Esattamente! Ricostruisci te stesso - diventa un programmatore professionista! Se non puoi diventare un professionista - vattene del tutto!)

Stai parlando con me? Grazie, è divertente.