Probador de Estrategias de MetaTrader 5 y MQL5 Cloud Network - página 26

 
notused:

En el caso de la genética, es comprensible, ya que hay que esperar a que el resto de la población devuelva el resultado.

Ah, así que ese podría ser el punto. Entonces, ¿con los agentes locales rápidos trabajar con "nubes" está contraindicado?
 
Yedelkin:
Ah, así que ese podría ser el punto. ¿Está entonces contraindicado el cloud computing para los agentes locales rápidos?
Depende del número de agentes locales/remotos que tenga: si tiene una docena o dos, es poco probable que la nube marque la diferencia, pero si sólo tiene un par, la nube será más rápida. Para los expertos que realizan pruebas relativamente "rápidas", la nube ayudará incluso cuando haya muchos agentes locales/remotos
 
notused:

Aun así, hay que hacer algo al respecto:

Preste atención a la respuesta devuelta por la nube. Parece que no se ha recibido ni una sola respuesta correcta desde ayer (y los pases son 100% con transacciones y sin errores). La utilidad de la red en ese caso es 0. Y el caso: 12 instrumentos desde principios de año. Aunque hace un par de días a veces había resultados correctos, pero hoy - ninguno.

Teniendo en cuenta que la nube se pagará en breve, no me gustaría tirar el dinero al viento sin ningún resultado (en el modo de prueba obtuve 7 dólares por ayer y hoy por usar la red, aunque, de nuevo, no obtuve nada de ella, y usé la red sólo ayer por la tarde, porque no funcionaba durante el día).

+ a veces la nube pasa a un estado de finalización cuando está llena(!). ¿Cómo puede ser esto si aún quedan unos cuantos miles de pases?

¿Has probado a realizar una única pasada con esos resultados en un agente local?

¿Puede describir los parámetros de inicio, la lista de agentes, los parámetros de optimización en su solicitud a Service Desk + añadir un experto (al menos ex5)? Los registros también serían muy útiles.

Общайтесь с разработчиками через Сервисдеск!
Общайтесь с разработчиками через Сервисдеск!
  • www.mql5.com
Ваше сообщение сразу станет доступно нашим отделам тестирования, технической поддержки и разработчикам торговой платформы.
 
alexvd:

¿Has probado a realizar una sola pasada con estos resultados en un agente local?

¿Puede describir los parámetros de lanzamiento, la lista de agentes, los parámetros de optimización en la aplicación a Service Desk + adjuntar experto (al menos ex5)? Y algunos registros serían realmente útiles.

La pregunta no es para mí, pero sí, lo he probado. En el agente local la prueba pasa sin errores. Se supone que el problema está relacionado con el temporizador (EST = EventSetTimer(3600)), porque en mi caso el error crítico de ejecución se produjo al principio de la prueba (tiempo de prueba - 0 segundos). Texto literal de OnInit (no puedo insertarlo como fuente por alguna razón, IE8):

