Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
¿Dónde y cómo se genera MarketWatch?
Según he entendido, este bloque trata de añadir un símbolo a la lista, con la comprobación del resultado.
Pero si el Asesor Experto es un par de divisas múltiples (que no es obvio desde el ejemplo anterior).
Este código está en un bucle de pares de divisas, Exp_Symbol en cada pasada, excepto la primera, es un par de divisas "extranjero". Si hay cinco pares de divisas, SymbolSelect(Exp_Symbol, true) será llamado cinco veces para cinco símbolos diferentes.
La llamada a las funciones SymbolSelect(), SymbolIsSynchronized(), CopyRates() en mi código por símbolos "ajenos" (el historial debe ser actualizado en consecuencia). En la primera prueba hay datos, pero en la segunda no hay datos y el Asesor Experto se bloquea en el probador.
Este código está en el bucle de pares de divisas, Exp_Symbol en cada pase excepto el primero es el par de divisas "extranjero". Tengo una llamada a las funciones SymbolSelect(), SymbolIsSynchronized(), CopyRates() por símbolos "ajenos" (de ahí que el historial deba ser intercambiado). En la primera prueba hay datos, pero en la segunda no hay datos y el Asesor Experto se bloquea en el probador.
¿Puede enviar un experto y una descripción de la configuración de optimización/prueba a servicedesk?
Quiero descargar los datos de enero de 2009. He descargado los datos de 15 minutos y hora, pero no puedo descargar los datos de 5 minutos, dice que no hay historial. ¿Por qué no se descarga el historial de 5 minutos?
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());
}
}
He decidido comprobar cómo funciona la función ArrayResize con todos los parámetros. Compila sin problemas, el auto-trading está habilitado en todas partes, pero el Asesor Experto se descarga del gráfico sin siquiera ir a OnInit.
Cuál es el problema, no puedo entenderlo.
He decidido comprobar cómo funciona la función ArrayResize con todos los parámetros. Compila sin problemas, el auto-trading está habilitado en todas partes, pero el Asesor Experto se descarga del gráfico sin siquiera ir a OnInit.
Cuál es el problema, no puedo entenderlo.
Banal fuera de rango, comprobar en la pestaña "Expertos"
Reservar no es una asignación, tu array sigue siendo de cinco elementos, aunque la memoria esté asignada para 10.
Banal fuera de rango, mira la pestaña "Expertos".
Reservar no es asignar, tu array sigue siendo de cinco elementos, aunque hayas asignado memoria para 10.
He decidido comprobar cómo funciona la función ArrayResize con todos los parámetros. Compila sin problemas, el auto-trading está habilitado en todas partes, pero el Asesor Experto se descarga del gráfico sin siquiera ir a OnInit.
Hola,
Yo, después de probar y activar la optimización, consigo esto:
El paso genético del núcleo 1 (127, 1195) se ha probado con el error "error crítico de ejecución
La prueba es normal.