Beispiel #1
0
        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();
        }
Beispiel #2
0
        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));
        }
Beispiel #3
0
        /// <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");
        }
Beispiel #4
0
        public IActionResult Get()
        {
            var list = _observationService.GetObservations().OrderBy(it => it.DateCreated).ToList();

            return(Ok(list));
        }