Complete Python interface to IEX HTTP and WS APIs (
Clone or download
Latest commit 7cc6d56 Oct 11, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs bumping version Oct 8, 2018
pyEX change name Oct 11, 2018
tests fix test, better failure for financials Sep 24, 2018
.bettercodehub.yml Adding bch config Jan 24, 2018
.gitattributes . Sep 20, 2018
.gitignore adding earnings today Sep 11, 2018
.travis.yml . Feb 5, 2018
LICENSE Update LICENSE Aug 1, 2018 bugfix Sep 4, 2018
Makefile . Aug 13, 2018 docs update Sep 27, 2018
all.ipynb redo format Sep 27, 2018
pyex.ipynb . Aug 11, 2018
requirements.txt remove ujson dependency Oct 8, 2018
setup.cfg fix license install bug Aug 29, 2018 bumping version Oct 8, 2018
ws.ipynb adding bulk fetch minute bars Oct 10, 2018


Python interface to IEX Api (

Build Status Coverage BCH compliance License PyPI Docs


If you redistribute our API data:

  • Cite IEX using the following text and link: “Data provided for free by IEX.”
  • Provide a link to in your terms of service.
  • Additionally, if you display our TOPS price data, cite “IEX Real-Time Price” near the price.

Getting Started




  • Bulk requests

    This is your best bet for getting bulk data, it is as performant as the IEX api allows.

        def bulkBatch(symbols, types=None, _range='1m', last=10):
        def bulkBatchDF(symbols, types=None, _range='1m', last=10):
  • batch

        def batch(symbols, types=None, _range='1m', last=10):
        def batchDF(symbols, types=None, _range='1m', last=10):
  • book

        def book(symbol):
        def bookDF(symbol):
  • chart

        def chart(symbol, timeframe='1m', date=None):
        def chartDF(symbol, timeframe='1m'):
  • company

        def company(symbol):
        def companyDF(symbol):
  • collections

        def collections(tag, query):
        def collectionsDF(tag, query):
  • crypto

        def crypto():
        def cryptoDF():
  • delayedQuote

        def delayedQuote(symbol):
        def delayedQuoteDF(symbol):
  • dividends

        def dividends(symbol, timeframe='ytd'):
        def dividendsDF(symbol, timeframe='ytd'):
  • earnings

        def earnings(symbol):
        def earningsDF(symbol):
  • earningsToday

        def earningsToday(symbol):
        def earningsTodayDF(symbol):
  • spread

        def spread(symbol):
        def spreadDF(symbol):
  • financials

        def financials(symbol):
        def financialsDF(symbol):
  • ipos

        def ipoToday():
        def ipoUpcoming():
        def ipoTodayDF():
        def ipoUpcomingDF():
  • threshold

        def threshold(date=None):
        def thresholdDF(date=None):
  • shortInterest

        def shortInterest(symbol, date=None):
        def shortInterestDF(symbol, date=None):
  • marketShortInterest

        def marketShortInterest(date=None):
        def marketShortInterestDF(date=None):
  • stockStats

        def stockStats(symbol):
        def stockStatsDF(symbol):
  • largestTrades

        def largestTrades(symbol):
        def largestTradesDF(symbol):
  • list

        def list(option='mostactive'):
        def listDF(option='mostactive'):
  • logo

        def logo(symbol):
        def logoPNG(symbol):
        def logoNotebook(symbol):
  • news

        def news(symbol, count=10):
        def newsDF(symbol, count=10):
  • marketNews

        def marketNews(count=10):
        def marketNewsDF(count=10):
  • ohlc

        def ohlc(symbol):
        def ohlcDF(symbol):
  • marketOhlc

        def marketOhlc():
        def marketOhlcDF():
  • peers

        def peers(symbol):
        def peersDF(symbol):
  • yesterday

        def yesterday(symbol):
        def yesterdayDF(symbol):
  • marketYesterday

        def marketYesterday():
        def marketYesterdayDF():
  • price

        def price(symbol):
        def priceDF(symbol):
  • quote

        def quote(symbol):
        def quoteDF(symbol):
  • sectorPerformance

        def sectorPerformance():
        def sectorPerformanceDF():
  • relevant

        def relevant(symbol):
        def relevantDF(symbol):
  • splits

        def splits(symbol, timeframe='ytd'):
        def splitsDF(symbol, timeframe='ytd'):
  • volumeByVenue

        def volumeByVenue(symbol):
        def volumeByVenueDF(symbol):


  • symbols

        def symbols():
        def symbolsDF():
        def symbolsList():
  • corporateActions

        def corporateActions(date=None):
        def corporateActionsDF(date=None):
  • dividends

        def dividends(date=None):
        def dividendsDF(date=None):
  • nextDayExtDate

        def nextDayExtDate(date=None):
        def nextDayExtDateDF(date=None):
  • directory

        def directory(date=None):
        def directoryDF(date=None):

Market Data

  • tops

        def tops(symbols=None):
        def topsDF(symbols=None):
        def topsWS(symbols=None, on_data=None):
  • last

        def last(symbols=None):
        def lastDF(symbols=None):
        def lastWS(symbols=None, on_data=None):
  • hist

        def hist(date=None):
        def histDF(date=None):
  • deep

        def deep(symbol=None):
        def deepDF(symbol=None):
        def deepWS(symbols=None, channels=None, on_data=None):
  • book

        def book(symbol=None):
        def bookDF(symbol=None):
        def bookWS(symbols=None, on_data=None):
  • trades

        def trades(symbol=None):
        def tradesDF(symbol=None):
        def tradesWS(symbols=None, on_data=None):
  • systemEvent

        def systemEvent():
        def systemEventDF():
        def systemEventWS(on_data=None):
  • tradingStatus

        def tradingStatus(symbol=None):
        def tradingStatusDF(symbol=None):
        def tradingStatusWS(symbols=None, on_data=None):
  • opHaltStatus

        def opHaltStatus(symbol=None):
        def opHaltStatusDF(symbol=None):
        def opHaltStatusWS(symbols=None, on_data=None):
  • ssr

        def ssrStatus(symbol=None):
        def ssrStatusDF(symbol=None):
        def ssrStatusWS(symbols=None, on_data=None):
  • securityEvent

        def securityEvent(symbol=None):
        def securityEventDF(symbol=None):
        def securityEventWS(symbols=None, on_data=None):
  • tradeBreak

        def tradeBreak(symbol=None):
        def tradeBreakDF(symbol=None):
        def tradeBreakWS(symbols=None, on_data=None):
  • auction

        def auction(symbol=None):
        def auctionDF(symbol=None):
        def auctionWS(symbols=None, on_data=None):
  • officialPrice

        def officialPrice(symbol=None):
        def officialPriceDF(symbol=None):
        def officialPriceWS(symbols=None, on_data=None):


  • stats

        def stats():
        def statsDF():
  • recent

        def recent():
        def recentDF():
  • records

        def records():
        def recordsDF():
  • summary

        def summary(date=None):
        def summaryDF(date=None):
  • daily

        def daily(date=None, last=''):
        def dailyDF(date=None, last=''):


  • markets

        def markets():
        def marketsDF():