Errores, fallos, preguntas - página 2965

 
fxsaber:

Esperando este.

Sí, interesante también, si no son los archivos por supuesto, si es así, el mapeo sugerido arriba es mejor

 
fxsaber:

Envío los ticks del indicador a través de esto: sparam contiene MqlTick, lparam - número de tick.

El Asesor Experto capta estos ticks en OnChartEvent. ¿Y necesita entender si el tick actual es el más actual o no? Es decir, ¿hay una cola de ticks o está vacía?

Para ello, lee el número (la tarea es leer este número) del último tick enviado por el indicador. Si el tick tiene el mismo número - la cola está vacía, y es posible empezar a trabajar con los ticks.


Y durante la operación de OnTick, después de OrderSend es necesario comprobar si el indicador ha enviado más ticks. Para ello, tenemos que volver a leer el número del indicador. Y puede haber más de un centenar de estas comprobaciones durante un OnTick. Por eso hay que leerlo rápidamente.

Hago la comprobación sólo si no pasan menos de milisegundos desde la anterior. Este enfoque es razonable y reduce aún más la carga.

 

¿Puedes decirme?

¿Es posible tomar el valor del lote del panel de terminales estándar? Que está en la esquina superior izquierda del terminal.

¿Puedo llamar mediante programación al menú de un indicador o de un Asesor Experto? Por ejemplo, utilizando el botón

 
fxsaber:

Sólo hago la comprobación si ha transcurrido al menos un milisegundo desde la anterior. Este enfoque resultó razonable y redujo aún más la carga.

Tal vez no entendí bien, se puede vincular el id del evento a un símbolo y no pasar otros parámetros en absoluto

 
Fast235:

Tal vez no lo entendí bien, se puede vincular el id del evento a un símbolo y no pasar los otros parámetros en absoluto

Lo más probable.

 
fxsaber:

Esperando este.

Piensa: el cerebro tiene que trabajar. Excusas: no soy programador, etc. - no se aceptan. Yo también soy músico. Dominé C++ por mí mismo con la ayuda del libro para principiantes en 2012.

Creo que es incluso más fácil para los no programadores, porque no hay dogmas ni estereotipos. Por ejemplo, este"pequeño monstruo" era 2 veces más corto mientras que este supuesto"código bueno pero incomprensible" era 3 veces más corto.

Mientras tanto, puedo darle una solución a su problema anterior:

Foro sobre comercio, sistemas de comercio automatizados y pruebas de estrategias

Errores, fallos, preguntas

A100, 2020.10.05 20:50

¿Tan rápido? Todavía no se han unido todos los expertos... esperar una semana.

Pista: esto también funciona (pero la solución es ligeramente diferente)

#define  MACRO(  x, y, z )       enum nn##z { y = x };
#define  MACRO2( x, y )          MACRO( x, y, __LINE__ )
 

Error durante la ejecución:

void OnStart()
{
    Print( StringToTime( "ABCDEF" ));
}

Resultado: 2021.02.19 01:00:00

Esperado: Fecha incorrecta

 
A100:

Error durante la ejecución:

Resultado: 2021.02.19 01:00:00

Esperado: fecha incorrecta

Discutido.

 
A100:

Piensa: el cerebro tiene que trabajar.

Es posible la opción a través de SHORTNAME del indicador.
 
A100:

este"pequeño monstruo" salió dos veces más corto.

No lo creo.