Пример #1
0
 public ImmutableArray <Order> GetAll()
 {
     using (_contextFactory.GetReadSyncContext($"{nameof(OrdersCache)}.{nameof(GetAll)}"))
         return(ActiveOrders.GetAllOrders()
                .Union(WaitingForExecutionOrders.GetAllOrders())
                .Union(ClosingOrders.GetAllOrders()).ToImmutableArray());
 }
Пример #2
0
        public Order GetOrderById(string orderId)
        {
            if (WaitingForExecutionOrders.TryGetOrderById(orderId, out var result))
            {
                return(result);
            }

            if (ActiveOrders.TryGetOrderById(orderId, out result))
            {
                return(result);
            }

            throw new Exception(string.Format(MtMessages.OrderNotFound, orderId));
        }
Пример #3
0
 public ImmutableArray <Order> GetPending()
 {
     return(WaitingForExecutionOrders.GetAllOrders().ToImmutableArray());
 }
Пример #4
0
 public bool TryGetOrderById(string orderId, out Order order)
 {
     return(WaitingForExecutionOrders.TryGetOrderById(orderId, out order) ||
            ActiveOrders.TryGetOrderById(orderId, out order));
 }
Пример #5
0
 public ImmutableArray <Order> GetPendingForMarginRecalc(string instrument)
 {
     return(WaitingForExecutionOrders.GetOrdersByMarginInstrument(instrument).ToImmutableArray());
 }