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));
            }
        }
 /// <summary>
 /// Executing triggeredMethod ExecuteOn_Up_Through_ProcessOrderCreation
 /// </summary>
 /// <summary>
 /// Executing triggeredMethod ExecuteOn_Up_Through_ProcessOrderCreation
 /// </summary>
 public static void ExecuteOn_Up_Through_ProcessOrderCreation(XComponent.Order.UserObject.OrderCreation orderCreation, object object_PublicMember, object object_InternalMember, Context context, IProcessOrderCreationOrderCreationOnUpTradeProcessorSenderInterface sender)
 {
     sender.CreateTrade(context, TradeFactory.CreateNewTrade(orderCreation.OrderId, orderCreation.Quantity, orderCreation.AssetName));
 }