Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
2012.02.26 10:57:51 La qualità del test della storia analizzata è 100%.
2012.02.26 10:57:51 Core 1 EURUSD,H1: test di experts\pattern10000.ex5 dal 2009.12.01 00:00 al 2012.02.10 00:00 iniziato
......
Tutto sembra andare bene nei log, ma prova a cercare un errore nell'Expert Advisor.
Da un'ispezione sommaria del codice, per esempio, ho scoperto che il programma usa 3 file, ma solo uno è elencato nelle proprietà.
#property tester_file "primer_massivstarihpatternovdlyaraboty.csv"
ha cambiato il codice - ora si può vedere l'errore
2012.02.26 11:24:56 Core 1 2009.12.01 00:00:00 error = 5004
errore di apertura del file - anche se il file è in C:\ProgramData\MetaQuotes\Terminal\Common\Files e #property tester_file "primer_massivstarihpatternovdlyaraboty.csv" e il flag FILE_COMMON è controllato
Ciao! Sto scrivendoun sempliceindicatore multicurrency per visualizzare 2 strumenti (coppie di valute) sullo stesso grafico. Ditemi quale funzione usare per selezionare ed elaborare i dati per il disegno di un dato strumento. Se avete un piccolo esempio vi sarà molto grato, grazie!
Ora l'algoritmo nudo del mio grafico attuale si presenta così
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[])
{
int i=0;
bool vol=true;
if(i<prev_calcolato) i=prev_calcolato-1;
while(i<rates_total && !IsStopped())
{
ExtCloseBuffer[i]=close[i];
se(i>0)
{
if(close[i]>close[i-1]) vol=true;
if(close[i]<close[i-1]) vol=falso;
}
i++;
}
return(rates_total);
}
ha cambiato il codice - ora si può vedere l'errore
2012.02.26 11:24:56 Core 1 2009.12.01 00:00:00 error = 5004
errore di apertura del file - anche se il file è in C:\ProgramData\MetaQuotes\Terminal\Common\Files e #property tester_file "primer_massivstarihpatternovdlyaraboty.csv" e il flag FILE_COMMON è controllato
Ciao! Sto scrivendoun sempliceindicatore multicurrency per visualizzare 2 strumenti (coppie di valute) sullo stesso grafico. Ditemi quale funzione usare per selezionare ed elaborare i dati per il disegno di un dato simbolo. Se avete un piccolo esempio vi sarà molto grato, grazie!
Ora il mio algoritmo per la visualizzazione del grafico corrente assomiglia a questo
...È possibile ricevere i dati attraverso la struttura MqlRates o separatamente per ogni serie temporale in MQL5 Riferimento / Accesso alle serie temporali e agli indicatori
È meglio usare MqlRates, perché memorizza i dati sul tempo della barra (è importante, perché le barre di diversi strumenti non sono sincronizzate), ma è più economico usare le serie temporali.
Ma il problema principale degli Expert Advisors multivaluta è la differenza di sincronizzazione - non tutte le barre dell'indice richiesto in un simbolo corrispondono allo stesso indice in un altro simbolo. E più ci si addentra nella foresta e più i partigiani sono spessi, lo spostamento degli indici si sta accumulando.
Ancora una volta dovremo risolvere il problema della diversa lunghezza degli array (a causa della diversa quantità di dati su diversi strumenti).
E il terzo problema, non tutte le barre dell'indicatore grafico possono essere mostrate (per esempio, non c'è una barra per un simbolo nativo, ma per altri, dove metterla?)
Questi sono i problemi che si profilano.
Guardato, messo il file in Mql5\Tester\Files
ma il tester sta fermo.
La proprietà #property tester_file ha lo scopo di evitare di mettere qualcosa da qualche parte a mano .
file tester
stringa
Nome del file per il tester, specificando la sua estensione, racchiuso tra doppi apici (come una stringa costante). Il file specificato verrà passato al tester per il lavoro. I file di input per i test, se necessario, dovrebbero sempre essere specificati
Se qualche file datafile .csv è richiesto per il funzionamento del programma, e si trova in terminal_directory\MQL5\Files, il file verrà automaticamente spostato dal tester nelladirectory testing_agent\MQL5\Files (la #property tester_file datafile.csv deve essere specificata a questo scopo).
cambiato il codice - ora l'errore è visibile
2012.02.26 11:24:56 Core 1 2009.12.01 00:00:00 error = 5004
errore di apertura del file - anche se il file è in C:\ProgramData\MetaQuotes\Terminal\Common\Files e #property tester_file "primer_massivstarihpatternovdlyaraboty.csv" e il flag FILE_COMMON è controllato
L'errore è visibile, ma non è chiaro a quale file
Perché nelle proprietà ha commentato altri file? E a proposito c'è un errore: la stessa estensione, anche se il testo è uno di loro "signal10000.dat".
Non ho i tuoi file, quindi controlla tu stesso.
Ora, come facciamo a trovare questa sfortunata cartella, the_agent_testing_directory\MQL5\Files? A partire da Windows Vista, il sistema di sicurezza e la politica di sicurezza sono diventati molto più complessi e possono confondere chiunque. Il modo più semplice per trovare questa cartella è chiedere al tester, lui sa esattamente dove si trovano gli agenti di prova. Nel Tester Log alla fine di un test, viene sempre scritto il percorso dei log del tester, per esempio:
Quindi la cartella del testing agent è qui - C:\ProgrammiMetaTrader 5 Alpari\Tester\Agent-127.0.0.1-3000\logs\20120226.log.
Non si può fare a testa o croce. Non si può. MetaQuotes Software Corp. è contraria. // Io penso che sia sbagliato, ma loro potrebbero sapere meglio.
C'è un'opzione che richiede un po' di tempo: usare la modalità matematica. Se non è troppo disturbo, fate una prova.
Ora, come facciamo a trovare questa sfortunata cartella, the_agent_testing_directory\MQL5\Files? A partire da Windows Vista, il sistema di sicurezza e la politica di sicurezza sono diventati molto più complessi e possono confondere chiunque. Il modo più semplice per trovare questa cartella è chiedere al tester, lui sa esattamente dove si trovano gli agenti di prova. Il percorso dei log del tester è sempre scritto nel Tester Log alla fine del test, per esempio:
Quindi, la cartella dell'agente di prova si trova qui - C:\Programmi\MetaTrader 5 Alpari\Tester\Agent-127.0.0.1-3000\logs\20120226.log.
ora dà
2012.02.26 15:47:46 Tester file C:-Usersopenlive\AppData\Roaming\MetaQuotes\Terminal\9C3619DD286B60B1DB9B989A2FFC701\MQL5\Files\signal10000.csv open error [32]