public HttpResponseMessage GetHistoricalData(string symbol) { try { List<HistoryModel> historyData; StockManager manager = new StockManager(); if (System.Web.HttpContext.Current.Cache[symbol + "history"] != null) { historyData = System.Web.HttpContext.Current.Cache[symbol + "history"] as List<HistoryModel>; } else { historyData = manager.GetHistory(symbol, null, null); System.Web.HttpContext.Current.Cache.Add(symbol + "history", historyData, null, DateTime.Now.AddMinutes(20), TimeSpan.Zero, CacheItemPriority.Default, null); } return Request.CreateResponse(HttpStatusCode.OK, historyData); //YqlManager manager = new YqlManager(); //var quotes = manager.GetHistory(symbol); //return Request.CreateResponse(HttpStatusCode.OK, quotes); } catch (Exception ex) { return Request.CreateResponse(HttpStatusCode.InternalServerError); } }
public HttpResponseMessage GetSma(DateTime? startDate, int? avergaeOnDays, string symbol) { try { var historyData = System.Web.HttpContext.Current.Cache[symbol + "history"] as List<HistoryModel>; if (historyData != null) { StockManager manager = new StockManager(); var data = manager.GetSimpleMovingAverage(startDate ?? DateTime.Now.AddYears(-1), 10, historyData); return Request.CreateResponse(HttpStatusCode.OK, data); } else { return Request.CreateErrorResponse(HttpStatusCode.Gone, new Exception("Please refresh the page!!")); } } catch (Exception ex) { return Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex); } }
public HttpResponseMessage GetStocks(int id) { StockManager manager = new StockManager(); var list = manager.GetCompanies(id); return Request.CreateResponse(HttpStatusCode.OK, list); }
public HttpResponseMessage GetQuote(string symbol) { try { StockManager manager = new StockManager(); var quote = manager.GetQuote(symbol); return Request.CreateResponse(HttpStatusCode.OK, quote); } catch (Exception ex) { return Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex); } }