PositionClosePartial

Cierra parte de la posición del símbolo indicado en el registro de "cobertura".

bool  PositionClosePartial(
   const string  symbol,                  // símbolo
   const double  volume,                  // volumen
   ulong         deviation=ULONG_MAX      // desviación
   )

Cierra parte de la posición con ticket indicado en el registro de "cobertura".

bool  PositionClosePartial(
   const ulong   ticket,                  // ticket de la posición
   const double  volume,                  // volumen
   ulong         deviation=ULONG_MAX      // desviación
   )

Parámetros

symbol

[in]  Nombre del instrumento comercial del que se supone cerrar parte de la posición. Si para el cierre parcial de posición se indica el símbolo (no el ticket), se elegirá la primera posición encontrada de dicho símbolo que tenga el MagicNumber indicado (identificador del experto). Por eso, en ocasiones es mejor usar la variante PositionClosePartial() indicando el ticket de la posición.

volume

[in]  Volumen en el que hay que reducir la posición. Si el valor es superior al volumen de la posición parcialmente cerrada, la posición se cerrará por completo. No se abrirá una nueva posición en dirección opuesta.

ticket

[in]  Ticket de la posición cerrada.

deviation=ULONG_MAX

[in]  Desviación máxima a partir del precio actual (en puntos).

Valor devuelto

true - si la comprobación básica de las estructuras ha tenido éxito, de lo contrario, false.

Nota

El hecho de que el trabajo del método PositionClose(...) haya finalizado, no siempre significa que la operación comercial haya sido ejecutada con éxito. Es necesario comprobar el resultado de la ejecución de la solicitud comercial (código de retorno del servidor comercial) llamando al método ResultRetcode().

En el registro de posiciones con "compensación" (ACCOUNT_MARGIN_MODE_RETAIL_NETTING y ACCOUNT_MARGIN_MODE_EXCHANGE) de cada símbolo en cualquier momento solo puede abrirse una posición, que es el resultado de una o más operaciones. Es mejor no confundir las posiciones con las órdenes pendientes en activo, que también se muestran en la pestaña "Trading" en el panel "Herramientas".

En el caso de que las posiciones se representen independientemente (ACCOUNT_MARGIN_MODE_RETAIL_HEDGING) de cada símbolo pueden abrirse a la vez varias posiciones. En este caso, PositionClose cerrará la posición con el ticket menor.