int OnInit()
{
Print("hh=",hh," mm=",mm," MLEVEL=",MLEVEL," TP=",TP," SL=",SL," TS=",TS);
Print("OnInit comienza SymbolsTotal: ",SymbolsTotal(true),"/",SymbolsTotal(false));


// volteo para la inicialización en el probador
for(uint i=0; i<maxsym; i++)
{
SymbolSelect(SymbolName(i,false),true);
}

EST = EventSetTimer(3600);
si (!EST) {
Comment("Error: EventSetTimer= ", GetLastError();
Print("Error: EventSetTimer= ", GetLastError();

}

for(uint i=0; i<maxsym; i++)
{
ea[i].Init(SymbolName(i,true),PERIOD_M1); // inicializar experto
Print(i,SymbolName(i,true));
}
// ejemplo de inicialización
// ea.Init(Symbol(), PERIOD_M5); // para un plazo fijo
// ea.Init("USDJPY", PERIOD_H2); // para un símbolo y un marco temporal fijos

Print("OnInit termina SymbolsTotal: ",SymbolsTotal(true),"/",SymbolsTotal(false));

return(0);
}

 

¿Alguien puede decirme cómo hacerlo?

Estoy tratando de acelerar la optimización, no quiero (por ejemplo) resultados con una reducción mayor al 30%.

Lo que estoy haciendo es esto:

input double Max_DD_EQ = 30;


double max_eq,max_dd,dd_percent;
bool dd_valid=true;

//+------------------------------------------------------------------+
//| Timer function                                                   |
//+------------------------------------------------------------------+
void OnTimer()
  {
   if(!dd_valid) return; 
   if(MQL5InfoInteger(MQL5_OPTIMIZATION) || MQL5InfoInteger(MQL5_TESTING))
     {
      max_eq=MathMax(max_eq,AccountInfoDouble(ACCOUNT_EQUITY));
      max_dd=MathMax(max_eq-AccountInfoDouble(ACCOUNT_EQUITY),max_dd);
      dd_percent=max_dd/(max_eq*0.01);
      if(dd_percent>Max_DD_EQ) { ClosAllPos(); dd_valid=false; return; }
     }
// дальше идет блок открытия (закрытия) поз

Quiero que la ejecución termine después de superar la reducción permitida.

Pero el probador, después de alcanzar la reducción máxima, cuenta como antes. No quiero carreras vacías (inútiles).

¿Alguna otra opción? ¿O a los desarrolladores?

O más corto: ¿Cómo termino forzosamente la carrera? (En MT4 existía tal cosa).

 
ExpertRemove();
?
 
Vigor:
?

¡Muchas gracias! ¡Funcionó!

Lo he comprobado. Ahora fue mucho más rápido.

 
alexvd:

¿Has probado a realizar una sola pasada con estos resultados en el agente local?

No se usa:

Ejecuto una sola pasada en el kernel local - todo está bien (lo he probado muchas veces, con diferentes parámetros). Supongo que tal vez el agente de red se quedó sin espacio en el disco o la memoria no es suficiente (multicast) o algo más.

alexvd:

¿Puede describir los parámetros de inicio, la lista de agentes, los parámetros de optimización en su solicitud al Servicio de Atención al Cliente + adjuntar un Asesor Experto (al menos ex5)? Y los registros serían muy útiles.

Enviado (#232346). Lo siento, no hay registros - son sobrescritos por el terminal. Pero creo que no tendrás problemas para reproducirlo.
Cenizas:

La pregunta no es para mí, pero sí, lo he probado. En el agente local la prueba pasa sin errores. Se supone que el problema está relacionado con el temporizador (EST = EventSetTimer(3600)), porque en mi caso el error crítico de ejecución se produjo al principio de la prueba (tiempo de prueba - 0 segundos).

Efectivamente, el temporizador se aplica. Sólo en mi caso se puede ver que los agentes de red trabajan durante unos 5 minutos en los cálculos, y luego dan un resultado vacío.
 
notused:

¿cómo combatirlo?


A veces recibo respuestas como esta de la red en los paquetes (Critical Runtime Error). Ejecutando el pase en el kernel local - todo está bien (lo he probado muchas veces, con diferentes parámetros). Supongo que, probablemente, el agente de red se quedó sin espacio en el disco o la memoria no es suficiente (multidifusión) o lo que sea. Pero es una pena que un pasaje generalmente provechoso sea excluido de la consideración. Aunque, por otro lado, me parece que el problema no es solucionable en principio (¿cómo sé que el problema está en el agente y no en el ekspert?) . ¿O tal vez una configuración "No utilizar agentes que hayan devuelto un error de tiempo de ejecución crítico en las últimas 24 horas en su cuenta"?

No es crítico para mí (suficientes núcleos remotos), pero en general es un inconveniente.

Estamos tratando este problema.
 

Una pregunta así. Tengo un Core i7 de 8 núcleos, y después de terminar de preparar el campeonato, realmente no lo necesito. A menos que quiera jugar a un juego o algo así durante medio año. Para no estar parado, sería posible transferir algo de energía a una nube, pero me pregunto si el ordenador se enfriará de la misma manera que si lo optimizo localmente. Por supuesto, un ordenador puede sobrevivir 5 días de optimización continua con un sobrecalentamiento constante, pero aun así tenía que vigilarlo, enfriarlo, etc.

El componente monetario no me interesa. Si el ingreso de la nube será un centavo, puede hacerlo gratis - NiVapros.