public void ExecuteOrder(OrderCrypto order) { OrderCrypto tradeOrder = (OrderCrypto)order.Clone(); tradeOrder.Side = order.Side == Side.BUY ? Side.SELL : Side.BUY; TraderSubscriber.SendOrder(tradeOrder, OrderResponce); }
/* * public void Invoke(string testName) * { * // attribute type we search * System.Type attributeType = typeof(TestCommissionAttribute); * * // find method * var methodInfo = this.GetType().GetMethods().FirstOrDefault(m => * m.GetCustomAttributes(attributeType).Cast<TestCommissionAttribute>().Any() && * string.Equals(m.Name, testName, StringComparison.InvariantCultureIgnoreCase)); * * if (methodInfo != null) * { * // method found * PrintTestName(methodInfo.Name); * InitializeTestContent(); * try * { * methodInfo.Invoke(this, new object[] { methodInfo.Name }); * } * catch (Exception ex) * { * Console.WriteLine(ex.Message); * } * } * } * * public void InvokeAll() * { * System.Type attributeType = typeof(TestCommissionAttribute); * * var methodsInfo = this.GetType().GetMethods().Where(m => * m.GetCustomAttributes(attributeType).Cast<TestCommissionAttribute>().Any()).ToList(); * * foreach (var method in methodsInfo) * { * PrintTestName(method.Name); * InitializeTestContent(); * try * { * method.Invoke(this, new object[] { method.Name }); * } * catch (Exception ex) * { * Console.WriteLine(ex.Message); * } * } * } * * private void PrintTestName(string testName) * { * Console.WriteLine("Start test: {0}", testName); * } */ public void TestsConstructor(string testName, OrderType orderType, Side orderSide, CommissionAccount account, CommissionMethod method, bool isPassive) { InitializeTestContent(); TestContent.TradeSettings.Settings.BuyerTakerCommissionProgressive = 7; TestContent.TradeSettings.Settings.SellerTakerCommissionProgressive = 5; TestContent.TradeSettings.Settings.BuyerMakerCommissionProgressive = 6; TestContent.TradeSettings.Settings.SellerMakerCommissionProgressive = 4; if (orderSide == Side.BUY) { TestContent.TradeSettings.Settings.BuyerCommissionAccount = account; TestContent.TradeSettings.Settings.BuyerCommissionMethod = method; } if (orderSide == Side.SELL) { TestContent.TradeSettings.Settings.SellerCommissionAccount = account; TestContent.TradeSettings.Settings.SellerCommissionMethod = method; } ConfiguratorService.SaveTradeSetting(User.UserId, TestContent.TradeSettings.Settings); Order = new OrderCrypto() { Destination = Exchange, Quantity = method == CommissionMethod.TERM_TICKS ? 2 : 0.01, Side = orderSide, Type = orderType, SecurityId = Symbol, }; if (orderType == OrderType.LIMIT) { Order.Price = CalcAggressiveOrderPrice(orderSide); Order.TimeInForce = isPassive ? TimeInForce.DAY : TimeInForce.IOC; } GeneralCheck(testName, isPassive); }
public void SendOrder(OrderCrypto order, Action <string> action) { WebSocketService.SendMessage("", CreateOrder, order, action); }
public static string GetSendOrderRequest(OrderCrypto order) { return(String.Format("correlation-id:ioeswd7t9m\r\nX-Deltix-Nonce:{0}\r\ndestination:/app/v1/orders/create\r\n\r\n{1}", StompWebSocketService.ConvertToUnixTimestamp(DateTime.Now), JsonConvert.SerializeObject(order))); }