Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 391

 
John Smith:

Chicos, ¿podrían decirme cómo convertir la fecha 29.01.2008 a un formato como 1201564800? ¿Qué función se utiliza para ello?

Necesito comparar TimeCurrent () con una fecha histórica dada...

¿Está bien?

datetime Начало = D'2015.01.01 00:00';  // Дата задана датой
string   Конец  = "2035.01.01 00:00";   // Дата задана строкой, потом переведем в дату

void start() 
{
  datetime End=StringToTime(Конец);

  if(TimeCurrent()>Начало)  Alert(" Начинаем");
  if(TimeCurrent()>End)     Alert(" Заканчиваем");
                      else  Alert(" Продолжаем");
}
 
John Smith:

Chicos, ¿podrían decirme cómo convertir la fecha 29.01.2008 a un formato como 1201564800? ¿Qué función se utiliza para ello?

Necesito comparar TimeCurrent () con una fecha histórica dada...


Si convierte la hora actual a un segundo formato a través de iTime: int iTime = TimeCurrent();

entonces, ¿cómo se puede comparar con otras fechas que se escriben en el formato 29.01.2008?


O de alguna manera compararlo sin convertirlo en segundos, si puedes hacerlo directamente...

como

si TimeCurrent() > 29.01.2008 entonces a = 123456

pero no funciona de esta forma... ((

datetime es un largo

Por lo tanto, para representar un datetime como un long, es necesario convertirlo explícitamente:

long time_current=(long)TimeCurrent();
 

Hola.

Pregunta sobreel comprobador de estrategias

No puedo reducir el tamaño de la fuente o de las columnas para que las entradas quepan en la ventana de 640 píxeles

¿Cómo lo hago?

He reducido el tamaño de la ventana, pero la información está arrugada.

Archivos adjuntos:
 
Sergey Musin:

Hola.

Pregunta sobreel comprobador de estrategias

No puedo reducir el tamaño de la fuente o de las columnas para que las entradas quepan en la ventana de 640 píxeles

¿cómo lo hago?

He reducido el tamaño de la ventana, pero la información está arrugada.

Prueba a reducir la fuente del sistema en la configuración de Windows
 

¡Buenas tardes!

Por favor, dame una pista, hay un trozo de código:

void watch_breakout() {
  if(active != true) return;
    int ticket = get_ticket();
  if(Ask >= NormalizeDouble(channel_top, Digits)) {
    ticket   = OrderSend(Symbol(), OP_BUY, Lots, Ask, SLIPPAGE, NormalizeDouble(Ask-Stoploss*Point,Digits), 0, "LONG", MAGIC, clrNONE); 
       }
  if(Bid <= NormalizeDouble(channel_bottom, Digits)) {
    ticket   = OrderSend(Symbol(), OP_SELL, Lots, Bid, SLIPPAGE, NormalizeDouble(Bid+Stoploss*Point,Digits), 0, "SHORT", MAGIC, clrNONE);
       } 
    }

Estoy buscando rupturas del canal de precios, mi tarea es comprobar si la ruptura no es por cualquier vela, sino por una pinbar y abrir una orden después de que se forme la pinbar.

Por favor, aconséjenme cómo hacerlo. Estoy luchando con esto por tercer día pero hasta ahora no he visto ninguna solución.

 
Snower: Tengo un trozo de código:

Comprobar si la ruptura se produjo no por cualquier vela sino por una pinbar y abrir una orden después de la formación de la pinbar. Por favor, dime cómo implementar esto, he estado luchando durante tres días y no veo una solución todavía

Actualmente estoy depurando un Asesor Experto que funciona bien en el Probador de Estrategias dentro de un mes. Y es bueno en la demo. Me distraje y miré aquí. ¿Tienes el dibujo?

 
STARIJ:

Ahora estoy depurando el Asesor Experto que he estado probando durante un mes. Y es bueno en la demo. Me distraje y miré aquí. ¿Tienes el dibujo?


Así, por ejemplo. La línea amarilla es el canal de precios que el precio debería atravesar, y la orden se abriría con un smiley, y se ignorarían todas las que había antes.

 
Snower:


Así, por ejemplo. La línea amarilla es el canal de precios que el precio debería romper, y que la orden se abriría con una vela de cara sonriente, y todas las anteriores serían ignoradas

Esto no funcionará.
 
Artyom Trishkin:
No funcionará.

Respuesta

Artyom, no lo has leído con atención: el TS necesita abrirse sólo en la ruptura de una barra pin, respectivamente si prescribes una barra pin (cuerpo pequeño y sombras grandes), la condición puede cumplirse

 

¿Cómo se maneja la función iCustom en MT4? Por favor, respondan los que sepan del tema.


Por ejemplo, en el probador de estrategias un EA llama al indicador en cada tick.

Cuando se llama a la función, el indicador se carga en la memoria, recalcula todos los valores desde la barra cero hasta la barra y luego devuelve el valor en el desplazamiento requerido.

Si solicito el valor de 1 barra en el primer tick y el valor de la segunda barra en el segundo tick, entonces mi Asesor Experto calculará el indicador dos veces en todo el historial?


Si el Asesor Experto accede al indicador1, y tiene iCustom al indicador2. ¿Cuántas veces se recalculará el indicador2 al solicitar el valor del indicador1?


¿Tal vez el Probador de Estrategias y la terminal MT4 almacenan los valores de los indicadores en cada barra, por lo que no los recalculan en la solicitud repetida?