file tester

stringa

Nome del file per il tester, specificando l'estensione, racchiuso tra doppi apici (come una stringa costante). Il file specificato sarà passato al tester per il funzionamento. I file di input per i test, se necessario, dovrebbero sempre essere specificati

Questo viene dall'aiuto. Il parametro"tester_file" identifica in modo univoco il nome del file.

Da qui la domanda: come può essere testato un EA, se diversi file devono essere aperti in lettura?

Ciao!

Questo costrutto (per esempio) :

se (Buf[i]>=0 && MACD_i<=0)

Operatore1

.............

OperatoreN


In questo caso, Operator1......OperatorN sarà sempre eseguito

Poiché non ci sono parentesi di apertura dopo if (Condition) { }

Quando si controllano gli errori di sintassi, si prega di fare in modo che il compilatore generi un avvertimento su questo problema.

A volte le costruzioni sono enormi e a più livelli ed è molto difficile trovare un errore in questi casi.

Se non c'è { }, allora l'Operatore2 sarà sempre eseguito... OperatoreN

e Operator1 solo quando la condizione è soddisfatta.

Questa è una costruzione normale e un avvertimento sarebbe inappropriato in questo caso.

Fia:

Perché le costruzioni possono essere enormi e a più livelli ed è molto difficile cercare un errore allora.

Cosa (o chi) ti impedisce di mettere il { } mancante?

Fia:

...

Perché le costruzioni possono essere enormi e a più livelli ed è molto difficile cercare un errore allora.

Strutturate il vostro codice. Allora il codice non sarà "enorme e multilivello".

Ciao!

Per favore aiutatemi, sono bloccato...

   handle=FileOpen(nam,FILE_CSV|FILE_READ);
   if(handle>0)
      {
      while(! FileIsEnding(handle))
         {
         sss=FileReadString(handle);
         Print(sss);
         for(x=2; x<=6; x++)
            {
            X=FileReadNumber(handle);
            Print(X);
            }
         }
      FileClose(handle);
      }

C'è questo codice - letto dal file CSV (nel trailer). Dopo l'esecuzione di FileReadString, non è il nome del simbolo (come nel file), ma un lungo insieme di niente. Ed ecco la fine del file. Il separatore è tab, quindi non dovrebbe essere specificato esplicitamente in FileOpen, charset predefinito, numero di caratteri - prima del separatore (CSV). Dove ho sbagliato - il codice è un po'?

File:
file.zip  1 kb
muallch:

Ciao!

Per favore aiutatemi, sono bloccato...

C'è questo codice - letto dal file CSV (nel trailer). Dopo l'esecuzione di FileReadString, non è il nome del simbolo (come nel file), ma un lungo insieme di niente. Ed ecco la fine del file. Il separatore è tab, quindi non dovrebbe essere specificato esplicitamente in FileOpen, charset predefinito, numero di caratteri - prima del separatore (CSV). Dove ho sbagliato - il codice è un po'?

void OnStart()
  {
   string nam="file.csv";
   int handle=FileOpen(nam,FILE_CSV|FILE_READ|FILE_ANSI);

   if(handle<0)
     {
      Print("Неудачная попытка открыть файл по абсолютному пути");
      Print("Код ошибки ",GetLastError());
     }

   if(handle>0)
      {
      while(! FileIsEnding(handle))
         {
         string sss=FileReadString(handle);
         Print(sss);
         for(int x=2; x<=6; x++)
            {
            double X=FileReadNumber(handle);
            Print(X);
            }
         }
      FileClose(handle);
      }
  }

Tutto a causa di FILE_ANSI?

Non avevo notato l'elefante, grazie!

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов - Документация по MQL5
muallch:

file tester

stringa

Nome del file per il tester, specificando l'estensione, racchiuso tra doppi apici (come una stringa costante). Il file specificato sarà passato al tester per il funzionamento. I file di input per i test, se necessario, dovrebbero sempre essere specificati

Questo viene dall'aiuto. Il parametro"tester_file" identifica in modo univoco il nome del file.

Da qui la domanda: come possiamo testare un EA se diversi file devono essere aperti per la lettura?

O forse puoi suggerire anche questo?
muallch:
Può suggerire anche questo?
Impostare alcuni #tester_file nel programma