Propiedades de posiciones

Todas las propiedades de posición se dividen en tres grupos según el tipo de valores: enteros y compatibles con ellos, números reales y cadenas. Se utilizan para leer funciones PositionGet similares a las funciones OrderGet. Describiremos las funciones en sí en la siguiente sección, y aquí daremos los identificadores de todas las propiedades que están disponibles para especificar en el primer parámetro de estas funciones.

Las propiedades de enteros se proporcionan en la enumeración ENUM_POSITION_PROPERTY_INTEGER.

Identificador

Descripción

Tipo

POSITION_TICKET

Ticket de posición

ulong

POSITION_TIME

Hora de apertura de la posición

datetime

POSITION_TIME_MSC

Hora de apertura de la posición en milisegundos

ulong

POSITION_TIME_UPDATE

Hora de cambio de posición (volumen)

datetime

POSITION_TIME_UPDATE_MSC

Hora de cambio de posición (volumen) en milisegundos

ulong

POSITION_TYPE

Tipo de posición

ENUM_POSITION_TYPE

POSITION_MAGIC

Número mágico de la posición (basado en ORDER_MAGIC)

ulong

POSITION_IDENTIFIER

Identificador de la posición; un número único que se asigna a cada posición recién abierta y que no cambia durante toda su vida.

ulong

POSITION_REASON

Motivo de la apertura de una posición

ENUM_POSITION_REASON

Por regla general, POSITION_IDENTIFIER corresponde al ticket de la orden que abrió la posición. El identificador de la posición se indica en cada orden (ORDER_POSITION_ID) y transacción (DEAL_POSITION_ID) que la abrió, modificó o cerró. Por lo tanto, es conveniente utilizarlo para buscar órdenes y transacciones relacionadas con una posición.

Si la orden se ejecuta parcialmente, pueden existir simultáneamente la posición y la orden pendiente activa para el volumen restante con entradas coincidentes. Además, dicha posición puede cerrarse a tiempo, y en la siguiente cumplimentación del resto de la orden pendiente, volverá a aparecer una posición con el mismo ticket.

En el modo de compensación, la inversión de una posición con una operación se considera un cambio de posición, no una nueva, por lo que POSITION_IDENTIFIER se conserva. Una nueva posición en un símbolo sólo es posible tras cerrar la anterior en volumen cero.

La propiedad POSITION_TIME_UPDATE sólo responde a cambios de volumen (por ejemplo, como resultado de un cierre parcial o un aumento de posición), pero no a otros parámetros como niveles Stop Loss/Take Profit o cargos de swap.

Sólo existen dos tipos de posiciones (ENUM_POSITION_TYPE):

Identificador

Descripción

POSITION_TYPE_BUY

Comprar

POSITION_TYPE_SELL

Vender

Las opciones para el origen de una posición, es decir, cómo se abrió la posición, se proporcionan en la enumeración ENUM_POSITION_REASON.

Identificador

Descripción

POSITION_REASON_CLIENT

Activación de una orden cursada desde el terminal de sobremesa.

POSITION_REASON_MOBILE

Activación de una orden cursada desde una aplicación móvil.

POSITION_REASON_WEB

Activación de una orden cursada desde la plataforma web (navegador).

POSITION_REASON_EXPERT

Activación de una orden cursada por un Asesor Experto o un script.

Las propiedades reales se recopilan en ENUM_POSITION_PROPERTY_DOUBLE.

Identificador

Descripción

POSITION_VOLUME

Volumen de la posición

POSITION_PRICE_OPEN

Precio de la posición

POSITION_SL

Precio Stop Loss

POSITION_TP

Precio Take profit

POSITION_PRICE_CURRENT

Precio actual del símbolo

POSITION_SWAP

Swap acumulado

POSITION_PROFIT

Beneficio actual

El tipo de precio actual corresponde a la operación de cierre de posición. Por ejemplo, una posición larga debe cerrarse vendiendo, por lo que el precio Bid de la misma se rastrea en POSITION_PRICE_CURRENT.

Por último, se admiten las siguientes propiedades de cadena (ENUM_POSITION_PROPERTY_STRING) para las posiciones.

Identificador

Descripción

POSITION_SYMBOL

El símbolo en el que se abre la posición.

POSITION_COMMENT

Comentario de la posición

POSITION_EXTERNAL_ID

ID de posición en el sistema externo (en la bolsa)

Después de revisar la lista de propiedades de posición, estamos listos para ver las funciones para leer estas propiedades.