Anyone know where I can pull 15-min OHLC data on stocks through API (for free?)?

Discussion in 'Data Sets and Feeds' started by ET151, Jul 16, 2010.

  1. ET151

    ET151

    I am looking for 15-minute market snapshot data on stocks (only need for current day) that can be pulled through an API. I thought Yahoo used to have this data, but I checked and they only have daily data. Of course, their charts show this data, but I want to pull it through API so that I can archive it. I know eSignal and IQFeed supply this data, but is there a free solution?
     
  2. If you only need a snapshop, you can do this through yahoo, google, or any other free website that provides last price quotes (delayed or real-time). I do something similar with PHP and yahoo/googl quotes.

    Just code up a program that will iterate through a list of symbols and pull the current last price. Repeat every 15 minutes. No API is needed.

    For a list of available yahoo tags, see below:
    http://www.gummy-stuff.org/Yahoo-data.htm

    The speed of the scan is of course dependent on the number of symbols. If you need an instant snapshop, all symbols within 1 or 2 seconds, you will need to pay for a "real" feed.
     
  3. Bob111

    Bob111

    yep..zgtrader-you forgot to add-there is a limit(as far as i know) for yahoo requests(200 or so tickers at once) per each request
    but-yes. it's a quick and easy way to get a snapshot data
     
  4. You can get it using IB API for "free". You just have to have an account.

    AxtiveX Method:

    reqHistoricalDataEx()

    Call this method to start receiving historical data results through the historicalData() event.

    For a information about historical data request limitations, see Historical Data Limitations.

    Public Overridable Sub reqHistoricalDataEx(ByVal tickerId As Integer, ByVal contract As TWSLib.IContract, ByVal endDateTime As String, ByVal duration As String, ByVal barSize As String, ByVal whatToShow As String, ByVal useRTH As Integer, ByVal formatDate As Integer)

    Parameter
    Description

    tickerId
    The Id for the request. Must be a unique value. When the data is received, it will be identified by this Id. This is also used when canceling the historical data request.

    contract
    This structure contains a description of the contract for which market data is being requested.

    endDateTime
    Use the format yyyymmdd hh:mm:ss tmz, where the time zone is allowed (optionally) after a space at the end.

    durationStr
    This is the time span the request will cover, and is specified using the format: <integer> <unit>, i.e., 1 D, where valid units are:

    · S (seconds)

    · D (days)

    · W (weeks)

    · M (months)

    · Y (years)

    Note: If no unit is specified, seconds are used. Also, note "years" is currently limited to one.

    barSize
    The size of the bars that will be returned (within IB/TWS limits). Valid values include:

    Bar Size

    1 sec

    5 secs

    15 secs

    30 secs

    1 min

    2 mins

    3 mins

    5 mins

    15 mins

    30 mins

    1 hour

    1 day

    1 week

    1 month

    3 months

    1 year

    whatToShow
    Determines the nature of data being extracted. Valid values include:

    · TRADES

    · MIDPOINT

    · BID

    · ASK

    · BID_ASK

    · HISTORICAL_VOLATILITY

    · OPTION_IMPLIED_VOLATILITY

    · OPTION_VOLUME

    useRTH
    Determines whether to return all data available during the requested time span, or only data that falls within regular trading hours. Valid values include:

    · 0 - all data is returned even where the market in question was outside of its regular trading hours.

    · 1 - only data within the regular trading hours is returned, even if the requested time span falls partially or completely outside of the RTH.

    formatDate
    Determines the date format applied to returned bars. Valid values include:

    · 1 - dates applying to bars returned in the format:
    yyyymmdd{space}{space}hh:mm:dd

    · 2 - dates are returned as a long integer specifying the number of seconds since 1/1/1970 GMT.