public async Task DoMarketOrder(LkeHubDealModel model) { if (model.Action != "sell" && model.Action != "buy") { SendMessage("#volume" + model.CurTo, Phrases.InvalidCommand); return; } double volume; try { volume = model.Volume.ParseAnyDouble(); } catch (Exception) { SendMessage("#volume" + model.CurTo, Phrases.InvalidAmountFormat); return; } var orderAction = model.Action == "sell" ? OrderAction.Sell : OrderAction.Buy; var traderId = GetTraderId(); var asset = Dependencies.AssetPairsDictionary.FindByBasedOrQuotingAsset(model.CurFrom, model.CurTo); var marketOrder = MarketOrder.Create(traderId, asset.Id, model.CurFrom, orderAction, volume); try { await Dependencies.SrvOrdersRegistrator.RegisterTradeOrderAsync(marketOrder); SendMessage("#volume" + model.CurTo, Phrases.OrderHasBeenRegistered); } catch (Exception ex) { SendMessage("#volume" + model.CurTo, ex.Message); } }
public async Task DoMarketOrder(LkeHubDealModel model) { if (model.Action != "sell" && model.Action != "buy") { SendMessage("#volume"+model.CurTo, Phrases.InvalidCommand); return; } double volume; try { volume = model.Volume.ParseAnyDouble(); } catch (Exception) { SendMessage("#volume" + model.CurTo, Phrases.InvalidAmountFormat); return; } var orderAction = model.Action == "sell" ? OrderAction.Sell : OrderAction.Buy; var traderId = GetTraderId(); var asset = Dependencies.AssetPairsDictionary.FindByBasedOrQuotingAsset(model.CurFrom, model.CurTo); var marketOrder = MarketOrder.Create(traderId, asset.Id, model.CurFrom, orderAction, volume); try { await Dependencies.SrvOrdersRegistrator.RegisterTradeOrderAsync(marketOrder); SendMessage("#volume" + model.CurTo, Phrases.OrderHasBeenRegistered); } catch (Exception ex) { SendMessage("#volume" + model.CurTo, ex.Message); } }