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
Dove e come viene generato MarketWatch?
come ho capito questo blocco sta cercando di aggiungere un simbolo alla lista, con controllo del risultato.
Ma se Expert Advisor è una coppia di valute multiple (che non è ovvio dall'esempio precedente).
Questo codice è in un ciclo di coppie di valute, Exp_Symbol in ogni passaggio, tranne il primo, è una coppia di valute "straniera". Se ci sono cinque coppie di valute, SymbolSelect(Exp_Symbol, true) sarà chiamato cinque volte per cinque simboli diversi.
La chiamata alle funzioni SymbolSelect(), SymbolIsSynchronized(), CopyRates() nel mio codice da simboli "alieni" (la storia dovrebbe essere aggiornata di conseguenza). Al primo test ci sono dati, ma al secondo test non ci sono dati e Expert Advisor si blocca nel tester.
Questo codice è in un ciclo di coppie di valute, Exp_Symbol in ogni passaggio tranne il primo è una coppia di valute "aliena". Ho una chiamata alle funzioni SymbolSelect(), SymbolIsSynchronized(), CopyRates() da simboli "alieni" (quindi la storia dovrebbe essere scambiata). Al primo test ci sono dati, ma al secondo test non ci sono dati e Expert Advisor si blocca nel tester.
Puoi inviare un esperto e una descrizione delle impostazioni di ottimizzazione/test a servicedesk?
Voglio scaricare i dati di gennaio 2009. Ho scaricato i dati per 15 minuti e un'ora, ma non posso scaricare i dati per 5 minuti, dice che non c'è storia. Perché non si scarica la storia di 5 minuti?
void OnStart()
{
int size = 25;
datetime dateFrom;
datetime dateTo;
MqlRates rates[];
MqlDateTime stDate;
int FileHandle;
stDate.day = 1;
stDate.hour = 0;
stDate.mon = 1;
stDate.year = 2009;
dateFrom = StructToTime( stDate );
stDate.day = 31;
dateTo = StructToTime( stDate );
ArraySetAsSeries(rates,true);
int copied=CopyRates(Symbol(), PERIOD_M5, dateFrom, dateTo, rates);
for(int i=0;i<100;i++)
{
if(GetLastError()!=0)
{
Sleep(5000);
copied=CopyRates(Symbol(), PERIOD_M5, dateFrom, dateTo, rates);
}
else
{
break;
}
Print("Нет истории, проход № " + i);
}
if(copied>0)
{
Print("Скопировано баров: "+IntegerToString(copied));
//string format="open = %G, high = %G, low = %G, close = %G, volume = %d";
string out;
size = ArraySize(rates);
ResetLastError();
FileHandle=FileOpen("Data.csv",FILE_WRITE|FILE_CSV);
if(FileHandle==INVALID_HANDLE)
{
Print("Ошибка " + IntegerToString((GetLastError())));
}
for(int i=size-1;i>=0;i--)
{
FileWrite(FileHandle, TimeToString(rates[i].time), DoubleToString(rates[i].open, _Digits), DoubleToString(rates[i].high, _Digits), DoubleToString(rates[i].low, _Digits), DoubleToString(rates[i].close, _Digits));
}
Print("size = " + FileSize(FileHandle));
FileFlush(FileHandle);
FileClose(FileHandle);
}
else
{
Print("Не удалось получить исторические данные по символу ",Symbol());
Print("Ошибка " + GetLastError());
}
}
Ho deciso di controllare come funziona la funzione ArrayResize con tutti i parametri. Compila senza problemi, l'auto-trading è abilitato ovunque, ma l'Expert Advisor si scarica dal grafico senza nemmeno andare in OnInit.
Qual è il problema, non riesco a capirlo.
Ho deciso di controllare come funziona la funzione ArrayResize con tutti i parametri. Compila senza problemi, l'auto-trading è abilitato ovunque, ma l'Expert Advisor si scarica dal grafico senza nemmeno andare in OnInit.
Qual è il problema, non riesco a capirlo.
Banale fuori portata, controllare nella scheda "Esperti
Riservare non è un'allocazione, il vostro array è ancora di cinque elementi, anche se la memoria è allocata per 10.
Banale fuori portata, guarda la scheda "Esperti".
Riservare non è allocare, il vostro array è ancora di cinque elementi, anche se avete allocato memoria per 10.
Ho deciso di controllare come funziona la funzione ArrayResize con tutti i parametri. Compila senza problemi, l'auto-trading è abilitato ovunque, ma l'Expert Advisor si scarica dal grafico senza nemmeno andare in OnInit.
Salve,
Io, dopo aver testato e abilitato l'ottimizzazione, ottengo questo:
Core 1 genetic pass (127, 1195) testato con errore "critical runtime error
Il test è normale.