PositionClose

Cierra la posición por el símbolo especificado.

bool  PositionClose(
   const string  symbol,                  // símbolo
   ulong         deviation=ULONG_MAX      // desviación
   )

Closes a position with the specified ticket.

bool  PositionClose(
   const ulong   ticket,                  // Position ticket
   ulong         deviation=ULONG_MAX      // Deviation
   )

Parámetros

symbol

[in]  Nombre del instrumento por el que se quiere cerrar la posición.

ticket

[in]  Ticket de la posición cerrada.

deviation=ULONG_MAX

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

Valor devuelto

true - en caso de que la comprobación de las estructuras básicas sea exitosa; en caso 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.