Errori, bug, domande - pagina 574

 

Al post precedente, ottimizzazione del MACD Sample Expert Advisor standard

LL 0 Tester 10:30:03 log precedenti puliti
LL 0 Tester 10:30:03 MetaTester 5 build 540 (11 Nov 2011)
RI 0 Server 10:30:03 MetaTester 5 avviato su 127.0.0.1
IL 0 127.0.0.1 10:30:03 login (build 540)
GD 0 Rete 10:30:03 1260 byte di informazioni sugli ingressi ottimizzati caricati
HO 0 Rete 10:30:03 3256 byte di parametri di input caricati
QK 0 Tester 10:30:03 file esperto aggiunto: Experts\Examples\MACD\MACD Sample.ex5. 36097 byte caricati
IS 0 Tester 10:30:03 inizializzato con successo
LJ 0 Rete 10:30:03 39 Kb di dati di inizializzazione totali ricevuti
LM 0 Tester 10:30:03 Intel Core2 Duo E8400 @ 3.00GHz, 2047 MB
DD 0 Tester 10:30:03 ottimizzazione passaggio 218680882202 avviato
MP 2Simboli 10:30:03 nessun prezzo per il simbolo USDCHF
OJ 2 Simboli 10:30:03 nessun prezzo per il simbolo USDCHF
:30:03 nessun prezzo per il simbolo USDCHF
IS 2 Symbols 10:30:03 nessun prezzo per il simbolo USDCHF
KM 2 Symbols 10:30:03 nessun prezzo per il simbolo USDCHF
EF 2 Simboli 10:30:03 nessun prezzo per il simbolo USDCHF
GP 2 Simboli 10:30:03 nessun prezzo per il simbolo USDCHF
GJ
0 Tester 10:30:05 218680882202 : superato entro 2434 ms
MN 0 Tester 10:30:05 pass 396972489131 iniziato
KK 2 Symbols 10: 0530:05 nessun prezzo per il simbolo USDCHF
ID 2 Symbols 10:30:05 nessun prezzo per il simbolo USDCHF
ON 2 Symbols 10:30:05 nessun prezzo per il simbolo USDCHF
MH 2 Symbols 10:30:05 nessun prezzo per il simbolo USDCHF
CQ 2 Symbols 10:30:05 nessun prezzo per il simbolo USDCHF
QK 2 Symbols 10:30:05 nessun prezzo per il simbolo USDCHF
PD 0 Tester 10:30:08 396972489131 : passato entro 2309 ms
QR 0 Tester 10:30:08 passaggio di ottimizzazione 1009545839445 iniziato
NE 2 Symbols 10:30:08 nessun prezzo per il simbolo USDCHF
DO 2 Symbols 10:30:08 nessun prezzo per il simbolo USDCHF
JI 2 Symbols 10:30:08 nessun prezzo per il simbolo USDCHF
PR 2 Symbols 10:30:08 nessun prezzo per il simbolo USDCHF
FL 2 Symbols 10:30:08 nessun prezzo per il simbolo USDCHF
LE 2 Simboli 10:30:08 nessun prezzo per il simbolo USDCHF
LL 0 Tester 10:30:10 1009545839445 : superato entro 2590 ms
LD 0 Tester 10:30:10 pass 328139732768 iniziato
KP 2 Symbols 10:30:10 nessun prezzo per il simbolo USDCHF
QJ 2 Symbols 10:30:10 nessun prezzo per il simbolo USDCHF
GS 2 Symbols 10:30:10 nessun prezzo per il simbolo USDCHF
MM 2 Symbols 10:30:10 nessun prezzo per il simbolo USDCHF
CF 2 Symbols 10:30:10 nessun prezzo per il simbolo USDCHF
IP 2 Symbols 10:30:10 nessun prezzo per il simbolo USDCHF
PJ 0 Tester 10:30:13 328139732768 : passato entro 2465 ms
FN 0 Tester 10:30:13 ottimizzazione passaggio 415346893128 iniziato
RK 2 Symbols 10:30:13 nessun prezzo per il simbolo USDCHF
DD 2 Symbols 10:30:13 nessun prezzo per il simbolo USDCHF
NN 2 Symbols 10:30:13 nessun prezzo per il simbolo USDCHF
PH 2 Symbols 10:30:13 nessun prezzo per il simbolo USDCHF
JQ 2 Symbols 10:30:13 nessun prezzo per il simbolo USDCHF
LK 2 Simboli 10:30:13 nessun prezzo per il simbolo USDCHF
KD 0 Tester 10:30:15 415346893128 : superato entro 2278 ms
PR 0 Tester 10:30:15 ottimizzazione passaggio 20121173742 iniziato
NF 2 Simboli 10:30:15 nessun prezzo per il simbolo USDCHF
DO 2 Simboli 10:30:15 nessun prezzo per il simbolo USDCHF
RI 2 Symbols 10:30:15 nessun prezzo per il simbolo USDCHF
HR 2 Symbols 10:30:15 nessun prezzo per il simbolo USDCHF
FL 2 Simboli 10:30:15 nessun prezzo per il simbolo USDCHF
LF 2 Simboli 10:30:15 nessun prezzo per il simbolo USDCHF
FL 0 Tester 10:30:17 20121173742 : passato entro 2309 ms
ND 0 Tester 10:30:17 nessun prezzo per il simbolo USDCHF 751721102576 iniziato
JP 2 Symbols 10:30:17 nessun prezzo per il simbolo USDCHF
DJ 2 Symbols 10:30:17 nessun prezzo per il simbolo USDCHF
ND 2 Symbols 10:30:17 nessun prezzo per il simbolo USDCHF
HM 2 Symbols 10:30:17 nessun prezzo per il simbolo USDCHF
RG 2 Symbols 10:30:17 nessun prezzo per il simbolo USDCHF
LQ 2 Symbols 10:30:17 nessun prezzo per il simbolo USDCHF
FJ 0 Tester 10:30:20 751721102576 : passato entro 2480 ms
RL 0 Tester 10:30:20 ottimizzazione pass 1037041429641 iniziato
HK 2 Symbols 10:30:20 nessun prezzo per il simbolo USDCHF
RE 2 Symbols 10:30:20 nessun prezzo per il simbolo USDCHF
DN 2 Symbols 10:30:20 nessun prezzo per il simbolo USDCHF
NH 2 Symbols 10:30:20 nessun prezzo per il simbolo USDCHF
PR 2 Symbols 10:30:20 nessun prezzo per il simbolo USDCHF
JK 2 Simboli 10:30:20 nessun prezzo per il simbolo USDCHF
EF 0 Tester 10:30:24 1037041429641 : superato entro 4508 ms
QR 0 Tester 10:30:24 pass 1231731063044 iniziato
LF 2 Symbols 10:30:24 nessun prezzo per il simbolo USDCHF
FO 2 Symbols 10:30:24 nessun prezzo per il simbolo USDCHF
PI 2 Symbols 10:30:24 nessun prezzo per il simbolo USDCHF
JR 2 Symbols 10:30:24 nessun prezzo per il simbolo USDCHF
DL 2 Symbols 10:30:24 nessun prezzo per il simbolo USDCHF
NF 2 Symbols 10:30:24 nessun prezzo per il simbolo USDCHF
IQ 0 Tester 10:30:26 cancella l'esecuzione expert
DH 2 Tester 10:30:26 OnTick cancellato
CD 3 Tester 10:30:26 fermato sull'82% dell'intervallo di prova
ON 3 Tester 10:30:26 tester fermato fuori
KF 0 Tester 10:30:26 agente di prova spento

 
Lazarev:

