Caratteristiche del linguaggio mql5, sottigliezze e tecniche - pagina 72

 

Il campo MqlRates.spread contiene il valore minimo di spread per barra. Questo è un totale nonsenso per un backtest. Tutti possono risolverlo attraverso simboli personalizzati come segue

spread = LowAsk - LowBid; // условный код - не показывает обработку некоторых нюансов

Con un tale spread, gli Expert Advisors sugli stessi ordini Limit sono meravigliosamente (in termini di qualità e velocità) testati nella modalità "prezzi aperti".

 

Esecuzione di un agente di prova con l'opzione di utilizzare la cartella FILE_COMMON e OpenCL:

metatester64.exe /local /password:tester /address:0.0.0.0:2000
 
I commenti non relativi a questo argomento sono stati spostati in "Discussione dell'articolo "Visualizzare l'ottimizzazione delle strategie di trading in MetaTrader 5".
 

Il vantaggio principale di MT4 è la sua intuitività e semplicità nel codice di programmazione
Non c'è bisogno di predefinire ciò che si vuole fare, ci sono array integrati come


iTime("USDCHF",PERIOD_H1,0),","," iOpen("USDCHF",PERIOD_H1,0),",
iHigh("USDCHF",PERIOD_H1,0),", ", iLow("USDCHF",PERIOD_H1,0),", ",
iClose("USDCHF",PERIOD_H1,0),", ", iVolume("USDCHF",PERIOD_H1,0);


Ci sono molte classi e librerie per MT5

È impossibile fare tali classi e librerie, che permettono di programmare in MT5 come si fa in MT4
 
Stefan Stoyanov:

Il vantaggio principale di MT4 è la sua intuitività e semplicità nel codice del programma
Non c'è bisogno di predefinire ciò che si vuole fare, ci sono array integrati come


iTime("USDCHF",PERIOD_H1,0),","," iOpen("USDCHF",PERIOD_H1,0),",
iHigh("USDCHF",PERIOD_H1,0),", ", iLow("USDCHF",PERIOD_H1,0),", ",
iClose("USDCHF",PERIOD_H1,0),", ", iVolume("USDCHF",PERIOD_H1,0));


Ci sono molte classi e librerie per MT5

Non è possibile fare tali classi e librerie che permettono di programmare in MT5 come si fa in MT4

Ci sono così tante librerie che ti permettono di scrivere codice in mt5 esattamente come l'hai scritto in mt4.

 
Stefan Stoyanov:

È impossibile fare alcune classi e librerie che permettano di programmare in MT5 come si fa in MT4?

Quando fxsaber se ne va, chiedigli di scrivere una libreria per poter scrivere come in mql3 e poi non dovrai scrivere affatto. Non pensi che sia ora di crescere?

 

Come faccio a trovare l'ora del terminale, ho bisogno di trovare lo spostamento in ore tra il terminale e il locale?

C'è TimeGMTOffset(), ma è davvero inutile.

In questo momento il terminale mostra 23:58, il locale mostra 16:54. Ma dobbiamo scoprire a quale turno GMT sta funzionando il terminale. Dal lunedì al venerdì si può scoprire con un tamburello.

Non vedo l'ora di avere tue notizie, grazie!

 
Vitaly Muzichenko:

Come faccio a trovare l'ora del terminale, ho bisogno di trovare lo spostamento in ore tra il terminale e il locale?

C'è TimeGMTOffset(), ma è davvero inutile.

In questo momento il terminale mostra 23:58, il locale mostra 16:54. Ma dobbiamo scoprire a quale turno GMT sta funzionando il terminale. Dal lunedì al venerdì si può scoprire con un tamburello.

Non vedo l'ora di avere tue notizie, grazie!

Il terminale nella panoramica del mercato mostra l'ora di arrivo dell'ultimo tick del server del broker secondo l'ora del broker stesso.

Puoi confrontare il prezzo di chiusura di uno strumento presso un broker sconosciuto con il tempo di chiusura delle stesse candele presso un broker conosciuto.

Calcolare la differenza di tempo.

 
Kirill Belousov:

Il terminale nella panoramica del mercato mostra l'ora di arrivo dell'ultimo tick del server del broker secondo l'ora del broker stesso.

Puoi confrontare il prezzo di chiusura di uno strumento presso un broker sconosciuto con il tempo di chiusura delle stesse candele presso un broker conosciuto.

Calcolare la differenza di tempo.

Ma in questo modo i candelieri mostreranno anche il tempo del server.

Supponiamo che ora avvio il terminale da qualsiasi rivenditore, non ci sono quotazioni, ma c'è l'ultima registrata nellapanoramica del mercato alle 23:58, ma con quale offset GMT funziona - non è noto.

O sono già stupido e può essere scoperto molto facilmente?

P.S. Supponiamo che mi sia perso nel tempo e abbia smesso di distinguere tra giorno/notte, giorni della settimana, tempo.

Come scoprire che non ci sono quotazioni perché è un fine settimana, o per esempio il giovedì nessuna quotazione, perché il server si blocca nella sala dealing?

Vedo una tale soluzione, ma non vedo come implementarla se non ho tempo sul server di trading:

if( TimeCurrent()<TimeServer()+60 ) return( "нет котировок уже 1 минуту" );
 
Vitaly Muzichenko:

Ma in questo modo le candele mostreranno anche l'ora del server.

Supponiamo, ora avvio il terminale da qualsiasi rivenditore, non ci sono citazioni, ma c'è l'ultimo registrato nelmercato panoramica 23:58, ma con quale spostamento GMT funziona - non è noto.

O sono già stupido e può essere scoperto molto facilmente?

P.S. Supponiamo che mi sia perso nel tempo e abbia smesso di distinguere tra giorno/notte, giorni della settimana, tempo.

Come scoprire che non ci sono quotazioni perché è un fine settimana, o per esempio il giovedì non vanno le quotazioni, perché il server si blocca nel trattare?

Usando il prezzo di chiusura, trovate la candela sulla storia di una società di brokeraggio indipendente, alla quale conoscete il GMTOffset. La differenza tra il tempo delle candele vi darà la differenza tra le società di intermediazione. Aggiungi alla differenza il GMT di quello conosciuto e ottieni la differenza GMT di quello sconosciuto.

Non si sa mai il tempo del server commerciale. Si conosce solo il tempo dell'ultima quotazione del simbolo.

Basta usare le candele orarie.

Motivazione: