コード例 #1
0
        /// <summary>
        /// This API returns intraday time series (timestamp, open, high, low, close, volume) of the equity specified, updated realtime.
        /// </summary>
        public async Task <TimeSeriesIntraday> TimeSeriesIntraday(string symbol, IntradayInterval interval, OutputType output = OutputType.Latest100)
        {
            var function = ApiFunction.TIME_SERIES_INTRADAY;

            return(await ApiClient.SendGetAsync <TimeSeriesIntraday>(BuildUri(function), new Dictionary <string, string>
            {
                { "symbol", symbol },
                { "interval", interval.GetDescription() },
                { "outputsize", output.GetDescription() }
            }));
        }
コード例 #2
0
        public async Task <AlphaStockModel> GetIntervalData(string symbol, IntradayInterval interval)
        {
            var parameters = new List <ApiParam>
            {
                new ApiParam("function", "TIME_SERIES_INTERVAL"),
                new ApiParam("symbol", symbol),
                new ApiParam("interval", interval.ToDescription())
            };

            var apiData = await CallAlphaVantageApi(BuildRequestUrl(parameters), interval.ToDescription());

            return(apiData);
        }
コード例 #3
0
        public async Task <TimeSeriesData> RequestStockIntradayTimeSeriesAsync(
            string symbol,
            IntradayInterval interval = IntradayInterval.SixtyMin,
            TimeSeriesSize size       = TimeSeriesSize.Compact)
        {
            var query = new Dictionary <string, string>()
            {
                { StockApiQueryVars.Symbol, symbol },
                { StockApiQueryVars.IntradayInterval, interval.ConvertToString() },
                { StockApiQueryVars.OutputSize, size.ConvertToString() }
            };

            return(await RequestTimeSeriesDataAsync(ApiFunction.TIME_SERIES_INTRADAY, query));
        }
コード例 #4
0
        public static string ConvertToString(this IntradayInterval interval)
        {
            switch (interval)
            {
            case IntradayInterval.OneMin:
                return("1min");

            case IntradayInterval.FiveMin:
                return("5min");

            case IntradayInterval.FifteenMin:
                return("15min");

            case IntradayInterval.ThirtyMin:
                return("30min");

            case IntradayInterval.SixtyMin:
                return("60min");

            //unreachable:
            default:
                return(String.Empty);
            }
        }
コード例 #5
0
 public TimeSeriesData Intraday(string symbol, IntradayInterval interval, bool compactOutput = true) =>
 GetTimeSeries(symbol, "TIME_SERIES_INTRADAY", compactOutput, interval);