コード例 #1
0
        private void UpdateMarketRealTimeQuotes(string providerName, string marketName, string data)
        {
            Configs_Market marketConfigs = this.dbcontext.GetMarketConfig(marketName);

            LOG.Log($">>> MARKET Configs: {marketConfigs.Name}|{marketConfigs.LastSync}|{marketConfigs.NextSync}|{marketConfigs.UTCOffset}|{marketConfigs.QuotesUpdatesActive}|");

            DateTime date = DateTime.UtcNow.AddHours(marketConfigs.UTCOffset);

            if (Configs_Market.QuoteUpdateAvailabe(marketConfigs, this.dbcontext.IsHoliday, date))
            {
                QuotesProvider quotesProvider = QuotesProvider.GetQuotesProviderInstance(providerName);
                Tuple <List <IRealTimeQuote>, List <IHistoricalQuote> > quotes = quotesProvider.GetQuotesFromJson(data);
                this.dbcontext.SaveRealTimeQuoteV1(quotes.Item1);
                this.dbcontext.SaveHistoricalQuoteV1(quotes.Item2);
                this.dbcontext.UpdateConfig($"{marketName}_LastSync", date.ToString());
            }
            this.dbcontext.UpdateConfig($"{marketName}_NextSync", date.AddMinutes(15).ToString());
        }
コード例 #2
0
        public IAtomixApp Start()
        {
            if (HasTerminal && HasAccount) // now client can connect only with authorization by wallet
            {
                Terminal.StartAsync().FireAndForget();
            }

            if (HasQuotesProvider)
            {
                QuotesProvider.Start();
            }

            if (HasOrderBooksProvider)
            {
                OrderBooksProvider.Start();
            }

            return(this);
        }
コード例 #3
0
        public IAtomixApp Stop()
        {
            if (HasTerminal)
            {
                Terminal.StopAsync().FireAndForget();
            }

            if (HasQuotesProvider)
            {
                QuotesProvider.Stop();
            }

            if (HasOrderBooksProvider)
            {
                OrderBooksProvider.Stop();
            }

            return(this);
        }
コード例 #4
0
 public QuotesProviderTests()
 {
     sut = new QuotesProvider(contentProvider);
 }