Ejemplo n.º 1
0
        public static async Task <List <AdjStockData> > GetQuandlStock(string ticker, DateTime start, DateTime end, string apiKey)
        {
            var client = new QuandlClient(apiKey);
            var data   = await client.Timeseries.GetDataAsync("WIKI", ticker, startDate : start, endDate : end);

            var models = new List <AdjStockData>();

            foreach (var d in data.DatasetData.Data)
            {
                models.Add(new AdjStockData
                {
                    Ticker      = ticker,
                    Date        = DateTime.Parse(d[0].ToString()),
                    Open        = double.Parse(d[1].ToString()),
                    High        = double.Parse(d[2].ToString()),
                    Low         = double.Parse(d[3].ToString()),
                    Close       = double.Parse(d[4].ToString()),
                    Volume      = double.Parse(d[5].ToString()),
                    DivCash     = double.Parse(d[6].ToString()),
                    SplitFactor = double.Parse(d[7].ToString()),
                    AdjOpen     = double.Parse(d[8].ToString()),
                    AdjHigh     = double.Parse(d[9].ToString()),
                    AdjLow      = double.Parse(d[10].ToString()),
                    AdjClose    = double.Parse(d[11].ToString()),
                    AdjVolume   = double.Parse(d[12].ToString())
                });
            }
            return(models.OrderBy(d => d.Date).ToList());
        }
Ejemplo n.º 2
0
        public void GetDataTest()
        {
            var client = new QuandlClient(ApiKey);
            var result = client.Timeseries.GetDataAsync("WIKI", "FB").Result;

            Assert.Equal("Date", result.DatasetData.ColumnNames.First());
        }
Ejemplo n.º 3
0
        public void GetMetadataTest()
        {
            var client = new QuandlClient(ApiKey);
            var result = client.Timeseries.GetMetadataAsync("WIKI", "FB").Result;

            Assert.Contains("Facebook", result.Dataset.Name);
        }
Ejemplo n.º 4
0
        public void GetMetadataTest()
        {
            var client = new QuandlClient(ApiKey);
            var result = client.Tables.GetMetadataAsync("AR/MWCS").Result;

            Assert.Equal("MarketWorks Futures Settlement CME", result.Datatable.Name);
        }
Ejemplo n.º 5
0
        public void GetTest()
        {
            var client = new QuandlClient(ApiKey);
            var result = client.Tables.GetAsync("ETFG/FUND", "ticker=SPY,IWM,GLD&date<2014-01-07", "ticker,date,shares_outstanding").Result;

            Assert.Equal("ticker", result.Datatable.Columns.First().Name);
        }
Ejemplo n.º 6
0
        public void GetDatabaseMetadataAsync()
        {
            var client = new QuandlClient(ApiKey);
            var result = client.Timeseries.GetDatabaseMetadataAsync("WIKI").Result;

            Assert.Equal("Wiki EOD Stock Prices", result.Database.Name);
            Assert.Contains("End of day stock prices", result.Database.Description);
        }
Ejemplo n.º 7
0
        public void DownloadTest()
        {
            var client = new QuandlClient(ApiKey);

            using (var stream = client.Tables.DownloadAsync("WIKI/PRICES").Result)
            {
                Assert.True(stream.Length > 0);
            }
        }
Ejemplo n.º 8
0
        public void GetDataAndMetadataTest()
        {
            var client = new QuandlClient(ApiKey);
            var data   = client.Timeseries.GetDataAndMetadataAsync("WIKI", "FB",
                                                                   columnIndex: 4,
                                                                   startDate: new DateTime(2014, 1, 1),
                                                                   endDate: new DateTime(2014, 12, 31),
                                                                   collapse: Collapse.Monthly,
                                                                   transform: Transform.Rdiff)
                         .Result;

            Assert.Equal("Date", data.Dataset.ColumnNames.First());
        }
