Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 30

 
WiND:

Hice una prueba con la herramienta en H1.

alrededor del 10% se realizó mediante el algoritmo genético.

Pulsé el botón de parada y cambié los parámetros.

Ahora en el arranque - hay una "autorización" en los agentes.

Si cambio el instrumento o el periodo, todo empieza a funcionar.

He restablecido el terminal y reiniciado los agentes - no ayuda.

No puedo reiniciar).

Por favor, aconsejar lo que para el problema?

¿Es difícil reiniciar un ordenador? No sé cuál es el problema, pero hace un par de días tuve un fallo similar. Ejecuté la optimización en mis agentes locales durante la noche y en un rato desconecté internet. Por la mañana descubrí que a la hora de apagar Internet, la optimización se había paralizado, y después de reiniciar los agentes tenían un registro como "autorización requerida". He reiniciado el ordenador, lo que ha ayudado.
 
WiND:

Hice una prueba con la herramienta en H1.

alrededor del 10% se realizó mediante el algoritmo genético.

Pulsé el botón de parada y cambié los parámetros.

Ahora en el arranque - hay una "autorización" en los agentes.

Si cambio el instrumento o el periodo, todo empieza a funcionar.

He restablecido el terminal y reiniciado los agentes - no ayuda.

No puedo reiniciar).

Por favor, aconsejar lo que para el problema?

A mí me ha pasado esto sin cambiar ningún parámetro adicional, simplemente sigo optimizando.

Parece que esta innovación con la continuación de las optimizaciones no va del todo bien.

No pude hacer nada al respecto. Al principio pensé que mi ordenador se lo pensaría y seguiría optimizando... Pero no... esta autorización se queda ahí.

Decidí hacer lo siguiente. Volví a mi antiguo método, "empezar de cero".

Escribí un pequeño BAT que borra las carpetas cache,logs,agent.... Es posible borrarlo manualmente.

 
Por favor, dime si este diseño puede funcionar los fines de semana, es decir, no he visto que funcione.
//+------------------------------------------------------------------+
//|                                                  PrintPERIOD.mq5 |
//|                        Copyright 2012, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   Print("Идентификатору PERIOD_W1 соответствует значение ",(int)PERIOD_W1); 
    Print("Идентификатору PERIOD_M1 соответствует значение ",(int)PERIOD_M1); 
     Print("Идентификатору PERIOD_M5 соответствует значение ",(int)PERIOD_M5); 
      Print("Идентификатору PERIOD_M15 соответствует значение ",(int)PERIOD_M15); 
       Print("Идентификатору PERIOD_M30 соответствует значение ",(int)PERIOD_M30); 
        Print("Идентификатору PERIOD_H1 соответствует значение ",(int)PERIOD_H1); 
         Print("Идентификатору PERIOD_H4 соответствует значение ",(int)PERIOD_H4); 
          Print("Идентификатору PERIOD_D1 соответствует значение ",(int)PERIOD_D1); 
           Print("Идентификатору PERIOD_MN1 соответствует значение ",(int)PERIOD_MN1); 
            Print("Идентификатору PERIOD_W1 соответствует значение ",(int)PERIOD_W1); 
             Print("Идентификатору PERIOD_W1 соответствует значение ",(int)PERIOD_W1); 
   
//---
   return(0);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   
  }
//+------------------------------------------------------------------+
 
Dimka-novitsek:
Por favor, dime si este diseño puede funcionar los fines de semana y en general, es decir, no he visto que funcione.

¿Por qué en forma de experto? De todos modos, no hay tics.

Archivos adjuntos:
 
Dimka-novitsek:
Por favor, dime si puede funcionar los fines de semana, y en general, tal diseño, es decir, no he visto que funcione.

Alguien tuvo la amabilidad de enviarle el guión ayer: https://www.mql5.com/ru/forum/3775/page179#comment_305342

En cuanto a la pregunta actual: si el desempaquetado va en OnInit(), debería imprimirse en cualquier inicio del programa, incluso en el fin de semana.

 

