MT4-Tester VS MT5-Tester - pagina 4

 
fxsaber:

Non ho intenzione di discutere. Chiedo agli utenti del forum che hanno familiarità con MQL4 di guardare questo breve codice sorgente e spiegare cosa significa Renat.


Devo essermi sbagliato, ma non riesco a vedere dove viene gestita la storia in MT4. Per favore, aiutatemi.

Questo non è serio.

E sommario. La totale "incomprensione" delle spiegazioni chiare (qualsiasi funzione OrderXXX che si arrampica per i dati commerciali è piena di chiamate storiche MT4/MT5) e un ciclo stupido di centinaia di miliardi di chiamate inutili lo indicano chiaramente.

 
fxsaber :

Non voglio discutere. Chiedo ai membri del forum che hanno familiarità con MQL4, di guardare questo breve codice sorgente e spiegare cosa si intende per Renat.


Forse mi sbaglio, ma non vedo a distanza ravvicinata, dove stiamo lavorando con la storia in MT4. Per favore, aiutatemi.

Renat è perfettamente chiaro e corretto. Scrivi il tuo EA mql5 senza la libreria "mql4" e vedrai l'enorme differenza. Ci sono abbastanza problemi reali con mql5/MT5 senza inventarne di nuovi.

Traduzione:

Renat è assolutamente chiaro e corretto. Scrivi un EA mql5 senza "libreria mql4" e vedrai un'enorme differenza. Ci sono abbastanza problemi reali con mql5 / MT5 senza inventarne di nuovi.

 
Renat Fatkhullin:

Questo non è serio.

E quindi è un abbozzo. Un completo "fraintendimento" della chiara spiegazione (qualsiasi funzione OrderXXX che si arrampica sui dati delle transazioni è un riferimento alla storia di MT4/MT5 per intero) e il ciclo stupido di centinaia di miliardi di chiamate inutili lo indicano chiaramente.

Dalla documentazione

OrdiniTotale

Restituisce il numero totale di ordini aperti e in sospeso.

intOrdiniTotali();

Valore restituito

Quantità totale di ordini aperti e in sospeso.

OrdiniStoriaTotale

Restituisce il numero di ordini chiusi e cancellati nella storia del conto corrente, caricato nel terminale del cliente.

intOrdiniHistoryTotal();

Valore restituito

Il numero di ordini chiusi e cancellati nella storia del conto, caricati nel terminale del cliente. La dimensione della lista della cronologia dipende dalle impostazioni correnti della scheda "Cronologia account" del terminale.

Торговые функции - Справочник MQL4
Торговые функции - Справочник MQL4
  • docs.mql4.com
Торговые функции - Справочник MQL4
 
fxsaber:
Dalla documentazione.

Perché stai prendendo tempo?

Avete più di una dozzina di funzioni OrderSelect, OrderProfit, ecc. Non capite cos'èOrderSelect?

Ci sono più di 200.000 transazioni nel database e tu fai SelectOrderFromAllBase 200.000 volte per ogni tick. Ci sono 1.800.000 zecche in una corsa.

Quindi questo test riguarda solo la stupida scansione della storia degli accordi.


E un'altra cosa - nel tester, la storia è disponibile in tutta la sua profondità, indipendentemente dalle impostazioni del terminale.
 
Avete più di una dozzina di funzioni OrderSelect, OrderProfit, ecc. Non capite cos'èOrderSelect da tutto il database? Ci sono più di 200 000 transazioni nel database, e stai facendo OrderSelect 200 000 volte per tick. Ci sono 1.800.000 zecche in una corsa. Quindi il test è puramente una scansione stupida della storia dell'affare.
E un'altra cosa - nel tester la storia è disponibile in piena profondità indipendentemente dalle impostazioni del terminale stesso.

Capisco Renat. Un algoritmo scritto in modo ottimale non dovrebbe andare nella storia ad ogni tick. Particolarmente divertente sarà se la storia contiene migliaia o addirittura centinaia di accordi. È sufficiente controllare la cronologia una volta all'inizio, si può usare OnInit, e poi tracciare solo la breve ricarica della cronologia.

 
Renat Fatkhullin:

Perché stai prendendo tempo?

Avete più di una dozzina di funzioni OrderSelect, OrderProfit ecc. Non capite cos'èOrderSelect?

Sento che un divieto è dietro l'angolo. Tutti sono silenziosi...

Ecco un'altra citazione dalla documentazione

OrderSelect

Seleziona un ordine per continuare a lavorare con esso.

boolOrderSelect(
intindex,// indice o biglietto dell'ordine
intselect,// flag del metodo di selezione
intpool=MODE_TRADES// fonte di dati per la selezione
);

Parametri

biglietto

[Indice dell'ordine o numero d'ordine, a seconda del secondo parametro.

selezionare

[Flag del metodo di selezione. Può essere uno dei seguenti valori:

SELECT_BY_POS - il parametro index contiene il numero di indice dell'ordine nella lista,
SELECT_BY_TICKET - il parametro indice contiene il numero del biglietto.

pool=MODO_TRADES

[La fonte dei dati da selezionare. Usato quando il parametro select è uguale a SELECT_BY_POS. Può essere uno dei seguenti valori:

MODE_TRADES (predefinito) - l'ordine viene selezionato tra quelli aperti e in sospeso,
MODE_HISTORY - l'ordine è selezionato tra gli ordini chiusi e cancellati.

OrderSelect - Торговые функции - Справочник MQL4
OrderSelect - Торговые функции - Справочник MQL4
  • docs.mql4.com
OrderSelect - Торговые функции - Справочник MQL4
 
Yuriy Zaytsev:

Capisco Renat. Un algoritmo ben scritto non deve passare attraverso la storia ad ogni spunta.

A che punto?
 

Bene, si scopre che vengono controllati solo gli ordini aperti. Non sono entrato nella biblioteca e ho pensato che fosse la storia della scansione.

Quindi la mia affermazione sulle scansioni di storia da un miliardo di dollari è sbagliata. Dobbiamo guardare più a fondo, anche se è chiaro che si tratta di centinaia di migliaia di scambi.

Scusa per aver guardato attraverso.
 
Renat Fatkhullin:

Bene, si scopre che vengono controllati solo gli ordini aperti. Non sono entrato nella biblioteca e ho pensato che fosse una scansione della storia.

Questo è MQL4, che molte persone hanno dimenticato. Lo sto usando non per l'aspetto cross-platform, è solo molto comodo quando lo uso in MT5 (non uso quasi mai MT4).

Devo ripetere che non mi interessano i contorni. Voglio avere una discussione costruttiva. Finora

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

MT4-Tester VS MT5-Tester

fxsaber, 2017.05.08 09:13

Il 1598 funziona molto più velocemente del 1596. E lo fa anche in luoghi in cui le funzioni di storia non sono utilizzate affatto. Apparentemente, il terminale stesso ha causato queste funzioni precedentemente lente nelle sue viscere durante la corsa.

Corretto e buono. Sarà molto bello se il già grande tester MT5 diventerà ancora migliore, coprendo le capacità di MT4+TDS

Tali impostazioni del tester sono effettivamente a volte richieste. E sarebbe fantastico se MT5 lo permettesse in un futuro non troppo lontano.


ZS Nel frattempo, un bonus dal confronto quasi subito ricevuto. Sembra che un altro stia maturando.

 

Non si tratta di te, si tratta del fatto che un algoritmo scritto correttamente non deve entrare nella storia ad ogni tick.

Motivazione: