Che diavolo sta succedendo? - pagina 7

 

Se SHARE_READ ha risolto il problema, allora stavate aprendo esattamente lo stesso file da copie parallele di EA.

E la tua affermazione "nessuna condivisione" era falsa, come ho sottolineato sopra.

Tutto sommato, è spaventoso per voi.

 
Renat Fatkhullin:

Se SHARE_READ ha risolto il problema, allora stavate aprendo esattamente lo stesso file da copie parallele di EA.

E la tua affermazione "nessuna condivisione" era falsa, come ho sottolineato sopra.

Tutto sommato, è spaventoso per te.

Non ho capito bene.

Copie parallele dell'EA sono apparse nell'ottimizzatore. È logico aspettarsi che l'ottimizzatore faccia anche copie parallele dei file a cui accedono questi EA.

Il mio Expert Advisor non ha bisogno di SHARE_READ a priori. Quindi qui abbiamo cosa? Se l'Expert Advisor gestisce un file, deve "armeggiare" appositamente per l'ottimizzatore.

Ne terrò conto, ma penso che questo non sia giusto. )))

 
Сергей Таболин:

È logico aspettarsi che l'ottimizzatore faccia anche copie parallele dei file a cui questi esperti fanno riferimento.
È spaventoso per te.
 
Renat Fatkhullin:
Spaventoso per te.

Andiamo ))))

Basta scrivere nella documentazione "quando un EA accede a un file,SHARE_READ è obbligatorio per ottimizzarlo!

 
Andrey Dik:

Pensate che una variabile globale EA conservi il suo valore dalle passate esecuzioni dell'ottimizzatore e venga riportata a quelle successive?

Sì,Andrey F. Zelinsky, ha detto bene. quando si ottimizza, tutto ciò che è inizializzato globalmente (non in OnInit) viene inizializzato solo una volta.

p/s// La ragione del problema di TC è divertente - Reti Neurali, AI e così via... e lavorare con i file non è importante ))

 
Aleksey Mavrin:

Sì, Andrey F. Zelinsky, ha detto bene. Durante l'ottimizzazione tutto ciò che è inizializzato globalmente (non in OnInit) viene inizializzato solo una volta.

p/s// La causa del problema di TC è divertente - Reti Neurali, AI e così via... e la gestione dei file non è importante ))

Non è una brutta cosa quando si è vecchi.

 

Caro, solo una parola, perché nessuno, per il quale lavorare con i file è importante, finché non l'ho stampato, ha suggerito che anche questo potrebbe essere il problema ;) :) Comunque, questo è risolto.

Ora una domanda distratta: qual è la differenza tra le seguenti linee?

   filename = "ERR_dir\\"+filename+(MQLInfoInteger(MQL_OPTIMIZATION) ? ".opt" : ".tst");
   filename = "ERR_dir\\"+filename+(MQLInfoInteger(MQL_TESTER) ? ".tst" : ".opt");

E, se possibile, una spiegazione - perché?

 

se il file è scritto su COMMON, è richiesto che abbia SHARE_READ e un controllo di scrittura piuttosto complicato. È abbastanza decente non sparare al tallone in pubblico.

In generale, è buona pratica che i consulenti non scrivano nulla nel comune. Lo possono leggere, ma è scritto o copiato lì dal commerciante che ne è personalmente responsabile. Per tutti gli Expert Advisors in tutti i terminali, queste sono parole date dall'alto.

Se un file viene scritto in una directory comune senza SHARE_XXX, ma l'ottimizzatore genera errori di accesso condiviso, questo è un bug degli sviluppatori del terminale
 
Si può testare senza ottimizzazione.
 
Сергей Таболин:

Caro, solo una parola, perché nessuno per il quale lavorare con i file è importante, finché non l'ho stampato, ha suggerito che questo potrebbe essere il problema ;) :) Comunque, questo è risolto.

Ora una domanda distratta: qual è la differenza tra le seguenti linee?

E, se puoi spiegare - perché?


nel secondo caso darà sempre .tst