¡¡¡Gracias!!!

En forma experta, sin ticks, contaba con que funcionara al menos una vez, es OnInit.

 
Karlson:

Me ha ocurrido esto sin ningún cambio de parámetro adicional, sino sólo una continuación de la optimización.

Al parecer, esta innovación con la continuación de las optimizaciones no va del todo bien.

No pude hacer nada al respecto. Al principio pensé que el ordenador se lo pensaría y continuaría... Pero no... esta autorización se cuelga.

Decidí hacer lo siguiente. Volví a mi antiguo método, "empezar de cero".

Escribí un pequeño BAT que borra las carpetas cache,logs,agent.... Es posible borrarlo manualmente.

Lo intentaré. Lo intentaré.

Yedelkin, no puedo reiniciar porque el servidor tardará demasiado en hacerlo...

 
Dimka-novitsek:

¡¡¡Gracias!!!

En forma experta, sin ticks, contaba con que funcionara al menos una vez, es OnInit.

Lo has codificado correctamente, todo funciona, incluso "en fin de semana" :) ¿Cómo ejecutas el Asesor Experto, dónde compruebas los resultados?
 
Yedelkin:

Alguien tuvo la amabilidad de enviarle el guión ayer: https://www.mql5.com/ru/forum/3775/page179#comment_305342

Y en cuanto a la pregunta actual: si la impresión va en OnInit(), debería imprimirse en cualquier inicio de programa, incluyendo los fines de semana.

¡¡¡Gracias!!! Así que, tengo una especie de, eh, defectos...

¡Funcionó! Lo siento, no sé qué era antes.

Pero aquí.

2012.09.01 17:29:23 PrintPERIOD (EURUSD,M5) El valor de PERIOD_W1 corresponde a 32769

2012.09.01 17:29:23 PrintPERIOD (EURUSD,M5) ID PERIOD_W1 corresponde a 32769

2012.09.01 17:29:23 PrintPERIOD (EURUSD,M5) ID PERIOD_MN1 corresponde a 49153

2012.09.01 17:29:23 PrintPERIOD (EURUSD,M5) PERIOD_D1 ID tiene el valor 16408

2012.09.01 17:29:23 PrintPERIOD (EURUSD,M5) El ID PERIOD_H4 corresponde al valor 16388

2012.09.01 17:29:23 PrintPERIOD (EURUSD,M5) El ID PERIOD_H1 corresponde al valor 16385

2012.09.01 17:29:23 PrintPERIOD (EURUSD,M5) ID PERIOD_M30 tiene el valor 30

2012.09.01 17:29:23 PrintPERIOD (EURUSD,M5) Con el ID PERIOD_M15 hay 15

2012.09.01 17:29:23 PrintPERIOD (EURUSD,M5) El identificador PERIOD_M1 tiene el valor 1

2012.09.01 17:29:23 PrintPERIOD (EURUSD,M5) El identificador PERIOD_W1 tiene el valor 32769

¡¡¡Gracias!!! ¡¡Interesante!!

¡Sí, en realidad es el script que se me ofrece el que escribe aparentemente, que he insertado en la función on tick de mi EA!

 

¿Alguien ha utilizado MoneyFixedRisk?
Yo lo uso así:

cSymbol = new CSymbolInfo();
cSímbolo.Nombre(Símbolo());
cSymbol.Refresh();

cMoney = new CMoneyFixedRisk();
cMoney.Percent(2.0);
cMoney.Init(cSymbol, PERIOD_CURRENT, 1.0);

double sl = cSymbol.Ask()-Point()*50;
double lot = cMoney.CheckOpenLong(cSymbol.Ask(), sl);

Siempre devuelve 0.

Si pongo stoploss = 0, devuelve minlot.

Cuenta demo, hay 10000 dólares en la cuenta) pero por qué devuelve cero no entiendo....

Razón de la queja: