public async Task <IAvapiResponse_TIME_SERIES_DAILY> QueryAsync( string symbol, Const_TIME_SERIES_DAILY.TIME_SERIES_DAILY_outputsize outputsize = Const_TIME_SERIES_DAILY.TIME_SERIES_DAILY_outputsize.none) { string current_outputsize = s_TIME_SERIES_DAILY_outputsize_translation[outputsize] as string; return(await QueryPrimitiveAsync(symbol, current_outputsize)); }
public IAvapiResponse_TIME_SERIES_DAILY Query( string symbol, Const_TIME_SERIES_DAILY.TIME_SERIES_DAILY_outputsize outputsize = Const_TIME_SERIES_DAILY.TIME_SERIES_DAILY_outputsize.none) { string current_outputsize = s_TIME_SERIES_DAILY_outputsize_translation[outputsize] as string; return(QueryPrimitive(symbol, current_outputsize)); }
public IList <TimeSeries> GetTimeSeries( SymbolInformation symbol, Const_TIME_SERIES_DAILY.TIME_SERIES_DAILY_outputsize size = Const_TIME_SERIES_DAILY.TIME_SERIES_DAILY_outputsize.full) { Trace.TraceInformation( $"Download {(size == Const_TIME_SERIES_DAILY.TIME_SERIES_DAILY_outputsize.compact ? "compact" : "full")} data for {symbol.ISIN}"); var list = new List <TimeSeries>(); IAvapiResponse_TIME_SERIES_DAILY_Content seriesDaily = null; var retry = 0; while (seriesDaily == null) { try { var response = this.connection.GetQueryObject_TIME_SERIES_DAILY().Query(symbol.Symbol, size); if (response.Data != null) { seriesDaily = response.Data; } } catch { if (retry == 10) { throw; } Thread.Sleep(2000); retry++; } } foreach (var series in seriesDaily.TimeSeries) { var close = double.Parse(series.close); var open = double.Parse(series.open); var high = double.Parse(series.high); var low = double.Parse(series.low); var volume = int.Parse(series.volume); var day = DateTime.Parse(series.DateTime); // ignore missing days or days with same value but no volume (holidays?) if (((open == 0.0) && (close == 0.0) && (high == 0.0) && (low == 0.0)) || ((open == close) && (high == close) && (low == close) && (volume == 0.0))) { continue; } var timeSeries = new TimeSeries { Close = close, High = high, Open = open, Low = low, Volume = volume, Day = day }; list.Add(timeSeries); } return(list); }