Ejemplo n.º 9
0
        public async Task GetQuandlData()
        {
            //Quandl.NET - Decent API for stock price data, supposedly has more indicators etc but cant find much/ seems to be refactored.
            //https://github.com/lppkarl/Quandl.NET

            Console.WriteLine("Hello");
            var client = new QuandlClient(QuandlKey);

            // The call
            var data = await client.Timeseries.GetDataAsync("WIKI", "FB");


            // Output: "Date; Open; High; Low; Close; Volume; Ex-Dividend; Split Ratio; Adj. Open; Adj. High; Adj. Low; Adj. Close; Adj. Volume"
            Console.WriteLine(string.Join("; ", data.DatasetData.ColumnNames));

            // Output: "2017-05-26; 152.23; 152.25; 151.15; 152.13; 14907827; 0; 1; 152.23; 152.25; 151.15; 152.13; 14907827"
            Console.WriteLine(string.Join("; ", data.DatasetData.Data));
        }
Ejemplo n.º 10
0
        private static void Main(string[] args)
        {
            var client = new QuandlClient(apiKey);

            Console.WriteLine("The request is sending...");

            var result = client.Dataset.GetAsync("WIKI", "FB").Result;

            //var result = client.Database.GetZipAsync("WIKI", DownloadType.Partial).Result;
            //var result = client.Database.GetDatasetListZipAsync("WIKI").Result;
            //var result = client.Database.GetMetadataAsync("ABCD").Result;
            //var result = client.Database.GetListCsvAsync(new List<string> { "stock", "price" }, 1, 1 ).Result;
            //var result = client.Database.GetMetadataCsvAsync("WIKI").Result;

            //var rowFilter = new Dictionary<string, List<string>>();
            //rowFilter.Add("isin", new List<string> { "FI0009000681", "DE0007236101" });
            //var columnFilter = new List<string> { "isin", "company123" };
            //var result = client.Datatable.GetAsync("INQ", "EE", rowFilter, columnFilter).Result;
            //var result = client.Datatable.GetMetadataCsvAsync("INQ", "EE").Result;
            //var result = client.Datatable.GetMetadataAsync("ABCD", "GG").Result;

            //var result = client.Dataset.GetCsvAsync("WIKI", "FB").Result;
            //var result = client.Dataset.GetMetadataCsvAsync("WIKI", "FB").Result;
            //var result = client.Dataset.GetDataAndMetadataCsvAsync("WIKI", "FB", columnIndex: 4, startDate: new DateTime(2014, 1, 1), endDate: new DateTime(2014, 12, 31), collapse: Model.Enum.Collapse.Daily, transform: Model.Enum.Transform.Rdiff).Result;
            //var query = new List<string> { "crude", "oil" };
            //var result = client.Dataset.GetListCsvAsync(query, "ODA", 1, 1).Result;

            //using (result)
            //using (var fs = File.Create("test.csv"))
            //{
            //    result.CopyTo(fs);
            //}

            //var result = UsefulDataAndLists.GetSP500IndexConstituentsAsync().Result;
            //var result2 = UsefulDataAndLists.GetDowJonesIndustrialAverageConstituentsAsync().Result;
            //var result3 = UsefulDataAndLists.GetCommoditiesAsync().Result;
            //var result4 = UsefulDataAndLists.GetISOCurrencyCodesAsync().Result;
            //var result5 = UsefulDataAndLists.GetISO3LetterCountryCodesAsync().Result;
            //var result6 = UsefulDataAndLists.GetCurrencyCrossRatesAsync().Result;

            Console.WriteLine("Process completed!");
        }
Ejemplo n.º 11
0
 public void GetData()
 {
     this.quandlClient = new QuandlClient(this._apiKey);
     var test = this.quandlClient.Timeseries.GetDataAsync("CHRIS", "MGEX_IW1", 10).Result;
 }
Ejemplo n.º 12
0
 public QuandlImporter(string apiKey, string databaseCode)
 {
     _client       = new QuandlClient(apiKey);
     _databaseCode = databaseCode;
 }