Cualquier pregunta de un PROFI a un SUPER PROFI - 1. - página 44

 
TheXpert:

No es realista sin el control en la propia EA.

En términos generales, aparentemente, sí.

Pero si estipulamos que el recálculo no debe realizarse más de una vez en X ms, entonces podemos resolverlo de forma sencilla y directa.


TheXpert:

Y no sólo eso, sino que no tienes que hacerlo.

Bueno, una línea de inlusión siempre es más conveniente que el chamanismo en cada Asesor Experto que lo utiliza.

 
Andrey Khatimlianskii:

Bueno, un inludio de una sola línea siempre es más conveniente que la vergüenza en cada EA que lo utiliza.

probablemente se puede hacer, al estilo de fxsaber, con funciones de entrada anuladas por definiciones

 
puede intentar "directamente": por ejemplo, leer los ticks por tiempo desde el comienzo de la última barra de minutos hasta el momento actual. compruebe su número, es decir, compare el tamaño del array resultante - si sigue siendo el mismo, entonces el tick sigue siendo el mismo, ya contado. llega un nuevo tick - el array aumenta; llega una nueva barra - disminuye
 
Andrey Khatimlianskii:

No, definitivamente será más lento que la comparación oferta/compra/ms.

¿Cuál es el problema de la fiabilidad? Lo único que importa es el hecho de que algo ha cambiado.

O tal vez la inmutabilidad, el tick es el mismo, ni el bid ni el ask han cambiado.

 
Andrey Khatimlianskii:

En términos generales, probablemente sí.

Pero si estipulamos que el recálculo no debe realizarse más de una vez en X ms, entonces podemos resolverlo de forma sencilla y directa.


Bueno, el inlude de una línea siempre es más conveniente que el chamanismo en cada Asesor Experto que lo utiliza.

Lo que es el chamanismo, además del inludio, es insertar una línea más al principio de

OnTick(){ Count_tick++;

Si defyne no ayuda, Ctrl-H ayuda :)

Todavía tienes que llamar a la función de la biblioteca desde un include, es decir, insertarla en tu código de alguna manera

//include file
static int Count_tick=0;
void SameTick(int &tick, bool &same_tick) { if(tick<Count_tick){tick=Count_tick;return ;} else same_tick=true; return ;}
#define  SameTick() static int my_tick=0;bool same_tick=false;SameTick(my_tick, same_tick)

// EA file

func1(){SameTick();   if (same_tick)... }
func2(){SameTick();   if (same_tick) ...}...

s.s. teóricamente en un mercado rápido puede haber varios ticks en un ms, entre los cuales el primero y el último tienen la misma oferta y demanda.

 
Igor Zakharov:
puede intentar "directamente": leer los ticks, por ejemplo, por tiempo desde el comienzo de la última barra de minutos hasta el momento actual. compruebe su número, es decir, compare el tamaño de la matriz obtenida - si permanece igual, entonces el tick sigue siendo el mismo, ya calculado. llega un nuevo tick - la matriz aumentará; una nueva barra disminuirá

Bueno, ¡por supuesto! Hay un volumen (que hace tictac). Este es el número de garrapata único (dentro de una barra, pero es suficiente).

Comprobaré si dicho truco da aceleración.

 
TheXpert:

probablemente se puede hacer, al estilo de fxsaber, con funciones de entrada anuladas mediante definiciones

Aleksey Mavrin:

que es el chamanismo, aparte del inlude, otra línea para insertar al principio del

Si definir no ayuda, Ctrl-H ayuda :)

Todavía hay que llamar a la función de la biblioteca desde un include, es decir, insertarla en el código de alguna manera

Eso parece. Si el volumen será lento, desarchivaré todo lo que necesite.


Gracias a todos por participar.

 
Aleksey Mavrin:

lo que es el chamanismo, aparte del inludio, poner una línea más al principio del

Si definir no ayuda, Ctrl-H ayuda :)

Todavía tienes que llamar a la función de la biblioteca desde el inlude, es decir, insertarla en el código de alguna manera

s.s. teóricamente en un mercado rápido, puede haber varios ticks en un ms, entre los cuales el primero y el último tienen la misma oferta y demanda.

Aleksey Mavrin:

y que es el chamanismo, además de la inlusión de una línea más para insertar en el principio

Si definir no ayuda, Ctrl-H ayuda :)

Todavía tienes que llamar a la función de la biblioteca desde un include, es decir, insertarla en tu código así

s.w. Teóricamente en un mercado rápido se pueden tener varios ticks en un ms, entre los cuales el primero y el último tienen la misma oferta y demanda.

La estática sólo se inicializa cuando se adjunta al gráfico, por lo que se producirá un error de cálculo.

static int Count_tick=0;
 
Алексей Тарабанов:

Static sólo se inicializa cuando se adjunta al gráfico, por lo que habrá un error de cálculo.

No entiendo cuál será el error. Se declara a nivel global, no hay diferencia.

 
Andrey Khatimlianskii:

Bueno, ¡por supuesto! Hay un volumen (que hace tictac). Este es el número de garrapata único (dentro de una barra, pero es suficiente).

si llega una nueva garrapata mientras se procesa la garrapata, ¿es posible que cambie?

Razón de la queja: