Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 617

 
Alexander Kharlamov:

Ciao!

MT4 ha un comando if (IsTesting()

C'è un analogo in MT5?

Vorrei farle un paio di domande, grazie.

P.S. E un'altra cosa - in modalità normale il mio Expert Advisor scrive un file di log, ma se lo eseguo in tester in MT5, non lo vedo nella solita cartella Tester, come era in M4.

Scegliete ciò di cui avete bisogno:

ENUM_MQL_INFO_INTEGRALE

Identificatore

Descrizione

Tipo di proprietà

MQL_MEMORY_LIMIT

Dimensione massima possibile della memoria dinamica per un programma MQL5 in MB

int

MQL_MEMORIA_USATA

Quanta memoria usa un programma MQL5 in MB

int

MQL_PROGRAMMA_TIPO

Tipo di programma mql5

ENUM_PROGRAMMA_TIPO

MQL_DLLS_ALLOWED

Permesso di usare la DLL perquesto programma in esecuzione.

bool

MQL_TRADE_ALLOWED

Permessodi commerciare perquesto programma in corso

bool

MQL_SIGNALS_ALLOWED

Permettere dilavorare con i segnali diquesto programma

bool

MQL_DEBUG

Segno di un programma in esecuzione in modalità debug

bool

MQL_PROFILO

Segno dell'esecuzione di un programma nella modalità di profilazione del codice

bool

MQL_TESTER

Segno dell'esecuzione di un programma nel tester

bool

MQL_OPTIMIZATION

Segno di un programma in esecuzione durante l'ottimizzazione

bool

MQL_VISUAL_MODE

Un segno che un programma in esecuzione è in modalità di test visivo

bool

MQL_FRAME_MODE

Segno dell'esecuzione dell'Expert Advisor su un grafico nellamodalità frame di raccolta dei risultati di ottimizzazione

bool

TIPO DI LICENZA MQL

Il tipo di licenza del modulo EX5. La licenza si riferisce al modulo EX5, da cui la richiesta è fatta usando MQLInfoInteger(MQL_LICENSE_TYPE).

ENUM_LICENSE_TYPE

Informazioni sui file: aiuto diFileOpen

Il file viene aperto nella cartella del terminale client nella sottocartella MQL5\Files (o in caso di test, nella cartella_agent_testing\MQL5\Files). Se FILE_COMMON è specificato tra i flag, il file viene aperto nella cartella comune di tutti i terminali client \Terminal\Common\Files.

Per esempio la directory dei dati

C:\Users\KVN\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075\MQL5\Files,

allora le directory degli agenti di prova (usando l'agente #1 come esempio) saranno qui:

C:\Users\KVN\AppData\Roaming\MetaQuotes\Tester\D0E8209F77C8CF37AD8BF550E51FF075\Agent-127.0.0.1-3000\MQL5\Files

 
Karputov Vladimir:

Scegliete ciò di cui avete bisogno:

ENUM_MQL_INFO_INTEGRALE

Identificatore

Descrizione

Tipo di proprietà

MQL_MEMORY_LIMIT

Dimensione massima possibile della memoria dinamica per un programma MQL5 in MB

int

MQL_MEMORIA_USATA

Quanta memoria usa un programma MQL5 in MB

int

MQL_PROGRAMMA_TIPO

Tipo di programma mql5

ENUM_PROGRAMMA_TIPO

MQL_DLLS_ALLOWED

Permesso di usare la DLL perquesto programma in esecuzione.

bool

MQL_TRADE_ALLOWED

Permessodi commerciare perquesto programma in corso

bool

MQL_SIGNALS_ALLOWED

Permettere dilavorare con i segnali diquesto programma

bool

MQL_DEBUG

Segno di un programma in esecuzione in modalità debug

bool

MQL_PROFILO

Segno dell'esecuzione di un programma nella modalità di profilazione del codice

bool

MQL_TESTER

Segno dell'esecuzione di un programma nel tester

bool

MQL_OPTIMIZATION

Segno di un programma in esecuzione durante l'ottimizzazione

bool

MQL_VISUAL_MODE

Un segno che un programma in esecuzione è in modalità di test visivo

bool

MQL_FRAME_MODE

Segno dell'esecuzione dell'Expert Advisor su un grafico nellamodalità frame di raccolta dei risultati di ottimizzazione

bool

TIPO DI LICENZA MQL

Il tipo di licenza del modulo EX5. La licenza si riferisce al modulo EX5, da cui la richiesta è fatta usando MQLInfoInteger(MQL_LICENSE_TYPE).

ENUM_LICENSE_TYPE

Informazioni sui file: aiuto diFileOpen

Il file viene aperto nella cartella del terminale client nella sottocartella MQL5\Files (o in caso di test, nella cartella_agent_testing\MQL5\Files). Se FILE_COMMON è specificato tra i flag, il file viene aperto nella cartella comune di tutti i terminali client \Terminal\Common\Files.

Per esempio la directory dei dati

C:\Users\KVN\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075\MQL5\Files,

allora le directory degli agenti di prova (usando l'agente #1 come esempio) saranno qui:

C:\Users\KVN\AppData\Roaming\MetaQuotes\Tester\D0E8209F77C8CF37AD8BF550E51FF075\Agent-127.0.0.1-3000\MQL5\Files

Grazie, con la sostituzione di IsTesting immediatamente comprensibile, e il file di log per risolvere, in modalità commercio, scrivo il file, ma nel test non è. (
 
Alexander Kharlamov:
Grazie, capisco tutto in una volta con la sostituzione di IsTesting, e mi occuperò del file di log, in modalità commercio il mio file viene scritto, ma nel test no. (
Nello Strategy Tester, basta cliccare sulla scheda "Log", poi cliccare con il tasto destro e selezionare la voce più in alto nel menu contestuale: "Open". Questo lancerà l'Explorer, che aprirà immediatamente la cartella con i log dello Strategy Tester.
 
Puoi dirmi per favore se metto un EA su 10 grafici diversi o su 10 grafici identici, ma con TF diversi, devo andare nelle proprietà dell'EA su ogni grafico e cambiare il numero Magic?

Grazie
 
Ivan Butko:
Puoi dirmi per favore se metto un EA su 10 grafici diversi o su 10 grafici identici, ma con TF diversi, devo andare nelle proprietà dell'EA su ogni grafico e cambiare il numero Magic?

Grazie
Se lo metti su diversi grafici, molto probabilmente andrà bene. Se lo metti sullo stesso grafico con diversi TF, molto probabilmente non funzionerà correttamente, ma per avere una risposta esatta alla tua domanda, devi guardare il codice.
 
BlackTomcat:
Per evitare il fastidio di trovare la cartella dei logs, basta passare alla scheda "Log" in Strategy Tester, cliccare lì e selezionare "Open" dal menu contestuale che si apre. Questo lancerà l'Explorer, che aprirà immediatamente la cartella con i log dello Strategy Tester.
Non ho scritto del registro standard di cui stai parlando. Creo il mio proprio registro e scrivo in esso ciò di cui ho bisogno. nel commercio funziona nel tester non crea il file.
 
Alexander Kharlamov:
Non ho scritto il registro standard di cui parli. Creo il mio proprio registro e scrivo in esso ciò di cui ho bisogno. nel commercio funziona nel tester non crea il file.

Comunque si cerchi di creare il file - i file saranno creati all'interno della sandbox. Come trovare i file:

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

Domande dai principianti

Karputov Vladimir, 2016.09.06 10:19

...

Informazioni sui file: aiuto diFileOpen

Il file viene aperto nella cartella del terminale client nella sottocartella MQL5\Files (o in caso di test, nella directory_testing_agent\MQL5\Files). Se FILE_COMMON è specificato tra i flag, il file viene aperto nella cartella comune di tutti i terminali client \Terminal\Common\Files.

Per esempio la directory dei dati

C:\Users\KVN\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075\MQL5\Files,

allora le directory degli agenti di prova (usando l'agente #1 come esempio) saranno qui:

C:\Users\KVN\AppData\Roaming\MetaQuotes\Tester\D0E8209F77C8CF37AD8BF550E51FF075\Agent-127.0.0.1-3000\MQL5\Files


AncheTERMINAL_DATA_PATH aiuterà.
 
Karputov Vladimir:

Comunque si cerchi di creare il file - i file saranno creati all'interno della sandbox. Come cercare i file:


AncheTERMINAL_DATA_PATH aiuterebbe!

Qui è come in MT5!!! )) l'ha trovato! )) GRAZIE!

Stavo guardando nella cartella del terminale ed è nella cartella Tester... ma non in quella del terminale!

 

Ditemi, ho scritto correttamente l'indicatore del prezzo di chiusura o ci sono delle insidie che non ho considerato?

#property indicator_chart_window
#property indicator_buffers 1
#property indicator_plots   1
#property  indicator_color1  clrRed
#property  indicator_type1   DRAW_LINE 

double Buffer[];

void OnInit()
{
  SetIndexBuffer(0, Buffer, INDICATOR_DATA); 
}

int OnCalculate( const int rates_total,
                 const int prev_calculated,
                 const datetime &time[],
                 const double &open[],
                 const double &high[],
                 const double &low[],
                 const double &close[],
                 const long &tick_volume[],
                 const long &volume[],
                 const int &spread[] )
{
  return(rates_total - prev_calculated + ::ArrayCopy(Buffer, close, prev_calculated, prev_calculated));
}
 
Può dirmi perché questo potrebbe essere il caso? :
//--- По отдельности

Fun_1();     // Работает
//----------------------
Fun_2();     // Работает

//--- Совместно

Fun_1();     // Работает
Fun_2();     // не Работает
//----------------------
Fun_2();     // Работает
Fun_1();     // не Работает
Fun_1() e Fun_2() sono simili.