Exemplo n.º 1
0
        //======================================================================
        // From element of parent order
        //

        public DbChildOrder(BfParentOrderRequest req, BfParentOrderResponse resp, int childOrderIndex)
        {
            ProductCode    = req.Parameters[childOrderIndex].ProductCode;
            Side           = req.Parameters[childOrderIndex].Side;
            OrderType      = req.Parameters[childOrderIndex].ConditionType;
            OrderSize      = req.Parameters[childOrderIndex].Size;
            MinuteToExpire = req.MinuteToExpire;
            TimeInForce    = req.TimeInForce;

            if (OrderType is BfOrderType.Limit or BfOrderType.StopLimit)
            {
                OrderPrice = req.Parameters[childOrderIndex].Price;
            }
            if (OrderType is BfOrderType.Stop or BfOrderType.StopLimit)
            {
                TriggerPrice = req.Parameters[childOrderIndex].TriggerPrice;
            }
            if (OrderType == BfOrderType.Trail)
            {
                Offset = req.Parameters[childOrderIndex].Offset;
            }

            ParentOrderAcceptanceId = resp.ParentOrderAcceptanceId;
            ChildOrderIndex         = childOrderIndex;
        }
Exemplo n.º 2
0
 public override void OnParentOrderAccepted(BfParentOrderResponse response)
 {
     AcceptedTime   = _market.ServerTime;
     OrderingStatus = RequestingState.Accepted;
     base.OnParentOrderAccepted(response);
     NotifyStateChanged(BfxOrderTransactionEventKind.OrderAccepted, AcceptedTime);
 }
Exemplo n.º 3
0
 public virtual void OnParentOrderAccepted(BfParentOrderResponse response)
 {
     _response        = response;
     AcceptanceId     = response.ParentOrderAcceptanceId;
     ParentOrderState = BfOrderState.Active;
     NotifyOrderChanged();
 }
Exemplo n.º 4
0
 // Parent orders
 public void Insert(BfProductCode productCode, BfParentOrderRequest req, BfParentOrderResponse resp)
 {
     ParentOrders.Add(new DbParentOrder(productCode, req, resp));
     for (int childOrderIndex = 0; childOrderIndex < req.Parameters.Count; childOrderIndex++)
     {
         ChildOrders.Add(new DbChildOrder(req, resp, childOrderIndex));
     }
 }
Exemplo n.º 5
0
 public DbParentOrder(BfProductCode productCode, BfParentOrderRequest req, BfParentOrderResponse resp)
 {
     ProductCode = productCode;
     OrderType   = req.OrderMethod;
     TimeInForce = req.TimeInForce;
     if (TimeInForce == BfTimeInForce.NotSpecified)
     {
         TimeInForce = BfTimeInForce.GTC;
     }
     AcceptanceId = resp.ParentOrderAcceptanceId;
 }
Exemplo n.º 6
0
 public void Update(BfParentOrderResponse response)
 {
     AcceptanceId = response.ParentOrderAcceptanceId;
 }
Exemplo n.º 7
0
 void IBfOrderSource.OpenParentOrder(BfParentOrderRequest req, BfParentOrderResponse resp)
 {
 }