public Market(int asset, OrderMap orderMap) { Asset = asset; Asks = new Orderbook(orderMap) { Side = OrderSide.Sell }; Bids = new Orderbook(orderMap) { Side = OrderSide.Buy }; }
public OrderPlacedEffectProcessor(OrderPlacedEffect effect, Orderbook orderBook, Order order) : base(effect) { this.orderBook = orderBook ?? throw new ArgumentNullException(nameof(orderBook)); this.order = order ?? throw new ArgumentNullException(nameof(order)); }
public OrderRemovedEffectProccessor(OrderRemovedEffect effect, Orderbook orderbook) : base(effect) { this.orderbook = orderbook ?? throw new ArgumentNullException(nameof(orderbook)); }
public static void AddOrderPlaced(this EffectProcessorsContainer effectProcessors, Orderbook orderBook, Order order) { var decodedOrderId = OrderIdConverter.Decode(order.OrderId); var effect = new OrderPlacedEffect { Apex = effectProcessors.Apex, AccountWrapper = order.AccountWrapper, Asset = decodedOrderId.Asset, Amount = order.Amount, QuoteAmount = order.QuoteAmount, Price = order.Price, OrderId = order.OrderId, OrderSide = decodedOrderId.Side }; effectProcessors.Add(new OrderPlacedEffectProcessor(effect, orderBook, order)); }
public static void AddOrderRemoved(this EffectProcessorsContainer effectProcessors, Orderbook orderbook, Order order) { effectProcessors.Add(new OrderRemovedEffectProccessor( new OrderRemovedEffect { Apex = effectProcessors.Apex, OrderId = order.OrderId, AccountWrapper = order.AccountWrapper, Amount = order.Amount, QuoteAmount = order.QuoteAmount, Price = order.Price }, orderbook )); }