Errores, fallos, preguntas - página 2077

 
Aleksey Vyazmikin:

Pero para un límite estaría bien, pero al comprar por copa, me parece extraño que la información sobre el trato venga en porciones.

¿Cómo puedo saber cuál fue el volumen si un EA abre una posición y otro la procesa?

Usted está llenando los límites de otra persona con su orden de mercado. Y no necesariamente llena el límite de una contraparte (si su lote de orden > 1).

Cómo averiguarlo. En el Asesor Experto que procesa el historial, solicita este mismo historial si hay una posición abierta. Y comprueba si la orden que inició la operación de la posición actual fue procesada.

 
Alexey Kozitsyn:

Llenas los límites de otras personas con tu orden de mercado. Y no necesariamente llena el límite de la misma contraparte (si su lote de orden > 1).

Cómo averiguarlo. En el Asesor Experto que procesa el historial, solicita este mismo historial si hay una posición abierta. Y comprueba si la orden que inició la operación de la posición actual fue procesada.


Está claro que tomo los límites, pero ¿el relleno no se produce inmediatamente? No veo que la orden se dispare en cada contador o nivel de precios, sino en diferentes partes.

¿A qué te refieres con que el pedido fue procesado o no? He iniciado una orden de mercado y tiene un estado de intermediación "en proceso de ejecución"? ¿Cómo lo inicializo?

 
Aleksey Vyazmikin:

Es comprensible que vierta los límites, pero ¿el vertido no se produce inmediatamente? No son todos los agentes del mostrador o el nivel de precios los que se activan, pero en partes - no veo un patrón.

¿A qué te refieres con que el pedido fue procesado o no? He iniciado una orden de mercado y tiene un estado de intermediación "en proceso de ejecución"? ¿Cómo lo inicializo?

Su orden de mercado inicia las operaciones. Puede haber más de una operación si la orden limitada más cercana no cubre todo el volumen de su orden de mercado.

Si no está claro, lea el artículo sobre los precios de los intercambios.

¿Qué quieres decir? Quieres que un segundo EA procese el pedido una vez, ¿verdad? Si es así, probablemente deba recordar el número del último pedido procesado.

 
Alexey Kozitsyn:

Su orden de mercado inicia las operaciones. Puede haber más de una operación en caso de que la orden limitada más cercana no cubra todo el volumen de su orden de mercado.

Si no está claro, lea el artículo sobre los precios de los intercambios.


Elprecio de la bolsa está claro, esa no es la cuestión -está claro que puede haber muchos tratos en una orden, no está claro, lo otro es por qué la información sobre todos los tratos no llega a la vez- porque de hecho el evento ocurre a la vez. ¿O me equivoco y hay una demora especial entre cada acuerdo que proporciona la bolsa? Si es así, por favor, dame un enlace para leerlo.

Alexey Kozitsyn:

¿Qué quieres decir? Quieres procesar el pedido una vez por el segundo EA, ¿verdad? Si es así, es probable que tenga que recordar el número del último pedido procesado.

Quiero comprobar la posición para algunos criterios - SL/TP y el volumen. En este caso, parte de la posición puede estar formada por otra orden. Bien, recuerdo el número de pedido en el historial, ¿qué debo hacer ahora?
 
Aleksey Vyazmikin:

¿O me equivoco y hay un retraso especial proporcionado por la bolsa entre cada transacción?

Bien, compruébalo, ¿quién te lo impide? No he oído hablar de ningún retraso especial.

Quiero comprobar que la posición cumple con ciertos criterios - SL/TP y volumen. Al mismo tiempo, parte de la posición puede estar formada por otra orden. Ok, he memorizado el número de la orden en el historial.

Pues bien, examinen la posición. Ha encontrado la posición - solicite sus parámetros. Puede solicitar parámetros en cada tic. O después de que se haya producido el evento OnTrade().

Si necesita que la posición se procese sólo después de que la orden se llene completamente, tal vez necesite OnTradeTransaction().

 
Alexey Kozitsyn:

Así que compruébalo, ¿quién te lo impide? Nunca he oído hablar de ningún retraso especial.


Bueno, tal vez estoy haciendo algo mal, por eso el resultado es tan... así que si hay una respuesta exacta, está claro qué camino tomar. Pero, me pondré a revisar, es que en los testers y otros simuladores todo funcionaba bien, y ayer en la vida real me picó por este bug-especialidad.

Alexey Kozitsyn:

Así que considera la posición. Encontrado un puesto - solicitar sus parámetros. Puede solicitar parámetros en cada tic. O después de que se haya producido el evento OnTrade().

Lo compruebo así en OnTrade() - y obtengo una situación extraña... Bueno, voy a escribir los registros en detalle para entender lo que está pasando. No sé cómo reconocer que la orden de mercado se sigue negociando.


AlexeyKozitsyn:

Si desea que la posición se procese sólo después de que la orden se llene completamente, tal vez, necesite la función OnTradeTransaction().

OnTradeTransaction(), según tengo entendido sólo funciona en el mismo terminal donde se realiza la operación, y en mi caso son ordenadores diferentes.
 
Aleksey Vyazmikin:

No se pueden comprobar todas las características del FORTS real en el probador. Servir un pedido es uno de ellos.

 
Alexey Kozitsyn:

No se pueden comprobar todas las características del FORTS real en el probador. Servir un pedido es uno de ellos.


El deslizamiento es salvaje - 10 puntos cada uno - el vaso está vacío, parece que los arbitrajes son los únicos que hay...

 

Así, miro el cierre de 30 lotes por SL y veo queOnTrade() entró cuando había 30, luego 25, 25,25, 16,5,1,0 ¡hasta 39 veces!

Al mismo tiempo veo que la posición se ha cerrado con operaciones:5,2,2,1,3,1,4,1,2,1,1,2,3,1,1 - es decir, ¡15 veces! Pido a los desarrolladores que aclaren esta cuestión.

 
Los comentarios que no son relevantes para este tema se han trasladado a "Indicador por indicador".
Razón de la queja: