Export historical data from Interactive Brokers and save them to CSV files easily with IBridgePy. Unlike Quantopian or zipline, IBridgePy lets you retrieve historical data with custom datetime ranges perfect for backtesting trading strategies.

Apparently, you cannot do it using Quantopian or zipline. But you can get historical data from Interactive Brokers and save them to csv files using IBridgePy easily. Also, you can specify a datetime in past as the ending time of the historical data request.
Example: Export Historical Data to CSV
In the following example, historical data of “SPY” ending by Jun 6th 2017, 9:35AM Eastern Time is requested and 10 minute bars are expected.
import datetime as dt import pytz import pandas as pd from sys import exit def initialize(context): pass def handle_data(context, data): hist = request_historical_data(symbol('SPY'), barSize = '1 min', goBack = '600 S', endTime=pytz.timezone('US/Eastern'). localize(dt.datetime(2017,6,6,9,35))) hist.to_csv('C:\your folder path\xx.csv') exit()
Print out the retrieved historical data and a few points need attentions.
- There are 10 lines in total as expected.
- The time period of market close are skipped.
- The timestamp of the last line is Jun 6th 2017, 9:34AM instead of the requested datetime of Jun 6th 2017, 9:35AM
close high low open volume 2017-06-05 15:55:00-04:00 244.02 244.05 244.00 244.01 2871 2017-06-05 15:56:00-04:00 244.01 244.03 243.99 244.03 2222 2017-06-05 15:57:00-04:00 243.97 244.01 243.94 244.01 3909 2017-06-05 15:58:00-04:00 243.91 243.98 243.91 243.98 4895 2017-06-05 15:59:00-04:00 243.97 243.99 243.91 243.92 12661 2017-06-06 09:30:00-04:00 243.27 243.34 243.23 243.31 3813 2017-06-06 09:31:00-04:00 243.22 243.29 243.19 243.27 2377 2017-06-06 09:32:00-04:00 243.26 243.26 243.21 243.22 1405 2017-06-06 09:33:00-04:00 243.23 243.37 243.22 243.26 3299 2017-06-06 09:34:00-04:00 243.21 243.23 243.18 243.23 1744
Key Considerations
When working with IBridgePy to save trading data to CSV files, remember that IB’s data services have specific time restrictions. Market data quality and availability can vary by account type and subscription level.
Learn more from Interactive Brokers platform documentation.

Thank you very much!
I will try my best to make IBridgePy easier to use.