public static IndicatorData Indicator(TechnicalIndicator indicator, string symbol, AVInterval interval, AVSeriesType seriestype, string apikey) { IndicatorData dataTmp = new IndicatorData(indicator.Name); List <APIParameter> parameters = new List <APIParameter>() { new APIParameter("function", indicator.Name.ToUpper()), new APIParameter("symbol", symbol), new APIParameter("interval", interval.GetValue()), new APIParameter("series_type", seriestype.GetValue()), new APIParameter("apikey", apikey), }; parameters.InsertRange(3, indicator.parameters); JObject data = JsonConvert.DeserializeObject <JObject>(AlphaVantageHelper.RequestRawData(AlphaVantageHelper.CreateURL(parameters))); dataTmp.Values = data.Last.Values().OfType <JProperty>().Select(x => new KeyValuePair <DateTime, List <IndicatorSingleValue> >(Convert.ToDateTime(x.Name), x.Value.OfType <JProperty>().Select(y => new IndicatorSingleValue { Key = y.Name, Value = Convert.ToDouble(y.Value.ToString()) }).ToList() )).ToDictionary(x => x.Key, x => x.Value); return(dataTmp); }
public static SectorData SectorPerfomances(string apikey) { SectorData dataTmp = new SectorData(); List <APIParameter> parameters = new List <APIParameter>() { new APIParameter("function", "SECTOR"), new APIParameter("apikey", apikey), }; JObject data = JsonConvert.DeserializeObject <JObject>(AlphaVantageHelper.RequestRawData(AlphaVantageHelper.CreateURL(parameters))); dataTmp.RankA_Realtime.Sectors = data["Rank A: Real-Time Performance"].OfType <JProperty>().Select(x => new KeyValuePair <string, string>(x.Name, x.Value.ToString())).ToDictionary(x => x.Key, x => x.Value); dataTmp.RankB_1_Day.Sectors = data["Rank B: 1 Day Performance"].OfType <JProperty>().Select(x => new KeyValuePair <string, string>(x.Name, x.Value.ToString())).ToDictionary(x => x.Key, x => x.Value); dataTmp.RankC_5_Days.Sectors = data["Rank C: 5 Day Performance"].OfType <JProperty>().Select(x => new KeyValuePair <string, string>(x.Name, x.Value.ToString())).ToDictionary(x => x.Key, x => x.Value); dataTmp.RankD_1_Month.Sectors = data["Rank D: 1 Month Performance"].OfType <JProperty>().Select(x => new KeyValuePair <string, string>(x.Name, x.Value.ToString())).ToDictionary(x => x.Key, x => x.Value); dataTmp.RankE_3_Months.Sectors = data["Rank E: 3 Month Performance"].OfType <JProperty>().Select(x => new KeyValuePair <string, string>(x.Name, x.Value.ToString())).ToDictionary(x => x.Key, x => x.Value); dataTmp.RankF_YTD.Sectors = data["Rank F: Year-to-Date (YTD) Performance"].OfType <JProperty>().Select(x => new KeyValuePair <string, string>(x.Name, x.Value.ToString())).ToDictionary(x => x.Key, x => x.Value); dataTmp.RankG_1_Year.Sectors = data["Rank G: 1 Year Performance"].OfType <JProperty>().Select(x => new KeyValuePair <string, string>(x.Name, x.Value.ToString())).ToDictionary(x => x.Key, x => x.Value); dataTmp.RankH_3_Year.Sectors = data["Rank H: 3 Year Performance"].OfType <JProperty>().Select(x => new KeyValuePair <string, string>(x.Name, x.Value.ToString())).ToDictionary(x => x.Key, x => x.Value); dataTmp.RankI_5_Years.Sectors = data["Rank I: 5 Year Performance"].OfType <JProperty>().Select(x => new KeyValuePair <string, string>(x.Name, x.Value.ToString())).ToDictionary(x => x.Key, x => x.Value); dataTmp.RankJ_10_Years.Sectors = data["Rank J: 10 Year Performance"].OfType <JProperty>().Select(x => new KeyValuePair <string, string>(x.Name, x.Value.ToString())).ToDictionary(x => x.Key, x => x.Value); return(dataTmp); }
public static MarketData CryptoCurrency(string symbol, string apikey) { MarketData dataTmp = new MarketData(symbol); List <APIParameter> parameters = new List <APIParameter>() { new APIParameter("function", "DIGITAL_CURRENCY_DAILY"), new APIParameter("symbol", symbol), new APIParameter("market", "USD"), new APIParameter("apikey", apikey), new APIParameter("datatype", "csv") }; int[] dataMap = new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8 }; string url = AlphaVantageHelper.CreateURL(parameters); string rawData = AlphaVantageHelper.RequestRawData(url); if (rawData == null) { return(null); } string[] result = Regex.Split(rawData, "\r\n|\r|\n"); AlphaVantageHelper.ProcessRawData(result, ref dataTmp.Bars, dataMap); return(dataTmp); }
/// <summary> /// /// </summary> /// <param name="symbol"></param> /// <param name="timeseries"></param> /// <param name="interval"></param> /// <param name="outputsize"></param> /// <param name="apikey"></param> /// <returns></returns> public static MarketData Stock(string symbol, AVTimeSeries timeseries, AVInterval interval, AVOutputSize outputsize, string apikey) { MarketData dataTmp = new MarketData(symbol); List <APIParameter> parameters = new List <APIParameter>() { new APIParameter("function", timeseries.GetValue()), new APIParameter("symbol", symbol), new APIParameter("interval", interval.GetValue()), new APIParameter("outputsize", outputsize.GetValue()), new APIParameter("apikey", apikey), new APIParameter("datatype", "csv") }; int[] dataMap = new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8 }; string url = AlphaVantageHelper.CreateURL(parameters); string rawData = AlphaVantageHelper.RequestRawData(url); if (!string.IsNullOrEmpty(rawData)) { string[] result = Regex.Split(rawData, "\r\n|\r|\n"); AlphaVantageHelper.ProcessRawData(result, ref dataTmp.Bars, dataMap); } return(dataTmp); }
/// <summary> /// /// </summary> /// <param name="symbol"></param> /// <param name="market"></param> /// <param name="timeseries"></param> /// <param name="apikey"></param> /// <returns></returns> public static MarketData Digital_Currency(string symbol, string market, AVTimeSeries timeseries, string apikey) { MarketData dataTmp = new MarketData(symbol, market); List <APIParameter> parameters = new List <APIParameter>() { new APIParameter("function", timeseries.GetValue()), new APIParameter("symbol", symbol), new APIParameter("market", market), new APIParameter("apikey", apikey), new APIParameter("datatype", "csv") }; int[] dataMap = new int[] { 0, 1, 2, 3, 4, 9 }; AlphaVantageHelper.ProcessRawData(AlphaVantageHelper.RequestRawData(AlphaVantageHelper.CreateURL(parameters)).Split(Environment.NewLine), ref dataTmp.Bars, dataMap); return(dataTmp); }
/// <summary> /// /// </summary> /// <param name="symbol"></param> /// <param name="timeseries"></param> /// <param name="outputsize"></param> /// <param name="apikey"></param> /// <returns></returns> public static MarketData Stock(string symbol, AVTimeSeries timeseries, AVOutputSize outputsize, string apikey) { MarketData dataTmp = new MarketData(symbol); List <APIParameter> parameters = new List <APIParameter>() { new APIParameter("function", timeseries.GetValue()), new APIParameter("symbol", symbol), new APIParameter("outputsize", outputsize.GetValue()), new APIParameter("apikey", apikey), new APIParameter("datatype", "csv") }; int[] dataMap = new int[] { 0, 1, 2, 3, 4, 5 }; AlphaVantageHelper.ProcessRawData(AlphaVantageHelper.RequestRawData(AlphaVantageHelper.CreateURL(parameters)).Split(Environment.NewLine), ref dataTmp.Bars, dataMap); return(dataTmp); }