[ARCHIVO]Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No puedo ir a ningún sitio sin ti - 5. - página 294

 
laveosa:

descargar completamente la historia.... esto ayudará, reinstalar el terminal puede ayudar con la ventana.... y los decorados para defecar
dime que quieres decir con "rebobinar la historia" donde y como se pone no defolt &
 
gheka: ¡¡¡hola gente amable y avanzada!!! ¿alguien puede darme una pista?

y hola a ti también, literato. !!!!!!! si no te importa.

¿Qué es hoy? Lo que usted tiene hoy, su agente puede tenerlo mañana (o ayer) - diferentes zonas horarias... Vale, no hay que dar lecciones. Puedes probarlo así:

if(TimeYear(t)== Year() && TimeDayOfYear(t)== DayOfYear())


En general, hay algunos comentarios sobre el código: (1) uso de la variable t en la comparación sin pre-inicialización (podemos obtener un error lógico en cualquier momento), (2) por qué se ha sacado del bucle la comparación para "hoy", (3) no hay operador de ruptura en el bucle (por qué probar todos los pedidos, necesitamos al menos un pedido, que se ha cerrado hoy).

 

Tengo una pregunta sobre el probador de estrategias en MT4, ¿cuál es la razón de que aparezcan alertas vacías en el registro durante las pruebas?

2013.04.18 00:22:19     2010.03.22 17:30  sova EURUSD,M30: Alert: 

2013.04.18 00:22:19     2010.03.22 17:31  sova EURUSD,M30: Alert: 

2013.04.18 00:22:19     2010.03.22 17:31  sova EURUSD,M30: Alert:  

¿y qué puede significar esto?

 
gheka:

¡¡¡hola gente amable y avanzada!!!

Realmente necesito tu ayuda!!! ayúdame a añadir el código en lugar de " ######## == hoy "

Básicamente necesitamos obtener de la lista del historial si algún pedido se ha cerrado hoy, es decir, habrá un montón de pedidos del mismo mago, pero cerrados en días diferentes,

y la función devuelve true o false si la orden de hoy está cerrada

Estaría muy agradecido

https://www.mql5.com/ru/forum/107476/page53#111201
 
GaryKa:

y hola a ti también, literato. !!!!!!! si no te importa.

¿Qué es hoy? Lo que usted tiene hoy, su agente puede tenerlo mañana (o ayer) - diferentes zonas horarias... Vale, no hay que dar lecciones. Puedes probarlo así:

if(TimeYear(t)== Year() && TimeDayOfYear(t)== DayOfYear())


En general, hay algunos comentarios sobre el código: (1) utilizar la variable t en la comparación sin pre-inicialización (podemos obtener un error lógico en cualquier momento), (2) por qué se saca del bucle la comparación para "hoy", (3) no hay operador de ruptura en el bucle (por qué necesitamos buscar en todas las órdenes, necesitamos al menos una orden que se haya cerrado hoy).


Muchas gracias
 

Realmente lo hice, debo haber parecido una mierda)) - gracias, me tomó dos horas para encontrarlo
 
tuner:

Tengo una pregunta sobre el probador de estrategias en MT4, ¿por qué razón puede haber alertas vacías en el registro durante las pruebas?

¿y qué puede significar esto?


Según mi experiencia, significa que el código llega a la alerta pero la alerta contiene una variable de cadena que está vacía en el momento en que se imprime. Bueno, o no hay nada en el código en absoluto, significa que o bien no se escribió nada sin atención o el desarrollador lo puso sólo para sí mismo: "llegó aquí, está bien".
 
borilunad:

¡Las rúbricas! Determino el lote mínimo a partir del margen libre, o no lo abro, ¡para no caer en un ajuste de márgenes!

Lo he buscado, es más claro que en la Wiki, pero no hay necesidad de aplicarlo, ¡es demasiado complicado! La aritmética es más cómoda, más visual.


Sí. ¡Estoy totalmente de acuerdo contigo en que es un dolor de cabeza! Pero, sin embargo, estoy muy interesado. Si todo se escribe más fácil, ¿por qué el programador lo escribe así? ¿Para que otra persona que lea este código se rompa el cerebro y no pueda dominarlo?

Miro esta cadena y no entiendo por qué complicar todo tanto....

 
GaryKa:
a hoz Primero, un poco de teoría


Y ahora la conclusión.

La expresiónsubrayada devuelve el logaritmo decimal (logaritmo en base 10) de bd_LOTSTEP, es decir, muestra la potencia de 10 para obtener bd_LOTSTEP.


Hmm. Lo has entendido mal...

//IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII+
//|        Функция, определения минимальной разрядности лота                          |
//IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII+
int LotDecimal()
{return (MathCeil (MathAbs (MathLog (bd_LOTSTEP) / MathLog (10))));}

No es un logaritmo decimal, ¡es un logaritmo natural! Así que la parte superior será la potencia de e para obtener bd_LOTSTEP, y debajoserá la potencia dee para obtener10.

Pero de todas formas no entiendo la lógica de la función.

 
hoz:


Sí. Que es un dolor de cabeza estoy completamente de acuerdo contigo! Pero, sin embargo, estoy muy interesado. Si todo se escribe más fácil, ¿por qué el programador lo escribe así? ¿Para que otra persona que lea este código se rompa el cerebro y no pueda dominarlo?

Miro esta cadena y no entiendo por qué complicar todo tanto....

¡Voy a hablar en defensa del programador aquí! Si lo está haciendo para sí mismo, entonces lo que dedujo antes está simplemente pegado por la velocidad, como el montaje de un juego de construcción. Si lo hace por encargo, el cliente puede pedir que todo quede claro para los no iniciados o que no saben qué preguntar. Y si quieres pillar el tranquillo, ya te han explicado bien el qué y el cómo, a lo mejor lo pillas. Todavía no me interesan los logaritmos. Estoy más interesado en crear un algoritmo que se adapte al mercado. :))
Razón de la queja: