ORDER_POSITION_ID - página 4

 
papaklass:

Los programadores tienen una regla: ¡discutir el código!

Si tienes un problema con tu código, DEBES publicar el código donde encontraste el problema. En una situación así, seguro que encontrará a alguien dispuesto a ayudarle. Pero usted está inventando algo nuevo: está tratando de discutir un problema que encontró "en sus dedos" sin el código.

No me sorprendería que en un futuro próximo sus preguntas quedaran sin respuesta no sólo en el Service Desk, sino también en el foro.

Intenta sacar las conclusiones correctas y no seas estúpido. :)

No tengo ningún problema para que el código funcione.

Yo originalmente prashivala:

QUE UTILIZA EL SIGUIENTE CÓDIGO:

long pos_id = long( OrderGetInteger( ORDER_POSITION_ID ) );

¿Cuándo aprenderás a leer la pregunta?

 
Mikalas:

No tengo ningún problema para que el código funcione.

Yo originalmente prasheed:

QUE UTILIZA EL SIGUIENTE CÓDIGO:

¿Cuándo aprenderás a leer la pregunta?

También has preguntado:

Conmigo, cuando una orden se ejecuta parcialmente, pos_id siempre = 0

¿Por qué?

 
Contender:

También has preguntado:

Sí, lo hice, para no tener que preguntárselo después a alguien que utiliza ese código.

 
Mikalas:

Conmigo, cuando una orden se ejecuta parcialmente pos_id siempre = 0

¿Por qué?

De la ayuda de MQ:

ORDER_POSITION_ID

El identificador de posición que se pone en la orden cuando se ejecuta. Cada orden ejecutada genera una operación, que abre una nueva posición o modifica una posición existente. El identificador de esta posición se ajusta a la orden ejecutada en ese momento.

Esto puede deberse a que (la orden) aún no se ha ejecutado completamente, y es posible que esta orden participe en la formación de otra posición.
 
Yurich:
Tal vez, esto se deba a que (la orden) aún no se ha ejecutado completamente, y es posible que esta orden participe en la formación de otra posición.

Es un placer hablar contigo, Yurich, ¡buenos días!

Pero la cosa es que estoyhaciendo mis experimentos conORDER_POSITION_ID

en el servidor de demostración (nadie me impide rastrear el programa).

Y la llamada a la función

long GetOrderPosId( const ulong ticket )

se llama en una situación "satisfecha".

Y me preocupé por ello, con tu consejo, sobre la magia, una vez más, ¡muchas gracias!

Entiendo las frases que has subrayado, pero entonces ¿por qué escribiste MQ?

Cadaorden ejecutada generauna operación, que abre una nuevaposición o modifica una existente

Eso es lo que me confunde.

El trato esORDER_POSITION_ID, tal vez me equivoque, pero no hay respuesta mz servicedesk.

Si simplemente cancelo la orden después de que se haya ejecutado parcialmente, no tendráORDER_POSITION_ID?

El identificador de esta posición seajusta a la orden ejecutada en ese momento.

 
Mikalas:

Y la llamada a la función

tiene lugar en una situación "establecida".

Estás pidiendo el id de la orden colocada, no la orden ejecutada. La orden ejecutada aparecerá en el historial.

 
Mikalas:


¿Si simplemente cancelo la orden después de que se haya ejecutado parcialmente, no tendráun ORDER_POSITION_ID?

En teoría, el historial debería mostrar la parte ejecutada de la orden. ¿O no está ahí?

Te he hecho una pregunta que no has notado:https://www.mql5.com/ru/forum/35432/page2#comment_1042916

 
Yurich:

Estás pidiendo el id de la orden colocada, no la orden ejecutada. La orden ejecutada aparecerá en el historial.

¿Es decir,ORDER_POSITION_ID para los datos del historial?

Pero en Ayuda:

Propiedades de las órdenes

Las órdenes para realizar operaciones comerciales se procesan por medio de órdenes. Cada orden tiene muchas propiedades que leer, y la información sobre ellas puede obtenerse utilizando las funciones OrderGet...() e HistoryOrderGet...().

 
Contender:

Está observando esta orden parcialmente ejecutada. ¿Dónde está? ¿En la lista de operaciones o en las ejecutadas?

La orden está activa.
 
Mikalas:
¿Por ejemplo,ORDER_POSITION_ID para los datos históricos?
Razón de la queja: