Beispiel #1
0
        protected async Task <List <DSX.Bar> > Get24hrBars(string pairs)
        {
            var result = new List <DSX.Bar>();

            if (next24hrBarsCall > DateTime.Now)
            {
                return(result);
            }
            var resultBars = await client.GetLastBarstAsync(pairs, "h", 24).ConfigureAwait(false);

            if (resultBars.Success)
            {
                var timestamp = DateTime.Now;
                next24hrBarsCall = timestamp.AddHours(1).AddMinutes(-timestamp.Minute);
                foreach (var x in resultBars.Data)
                {
                    if (x.Value.Count == 0)
                    {
                        var bar = new DSX.Bar()
                        {
                            pair = x.Key
                        };
                        result.Add(bar);
                    }
                    else
                    {
                        var bar = x.Value.First();
                        bar.open = x.Value.Last().open;
                        bar.pair = x.Key;
                        result.Add(bar);
                    }
                }
            }
            return(result);
        }
Beispiel #2
0
 private PriceTicker Join(PriceTicker ticker, DSX.Bar bar)
 {
     ticker.PriceChange        = bar.close - bar.open;
     ticker.PriceChangePercent = CalcChangePercent(bar.close, bar.open);
     return(ticker);
 }