Beispiel #1
0
        public string GetTimeSeriesData(string symbol, string market, string frequency, string outputcount, string isadjustedvalue, string datasource)
        {
            try
            {
                TimeSeriesDataInput input = new TimeSeriesDataInput();
                if (!string.IsNullOrEmpty(market))
                {
                    CryptoTimeSeriesDataInput inputCrypto = new CryptoTimeSeriesDataInput();
                    inputCrypto.Market = market;
                    input = inputCrypto;
                }

                input.Symbol          = symbol;
                input.Frequency       = RestfulHelper.ConvertStringToBarFrequency(frequency);
                input.IsAdjustedValue = Convert.ToBoolean(isadjustedvalue);
                input.OutputCount     = Convert.ToInt64(outputcount);
                TimeSeriesDataOutput output = new MarketDataService().GetTimeSeriesData(input, datasource);
                return(RestfulHelper.ConvertBarToCSV(output.Data));
            }
            catch (Exception ex)
            {
                _Logger.Error(ex);
                throw ex;
            }
        }
Beispiel #2
0
        public string GetLatestStockHistoryPrices(string symbols, string frequency, string isadjustedvalue, string datasource)
        {
            try
            {
                string[]     symbolList = symbols.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                BarFrequency freq       = RestfulHelper.ConvertStringToBarFrequency(frequency);

                bool isAdjusted = false;
                if (!string.IsNullOrWhiteSpace(isadjustedvalue))
                {
                    if (!bool.TryParse(isadjustedvalue, out isAdjusted))
                    {
                        return("Error:isAdjustedValue");
                    }
                }

                IDictionary <string, StockBar> result = new MarketDataService().GetLatestStockHistoryPrices(symbolList, freq, isAdjusted, datasource);


                if (result != null && result.Count > 0)
                {
                    result.Values.ToCSV();
                }

                return(string.Empty);
            }
            catch (Exception ex)
            {
                _Logger.Error(ex);
                throw ex;
            }
        }
Beispiel #3
0
        public string TVC_GetHistoricalPrices(string symbol, string frequency, string from, string to)
        {
            BarFrequency freq = RestfulHelper.ConvertStringToBarFrequency(frequency);

            DateTime startDate = DateTime.MinValue;

            if (!string.IsNullOrWhiteSpace(from))
            {
                try
                {
                    startDate = Convert.ToDateTime(from);
                }
                catch (Exception)
                {
                    return("Error:from");
                }
            }
            DateTime endDate = DateTime.Today;

            if (!string.IsNullOrWhiteSpace(to))
            {
                try
                {
                    endDate = Convert.ToDateTime(to);
                }
                catch (Exception)
                {
                    return("Error:to");
                }
            }

            try
            {
                TVCHistoryResponse response = new MarketDataService().TVC_GetHistoricalPrices(symbol, freq, startDate, endDate);
                return(JsonConvert.SerializeObject(response));
            }
            catch (Exception ex)
            {
                _Logger.Error(ex);
                throw ex;
            }
        }
Beispiel #4
0
        public string GetLatestCryptoHistoryPrices(string symbols, string market, string frequency, string datasource)
        {
            try
            {
                string[]     symbolList = symbols.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                BarFrequency freq       = RestfulHelper.ConvertStringToBarFrequency(frequency);

                IDictionary <string, CryptoBar> result = new MarketDataService().GetLatestCryptoHistoryPrices(symbolList, market, freq, datasource);


                if (result != null && result.Count > 0)
                {
                    return(result.Values.ToCSV());
                }

                return(string.Empty);
            }
            catch (Exception ex)
            {
                _Logger.Error(ex);
                throw ex;
            }
        }
Beispiel #5
0
        public string GetCryptoHistoryPrices(string symbols, string market, string frequency, string startdate, string enddate, string outputcount, string datasource)
        {
            try
            {
                string[]     symbolList = symbols.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                BarFrequency freq       = RestfulHelper.ConvertStringToBarFrequency(frequency);
                DateTime?    start      = null;

                if (!string.IsNullOrWhiteSpace(startdate))
                {
                    try
                    {
                        start = Convert.ToDateTime(startdate);
                    }
                    catch (Exception)
                    {
                        return("Error:startDate");
                    }
                }
                DateTime?end = null;
                if (!string.IsNullOrWhiteSpace(enddate))
                {
                    try
                    {
                        end = Convert.ToDateTime(enddate);
                    }
                    catch (Exception)
                    {
                        return("Error:endDate");
                    }
                }
                int count = 0;

                if (!string.IsNullOrWhiteSpace(outputcount))
                {
                    if (!int.TryParse(outputcount, out count))
                    {
                        return("Error:outputCount");
                    }
                }

                IDictionary <string, CryptoBar[]> result = new MarketDataService().GetCryptoHistoryPrices(symbolList, market, freq, start, end, count, datasource);

                StringBuilder resultBuilder = new StringBuilder();

                if (result != null && result.Count > 0)
                {
                    foreach (string s in symbolList)
                    {
                        resultBuilder.AppendLine("<symbol>");
                        resultBuilder.AppendLine(s);
                        resultBuilder.AppendLine("</symbol>");
                        CryptoBar[] cryptoBars = null;
                        resultBuilder.AppendLine("<data>");

                        if (result.TryGetValue(s, out cryptoBars) && cryptoBars != null)
                        {
                            resultBuilder.Append(cryptoBars.ToCSV());
                        }
                        resultBuilder.AppendLine("</data>");
                    }
                }

                return(resultBuilder.ToString());
            }
            catch (Exception ex)
            {
                _Logger.Error(ex);
                throw ex;
            }
        }