public void Run() { Console.Clear(); var inspectionResult = _selfInspectionService.Inspect(); if (!inspectionResult.IsSuccessful) { Console.WriteLine(inspectionResult.Message); Console.WriteLine("Press any key to quit"); Console.ReadKey(); return; } Console.WriteLine("Prease any key to start it"); Console.ReadKey(); Console.Clear(); var observations = _observationService.GetObservations(); var currencyPairs = observations.Select(it => it.CurrencyPair).ToList(); _exchangeDataService.Register(currencyPairs); _exchangeDataService.Start(); _worker.Add(observations); Console.ReadLine(); Console.ReadLine(); }
public IActionResult Get() { var observations = _observationService.GetObservations(); var list = new List <WatchModel>(); foreach (var item in observations) { var orderBook = new WatchOrderBookModel(); var sell_book = _exchangeDataService.GetOrderBook(item.ToExchangeName, item.CurrencyPair); var buy_book = _exchangeDataService.GetOrderBook(item.FromExchangeName, item.CurrencyPair); var bid1 = new OrderBookItem(); var ask1 = new OrderBookItem(); if (sell_book.Bids.Count > 0) { bid1 = sell_book.Bids[0]; orderBook.Bid1 = bid1.ToString(); orderBook.Bid2 = sell_book.Bids[1].ToString(); orderBook.Bid3 = sell_book.Bids[2].ToString(); } else { orderBook.Bid1 = ""; orderBook.Bid2 = ""; orderBook.Bid3 = ""; } if (buy_book.Asks.Count > 0) { ask1 = buy_book.Asks[0]; orderBook.Ask1 = ask1.ToString(); orderBook.Ask2 = buy_book.Asks[1].ToString(); orderBook.Ask3 = buy_book.Asks[2].ToString(); } else { orderBook.Ask1 = ""; orderBook.Ask2 = ""; orderBook.Ask3 = ""; } orderBook.SpreadValue = (bid1.Price - ask1.Price).ToString("f2"); orderBook.SpreadVolume = Math.Min(bid1.Volume, ask1.Volume).ToString("f4"); var model = new WatchModel() { Observation = item, OrderBook = orderBook }; list.Add(model); } return(Ok(list)); }
/// <summary> /// Start data service, add default observations /// </summary> public void Run() { //Todo: create a service scope for each run times. else if many records are added in to coinContext. the Performance will deteriorate var observations = _observationService.GetObservations(); ///Todo: Improve if a new observatoin is added. we can register a new currencypair var currencyPairs = new List <CurrencyPair>() { CurrencyPair.BtcEur, CurrencyPair.LtcEur }; _exchangeDataService.Register(currencyPairs); _exchangeDataService.Start(); _worker.Add(observations); var wssv = new WebSocketServer(4888); wssv.AddWebSocketService <MessageBehavior>("/message"); wssv.Start(); var enviromnent = _appSettings.Production ? "production" : "test"; Console.WriteLine($"{enviromnent} enviroment"); }
public IActionResult Get() { var list = _observationService.GetObservations().OrderBy(it => it.DateCreated).ToList(); return(Ok(list)); }