public void Update(BfaParentOrder order, BfaParentOrderDetail detail) { PagingId = order.PagingId; State = order.ParentOrderState; OrderDate = order.ParentOrderDate; TimeInForce = detail.TimeInForce; }
public BfParentOrder(BfaParentOrder order, BfaParentOrderDetail detail, IBfChildOrder[] children) { _order = order; ProductCode = BfProductCodeEx.Parse(order.ProductCode); Children = children; }
public void Update(BfaParentOrderDetail detail, int childOrderIndex) { OrderType = detail.Parameters[childOrderIndex].ConditionType; // To overwrite limit/market to stop/stop limit/trail Side = detail.Parameters[childOrderIndex].Side; OrderSize = detail.Parameters[childOrderIndex].Size; ExpireDate = detail.ExpireDate; TimeInForce = detail.TimeInForce; if (OrderType is BfOrderType.Limit or BfOrderType.StopLimit) { OrderPrice = detail.Parameters[childOrderIndex].Price; } if (OrderType is BfOrderType.Stop or BfOrderType.StopLimit) { TriggerPrice = detail.Parameters[childOrderIndex].TriggerPrice; } if (OrderType == BfOrderType.Trail) { Offset = detail.Parameters[childOrderIndex].Offset; } ParentOrderAcceptanceId = detail.ParentOrderAcceptanceId; ParentOrderId = detail.ParentOrderId; ChildOrderIndex = childOrderIndex; }
public DbParentOrder(BfProductCode productCode, BfaParentOrderDetail order) { ProductCode = productCode; PagingId = order.PagingId; OrderId = order.ParentOrderId; OrderType = order.OrderMethod; ExpireDate = order.ExpireDate; TimeInForce = order.TimeInForce; AcceptanceId = order.ParentOrderAcceptanceId; }
public DbParentOrder(BfProductCode productCode, BfaParentOrder order, BfaParentOrderDetail detail) { ProductCode = productCode; PagingId = order.PagingId; OrderId = order.ParentOrderId; OrderType = order.ParentOrderType; ExpireDate = order.ExpireDate; TimeInForce = detail.TimeInForce; AcceptanceId = order.ParentOrderAcceptanceId; State = order.ParentOrderState; OrderDate = order.ParentOrderDate; }
public void Upsert(BfProductCode productCode, BfaChildOrder order, BfaParentOrderDetail detail, int childOrderIndex) { var rec = GetChildOrders().Where(e => e.ProductCode == productCode && e.AcceptanceId == order.ChildOrderAcceptanceId).FirstOrDefault(); if (rec == default) { rec = new DbChildOrder(productCode, detail, childOrderIndex); rec.Update(order); ChildOrders.Add(rec); } else { rec.Update(detail, childOrderIndex); rec.Update(order); } }
public DbChildOrder(BfProductCode productCode, BfaParentOrderDetail detail, int childOrderIndex) { ProductCode = productCode; Update(detail, childOrderIndex); }