/ntfdl

Download intraday and historical data from the norwegian broker Netfonds ASA

Primary LanguagePythonMIT LicenseMIT

ntfdl

A python Netfonds intraday and history data downloader and processor.

 from ntfdl import Dl
 stl = Dl('STL', exchange='OSE', download=True)
 stl.trades.tail()

Pandas dataframe

stl.trades.price.plot(drawstyle='steps')
plt.title("Statoil ASA (STL.OSE)")

Notebook example

The norwegian broker Netfonds ASA kindly makes 15 minute delayed intraday data (up to 20 days) as well as historical data available freely as csv files.

See Netfonds marketplaces for supported marketplaces.

This package uses Pandas and most returned data is a Pandas dataframe. News and Info uses bs4.

Author is not connected or affiliated with Netfonds ASA.

Supports:

  • intraday trades and optional vwap
  • intraday positions (orderbook)
  • resampling intraday trades to ohlcv with custom resampling window and optional moving averages
  • merging multiple days of intraday data (trades, positions or trades resampled as ohlcv)
  • retrieving news for instrument
  • retrieving info for instrument

Do not (yet) support:

  • Currencies
  • Commodities

Install

Ntfdl is only available from github, but if any interest I'll put it on PyPi (make an issue)

Clone or download package.

git clone https://github.com/ntftrader/ntfdl.git

You can make it a virtualenv by:

virtualenv ntfdl

Enter and activate virtualenv:

cd ntfdl/
source bin/activate

Make sure Pandas package is installed:

pip install pandas

To run the Jupyter notebooks, Jupyter needs to be installed.

Examples

Jupyter Notebooks

Ntfdl returns data as Pandas dataframes, which makes life easy for processing and plotting the dataframes.

See examples/notebooks/

Plotting with Techan.js

An example using the D3.js based financial charting library Techan.js with static csv files generated by ntfdl and Pandas DataFrame.to_csv('<filename.csv>') on the returned dataframe.

see examples/techan.js/

Techan.js example

Contributing

Found a bug? Create an issue!

Contribute code by forking the repo and submit PR's

Package ntfdl

ntfdl.Dl

ntfdl.Multi

ntfdl.News & ntfdl.Info

Requires bs4 to be installed pip install bs4.

Note: Naive implementation and will not work for exchanges except the norwegian OSE, OAX and Merkur (Norwegian Stock Exchange marketplaces)