Ditemi come scrivere multicurrency, il mio multicurrency mostra risultati diversi a seconda di quale coppia metterlo nel tester.

Tale problema in onTick, e nella funzione onTimer, e hanno anche differenze

significa che testando solo 1 coppia ottengo un sacco di varianti, e non posso ottimizzare

in nessun modo - finché non ci sono eventi ontick indipendenti per coppie diverse e c'è un legame al grafico - non ha senso scrivere un multivariante
 
Loky:
Assolutamente no, finché non ci sono eventi ontick indipendenti per diverse coppie e c'è un legame con il grafico, non ha senso scrivere un EA multicurrency.
Se solo il TS sta facendo pips entro 2-3 spreads, non di più.
 
Loky:
In nessun modo, finché non ci sono eventi ontick indipendenti per le diverse coppie e il binding al grafico - non ha senso scrivere un EA multicurrency
Quindi, gli eventi indipendenti, sia su tick di diverse coppie, sia su qualsiasi barra sono già stati implementati e gentilmente forniti da Konstantin Gruzdev (Lizar) - l'articolo. È una soluzione eccellente e funziona molto bene. Controllato)))
 
tol64:
Quindi gli eventi indipendenti, sia su tick di diverse coppie, sia su qualsiasi barra è già stato implementato e gentilmente fornito da Konstantin Gruzdev (Lizar) - articolo. È una soluzione eccellente e funziona molto bene. Testato.)))

