Interactive Brokers for orders only ,not for data feed
Is it possible to use IB for buy/sell orders (+portfolio status) but take the ticker data from a csv file ?
Can I replace the
cerebro.adddata(...)line, in the following example?
cerebro = bt.Cerebro() ibstore = bt.stores.IBStore(host='127.0.0.1', port=1001, clientId=33,notifyall=True) cerebro.broker = ibstore.getbroker() for ticker in ['AAPL', 'XOM']: ib_dataname = ticker+'-STK-SMART-USD' data = ibstore.getdata(dataname=ib_dataname,name=ticker,timeframe=bt.TimeFrame.Days, compression=1,rtbar=False) cerebro.adddata(data)
Data feeds and brokers are independent.
But you still need a contract reference for the
Brokerconnecting to Interactive Brokers, to let it know what it is being bought and sold.
Hi and thank you for your reply,
Can you elaborate what that means?
The broker needs to know what is being bought and sold. Your
csvbased data feed is not a reference for anything when talking to Interactive Brokers. You need a data feed from Interactive Brokers, even if only for it to be the target of your order.
Addtionally and taking into account that you are clearly developing software for a 3rd party and trying to get free information from the community, you could be the one actually elaborating your questions.
The software I develop is for my personal use only and I'm not trying to get anything for free,I have my own .csv files with up-to-date historical quotes which I would like to use as the data feed, while the bt-ib interface is not working smoothly,this is why I wanted to know if I may use the up-to-date csv file as datafeed while leaving the bt-ib interface for orders and portfolio status,I have done this before with C++ TWS interface and it worked fine.