PositionTargetManager
Administrador independiente que conduce la posición a un valor objetivo utilizando algoritmos configurables.
Hereda de: BaseLogReceiver
Constructores
public PositionTargetManager(ISubscriptionProvider subProvider, ITransactionProvider transProvider, IMarketRuleContainer container, Func<Security, Portfolio, decimal?> getPosition, Func<Order> orderFactory, Func<bool> canTrade, Func<Sides, decimal, IPositionModifyAlgo> algoFactory)
positionTargetManager = PositionTargetManager(subProvider, transProvider, container, getPosition, orderFactory, canTrade, algoFactory)
Inicia una nueva instancia de la PositionTargetManager.
- subProvider
- Proveedor de suscripción.
- transProvider
- Proveedor de transacciones.
- container
- Contenedor de regla de mercado.
- getPosition
- Función para conseguir la posición actual para un instrumento financiero/parejo de cartera.
- orderFactory
- Fábrica para crear nuevos pedidos con propiedades deseadas.
- canTrade
- Función que devuelve si se permite el comercio.
- algoFactory
- Fábrica para crear algoritmos de modificación de posición. Parámetros: lado, volumen.
Propiedades
public int MaxRetries { get; set; }
value = positionTargetManager.MaxRetries
positionTargetManager.MaxRetries = value
Número máximo de retries en el fallo del pedido.
public OrderTypes OrderType { get; set; }
value = positionTargetManager.OrderType
positionTargetManager.OrderType = value
Tipo de pedido a utilizar. Default es Mercado.
public decimal PositionTolerance { get; set; }
value = positionTargetManager.PositionTolerance
positionTargetManager.PositionTolerance = value
Tolerancia para considerar el objetivo de posición alcanzado.
Métodos
public void CancelTarget(Security security, Portfolio portfolio)
positionTargetManager.CancelTarget(security, portfolio)
Cancelar objetivo para un instrumento financiero/parrilla de cartera.
- security
- instrumento financiero.
- portfolio
- Portafolio.
protected override void DisposeManaged()
positionTargetManager.DisposeManaged()
Libera recursos.
public decimal? GetTarget(Security security, Portfolio portfolio)
result = positionTargetManager.GetTarget(security, portfolio)
Obtener la posición de destino para un instrumento financiero / par de cartera.
Devuelve: Posición de blanco, o nula si no está fijada.
public bool IsTargetReached(Security security, Portfolio portfolio)
result = positionTargetManager.IsTargetReached(security, portfolio)
Compruebe si se alcanza la posición de destino.
public void SetTarget(Security security, Portfolio portfolio, decimal target)
positionTargetManager.SetTarget(security, portfolio, target)
Establecer la posición de destino para un instrumento financiero/parrilla de cartera.
- security
- instrumento financiero.
- portfolio
- Portafolio.
- target
- Valor de posición de destino.
Eventos
public event Action<Security, Portfolio, Exception> Error
positionTargetManager.Error += handler
Ocurre cuando ocurre un error durante la gestión de destino.
public event Action<Order> OrderRegistered
positionTargetManager.OrderRegistered += handler
Ocurre cuando un pedido es registrado por el gerente.
public event Action<Security, Portfolio> TargetReached
positionTargetManager.TargetReached += handler
Ocurre cuando se alcanza un puesto de destino.