Errori, bug, domande - pagina 322

 
Renat:
Quindi la build 404 del tester va in crash anche quando si testa il Moving Average Expert Advisor standard?
La confusione si verifica sia con la media mobile che con il MACD...
 
52_rus:

Test: campione MACD per un anno su TF H1. Subito dopo il primo test, il secondo test: MACD Sample per un anno sul TF Н4 ; nel rapporto abbiamo i risultati del primo test su TF H1

Se aspettiamo 5 minuti dopo il primo test e poi eseguiamo il test successivo su un altro TF, otteniamo un nuovo rapporto corretto, diverso da quello del primo test.

Costruire 404

Un link a un problema simile: https://www.mql5.com/ru/forum/3139

Grazie per il messaggio. Riprodotto, lo correggeremo.
 

Buon pomeriggio a tutti e a tutte. Scritto del codice per l'Expert Advisor:

   double Open1[1],Open2[1];
   int data1=CopyOpen(Symbol1,0,1,1,Open1);
   int data2=CopyOpen(Symbol1,0,5,1,Open2);
   double ss=MathAbs(Open1[0]-Open2[0]);

Calcola la differenza tra 1 e 5 barre. Stampato nel registro

e ho ottenuto questo

ss è una differenza di modulo, prima di questa linea ci sono i numeri aperti 1 e 5 barre,

come potete vedere la differenza non è chiaro come viene calcolata ed è la stessa per tutti gli i-esimi

bar, valuta e TF. Appare in 1 caso su 10. Forse è un servizio o mi sbaglio su qualcosa?

... mi sono sbagliato?

 
alexluek:

Buon pomeriggio a tutti e a tutte. Scritto del codice per l'Expert Advisor:

Calcola la differenza tra 1 e 5 barre. Uscita nel registro tramite Print

Che ne dite di questo?

Print(DoubleToString(ss,SymbolInfoInteger(Symbol1,SYMBOL_DIGITS)));
 
alexvd:

Che ne dite di questo?

OK, controllerò tra 3-4 ore quando il tester sarà finito,

ma non è chiaro perché questo venga fatto (conversione di numeri)in Print

se lo calcola in questo modo ed è così che funziona l'Expert Advisor.

Forse lo accenni se fai lo stesso nel codice?

Poi sarà possibile provare la vostra costruzione nel codice

Документация по MQL5: Общие функции / Print
Документация по MQL5: Общие функции / Print
  • www.mql5.com
Общие функции / Print - Документация по MQL5
 

Lo stesso ...

 
alexluek:

Lo stesso ...

Normalizzare la differenza

double ss=MathAbs(NormalizeDouble(Open1[0]-Open2[0], SymbolInfoInteger(Symbol1,SYMBOL_DIGITS)));

https://www.mql5.com/ru/articles/1561

https://www.mql5.com/ru/docs/convert/normalizedouble

https://www.mql5.com/ru/docs/basis/types/double

o meglio ancora

double ss=NormalizeDouble(MathAbs(Open1[0]-Open2[0]), SymbolInfoInteger(Symbol1,SYMBOL_DIGITS));
Особенности работы с числами типа double в MQL4 - Статьи по MQL4
  • www.mql5.com
Особенности работы с числами типа double в MQL4 - Статьи по MQL4: примеры использования экспертов, тестирования и оптимизации
 

Proverò tra un'ora o due a rispondere...

 
alexluek:

Proverò tra un'ora o due...

Per cominciare, leggete i numeri reali nella guida.
 

hmmm... È tornato.

possible loss of data due to type conversion

probabilmente manca qualcosa NormalizeDouble

come con la gestione degli array (per esempio, non vogliamo confondere ...[1]-identificare e [0] - utilizzare)

Motivazione: