【问题标题】:YQL for getting option data用于获取期权数据的 YQL
【发布时间】:2017-05-13 16:07:14
【问题描述】:

看起来曾经有 some useful YQL ways to get option data 不再起作用。至少我不能让他们工作。

有没有新的取代他们的位置?如果没有,任何人都可以替代 YQL?

【问题讨论】:

    标签: finance yql yahoo-finance


    【解决方案1】:

    到目前为止,我发现的唯一来源是 Quandl。但是,他们的数据分布在多个数据集上,并且它是某些高级数据集的付费订阅。不过,免费服务会让您受益匪浅。

    安装只需使用pip install quandl。他们的 python 用户指南位于https://github.com/quandl/quandl-python

    这是从 quandl 提取一段时间内股息数据的示例。

    import quandl
    import requests
    import pandas as pd
    import io
    from datetime import datetime
    
    ticker = 'MSFT'
    start = '2010-05-01'
    end = '2017-05-31'
    
    url = 'https://www.quandl.com/api/v3/datasets/WIKI/{}.csv?trim_start={}&trim_end={}'\
            .format(ticker, start, end)
    
    urlData = requests.get(url).content
    rawData = pd.read_csv(io.StringIO(urlData.decode('utf-8'))).sort_values(by='Date').set_index('Date')
    
    df = pd.DataFrame(rawData[rawData['Ex-Dividend'] != 0]['Ex-Dividend'])
    df.index = pd.to_datetime(df.index)
    
    start = datetime(2015, 1, 20)
    end = datetime(2017, 1, 20)
    df[start:end]
    

    【讨论】:

      【解决方案2】:

      如果您只是在寻找美国数据并且对 Node.js 感到满意,那么 npm 上有一些出色的软件包:

      https://github.com/pilwon/node-yahoo-finance

      https://github.com/richardlevano/yahoo-nasdaq

      这些基本上是通过抓取雅虎网站,或使用请求 Nodejs 库下载 CSV 中可用的数据然后解析它来工作的。如果您查看代码,编写自己的刮板来做同样的事情也很简单。

      如果您使用的是 node-yahoo-finance,那么只需使用

      yahooFinance.snapshot({
        symbols: [SYMBOL1, SYMBOL2],
        fields: FIELDS  // ex: ['s', 'n', 'd1', 'l1', 'y', 'r']
      }, function (err, snapshot) {
        /*
        {
          AAPL: {
            symbol: 'AAPL',
            name: 'Apple Inc.',
            lastTradeDate: '11/15/2013',
            lastTradePriceOnly: '524.88',
            dividendYield: '2.23',
            peRatio: '13.29'
          },
          GOOGL: {
            symbol: 'GOOGL',
            name: 'Google Inc.',
            lastTradeDate: '11/15/2013',
            lastTradePriceOnly: '1034.23',
            dividendYield: 'N/A',
            peRatio: '28.17'
          }
        }
        */
      });
      

      对于期权数据(买卖价差)

      a:  Ask
      b:  Bid
      b2: Ask (Realtime)
      b3: Bid (Realtime)
      p:  Previous Close
      o:  Open
      

      在此处查看更多 NPM 包:- https://www.npmjs.com/browse/keyword/finance

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-09-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多