public static void ExecuteOn_Up_Through_ProcessOrderExecution(XComponent.Order.UserObject.OrderExecution orderExecution, object object_PublicMember, object object_InternalMember, Context context, IProcessOrderExecutionOrderExecutionOnUpTradeProcessorSenderInterface sender) { // Execute the existing trade for a revised quantity var tradeExecution = new TradeExecution { AssetName = orderExecution.AssetName, OrderId = orderExecution.OrderId, Price = orderExecution.Price, Quantity = orderExecution.Quantity, RemainingQuantity = orderExecution.RemainingQuantity }; sender.ExecuteTrade(context, tradeExecution); // Create a new trade for the remaining quantity if (orderExecution.RemainingQuantity > 0) { sender.CreateTrade(context, TradeFactory.CreateNewTrade(orderExecution.OrderId, orderExecution.RemainingQuantity, orderExecution.AssetName)); } }
public void SendEvent(StdEnum stdEnum, XComponent.Order.UserObject.OrderExecution evt, string privateTopic = null) { _internalAPI.SendEvent(stdEnum, evt, privateTopic); }
public void PublishOrderPartiallyFilled(Context context, XComponent.Order.UserObject.OrderExecution transitionEvent, string privateTopic = null) { _internalAPI.PublishOrderPartiallyFilled(context, transitionEvent, privateTopic); }
/// <summary> /// Executing triggeredMethod ExecuteOn_PartiallyFilled_Through_PublishOrderPartiallyFilled /// </summary> public static void ExecuteOn_PartiallyFilled_Through_PublishOrderPartiallyFilled(XComponent.Order.UserObject.OrderExecution orderExecution_TriggeringEvent, XComponent.Order.UserObject.OrderExecution orderExecution_PublicMember, object object_InternalMember, RuntimeContext context, IPublishOrderPartiallyFilledOrderExecutionOnPartiallyFilledPartialExecutionFacadeSenderInterface sender) { XComponent.Shared.XCClone.Clone(orderExecution_TriggeringEvent, orderExecution_PublicMember); }
public void SendEvent(StdEnum stateMachineEnum, XComponent.Order.UserObject.OrderExecution evt, string privateTopic = null) { var incomingEvent = new IncomingEvent(evt != null ? evt : new XComponent.Order.UserObject.OrderExecution(), IncomingEventType.Transition, HeaderFactory.Create(11, (int)stateMachineEnum, -729436854, privateTopic)); PostOnStateMachine(incomingEvent, stateMachineEnum); }
public void SendEvent(XComponent.Order.UserObject.OrderExecution evt, string privateTopic = null) { SendEvent(StdEnum.TradeProcessor, evt != null ? evt : new XComponent.Order.UserObject.OrderExecution(), privateTopic); }
public void Send(Context context, XComponent.Order.UserObject.OrderExecution evt, string privateTopic = null) { var incomingEvent = new IncomingEvent(evt != null ? evt : new XComponent.Order.UserObject.OrderExecution(), IncomingEventType.Transition, HeaderFactory.Create(context, 11, privateTopic)); Agent.Post(_engineAgentsById[context.AgentId], incomingEvent); }
public void ProcessOrderExecution(Context context, XComponent.Order.UserObject.OrderExecution transitionEvent, string privateTopic = null) { _internalCommunicationLayer.Send(context, transitionEvent, privateTopic); }
public void SendEvent(XComponent.Order.UserObject.OrderExecution evt, string privateTopic = null) { _internalCommunicationLayer.SendEvent(evt, privateTopic); }
/// <summary> /// Executing triggeredMethod ExecuteOn_Filled_Through_PublishOrderFilled /// </summary> public static void ExecuteOn_Filled_Through_PublishOrderFilled(XComponent.Order.UserObject.OrderExecution orderExecution_TriggeringEvent, XComponent.Order.UserObject.OrderExecution orderExecution_PublicMember, object object_InternalMember, Context context, IPublishOrderFilledOrderExecutionOnFilledExecutionFacadeSenderInterface sender) { XComponent.Common.Clone.XCClone.Clone(orderExecution_TriggeringEvent, orderExecution_PublicMember); }