Abbiamo bisogno di una funzionalità completa, non solo per le zecche.

Ma il problema principale della multicurrency non è che il linguaggio stesso (il concetto stesso di MQL) non permette di organizzare l'elaborazione di più thread all'interno del programma.

Inoltre la "filosofia" di creare multicurrency è alla ricerca di qualche modello-concetto astratto.

A mio parere, alcune strategie di monocurrency possono essere paragonate a scolari che hanno completato l'istruzione primaria, e alcune a scolari che hanno finito la scuola e sono pronti per essere iscritti al college. Per quanto riguarda gli adulti, secondo me, continuando questa analogia, possiamo supporre che al momento si stanno preparando per andare a scuola e tutto è ancora davanti a loro.

Naturalmente, molto è già stato fatto nel campo dello sviluppo multicurrency, sia dagli sviluppatori che dagli appassionati come Konstantin. Direi addirittura che in questo momento abbiamo fatto un salto evolutivo da una cellula "non vivente" al livello degli organismi unicellulari. Ma è qui che inizia il percorso più lungo e interessante - il percorso di sviluppo degli organismi biolagici complessi.

 
tol64:
Quindi, gli eventi indipendenti, come per i tick di diverse coppie, e per qualsiasi barra, sono già stati implementati, e gentilmente forniti da Konstantin Gruzdev (Lizar) - articolo. È una soluzione eccellente e funziona molto bene. Controllato)))

Niente di chiaro in questa implementazione. Interessante la corretta formulazione del problema nel post precedente.

"Il linguaggio stesso (il concetto stesso di MQL) non permette di organizzare l'elaborazione di più thread all'interno di un programma"

Una volta che la funzione OnChartEvent() viene avviata per l'esecuzione e mentre il codice per elaborare l'evento di arrivo di un nuovo tick di una delle coppie viene eseguito, tutte le altre coppie con i propri eventi onTick avranno un riposo!



 
Loky:
Non manca nulla di specifico in questa implementazione.

Puoi essere specifico su cosa manca in questa implementazione?

Loky:
Interessante ha formulato correttamente il problema in un post precedente.

L'implementazione del multithreading in MQL5 è una questione di tempo. Questo non è più un problema.

 

Lizar:

L'implementazione del multithreading in MQL5 è una questione di tempo. Non è più un problema.

MQL5 + multithreading = MQL6. Credo di sì (sarò felice di sbagliarmi).
 
Lizar:

Puoi essere specifico su cosa manca in questa implementazione?

1. un buon tentativo di risolvere uno dei problemi principali della creazione di una stampella multipla. Il risultato di questo tentativo non può più essere chiamato una stampella, ma piuttosto una protesi ad alta tecnologia. Nonostante tutti i suoi vantaggi, questa soluzione non elimina tutti i problemi.

Al momento, per implementare (per un'implementazione NORMALE) la multicurrency in Expert Advisors richiede

a) modifica parametrica del gestore OnTick - aggiunta di un parametro che descrive un simbolo su cui il tick è arrivato

b) Modifica parametrica del gestore OnTrade - ci sono molte opzioni per questo.

c) Organizzare il multi-threading non in un terminale specifico o in un grafico specifico, ma in un Expert Advisor specifico. Per multithreading intendo la situazione in cui in una specifica EA diversi gestori di eventi o diversi blocchi di codice possono essere eseguiti allo stesso tempo.

2. Il multithreading non è solo un problema dei montanti, ma per loro è uno degli scogli principali. Finché non sarà implementato, anche le ottime soluzioni "alternative" saranno solo stampelle.

PS

Per quanto riguarda gli eventi standard implementati in MQL5 - ho già scritto una volta che questo insieme di eventi è il minimo consentito, e gli sviluppatori dovrebbero pensare ad implementare eventi aggiuntivi (sotto forma di gestori specifici o utilizzando la libreria standard). Per esempio, l'apparizione di una nuova barra può essere implementata come un gestore standard OnNewBar (eventualmente con parametri - simbolo e periodo).

Документация по MQL5: Стандартная библиотека
Документация по MQL5: Стандартная библиотека
  • www.mql5.com
Стандартная библиотека - Документация по MQL5
 
Se ci sediamo e parliamo di demagogia)), aspetteremo le conseguenze dell'Eurochief... e la-la-la...