Beispiel #1
0
 public async Task <Guide> AddGuid(Guide guide)
 {
     try
     {
         if (guide.validateAgeLimit(guide.AgeLimit))
         {
             guideRepository.Add(guide);
             var save = await guideRepository.SaveAsync(guide);
         }
         return(guide);
     }
     catch (Exception)
     {
         throw;
     }
 }
        public void ProcessFinance(Finance finance)
        {
            var obj = new FinanceEntity()
            {
                ChartPreviousClose   = finance.Chart.Result[0].Meta.ChartPreviousClose,
                Currency             = finance.Chart.Result[0].Meta.Currency,
                DataGranularity      = finance.Chart.Result[0].Meta.DataGranularity,
                ExchangeName         = finance.Chart.Result[0].Meta.ExchangeName,
                ExchangeTimezoneName = finance.Chart.Result[0].Meta.ExchangeTimezoneName,
                FirstTradeDate       = finance.Chart.Result[0].Meta.FirstTradeDate,
                Gmtoffset            = finance.Chart.Result[0].Meta.Gmtoffset,
                InstrumentType       = finance.Chart.Result[0].Meta.InstrumentType,
                PreviousClose        = finance.Chart.Result[0].Meta.PreviousClose,
                PriceHint            = finance.Chart.Result[0].Meta.PriceHint,
                Range = finance.Chart.Result[0].Meta.Range,
                RegularMarketPrice = finance.Chart.Result[0].Meta.RegularMarketPrice,
                RegularMarketTime  = finance.Chart.Result[0].Meta.RegularMarketTime,
                Scale    = finance.Chart.Result[0].Meta.Scale,
                Symbol   = finance.Chart.Result[0].Meta.Symbol,
                Timezone = finance.Chart.Result[0].Meta.Timezone
            };

            _guideRepository.Add(obj);
            _guideRepository.Save();
            var idFinance = obj.Id;

            var pre = new CurrentTradingPeriodEntity()
            {
                IdFinance = idFinance,
                Type      = "pre",
                End       = finance.Chart.Result[0].Meta.CurrentTradingPeriod.Pre.End,
                Gmtoffset = finance.Chart.Result[0].Meta.CurrentTradingPeriod.Pre.Gmtoffset,
                Start     = finance.Chart.Result[0].Meta.CurrentTradingPeriod.Pre.Start,
                Timezone  = finance.Chart.Result[0].Meta.CurrentTradingPeriod.Pre.Timezone
            };

            _currentTradingPeriodRepository.Add(pre);
            var post = new CurrentTradingPeriodEntity()
            {
                IdFinance = idFinance,
                Type      = "post",
                End       = finance.Chart.Result[0].Meta.CurrentTradingPeriod.Post.End,
                Gmtoffset = finance.Chart.Result[0].Meta.CurrentTradingPeriod.Post.Gmtoffset,
                Start     = finance.Chart.Result[0].Meta.CurrentTradingPeriod.Post.Start,
                Timezone  = finance.Chart.Result[0].Meta.CurrentTradingPeriod.Post.Timezone
            };

            _currentTradingPeriodRepository.Add(post);
            var regular = new CurrentTradingPeriodEntity()
            {
                IdFinance = idFinance,
                Type      = "regular",
                End       = finance.Chart.Result[0].Meta.CurrentTradingPeriod.Regular.End,
                Gmtoffset = finance.Chart.Result[0].Meta.CurrentTradingPeriod.Regular.Gmtoffset,
                Start     = finance.Chart.Result[0].Meta.CurrentTradingPeriod.Regular.Start,
                Timezone  = finance.Chart.Result[0].Meta.CurrentTradingPeriod.Regular.Timezone
            };

            _currentTradingPeriodRepository.Add(regular);

            foreach (var o in finance.Chart.Result[0].Meta.TradingPeriods)
            {
                foreach (var per in o)
                {
                    var trading = new CurrentTradingPeriodEntity()
                    {
                        IdFinance = idFinance,
                        End       = per.End,
                        Gmtoffset = per.Gmtoffset,
                        Start     = per.Start,
                        Timezone  = per.Timezone,
                    };
                    _currentTradingPeriodRepository.Add(trading);
                }
            }
            _currentTradingPeriodRepository.Save();

            for (int i = 0; i < finance.Chart.Result[0].Timestamp.Length; i++)
            {
                var timeStamp  = finance.Chart.Result[0].Timestamp[i];
                var quotes     = finance.Chart.Result[0].Indicators.Quote;
                var quoteIndic = new QuoteIndicatorEntity()
                {
                    IdFinance     = idFinance,
                    TimestampMeta = timeStamp,
                    QuoteClose    = quotes[0].Close[i],
                    QuoteHigh     = quotes[0].High[i],
                    QuoteLow      = quotes[0].Low[i],
                    QuoteOpen     = quotes[0].Open[i],
                    Volume        = quotes[0].Volume[i],
                };
                _quoteIndicatorRepository.Add(quoteIndic);
            }
            _quoteIndicatorRepository.Save();
        }
Beispiel #3
0
 public void AddGuide(Guide guide)
 {
     guideRepository.Add(guide);
 }