Interactive Brokers Legacy#
Note
This method has been deprecated. Please use the other Interactive Brokers tutorial.
Once installed, navigate in Trader Workstation to File -> Global Configuration -> API -> Settings The key settings required to trade using Lumibot are:
Enable ActiveX and Socket Clients
Disable Read-Only API
- Socket port
7496for live trading,7497for paper account trading. NOTE: It is highly recommended to thoroughly test your algorithm in paper trading mode before trading live.
- Socket port
Master API Client ID: You can find in the Trader Workstation by going to
File -> Global Configurations -> API -> Settings, then looking for “Master API client ID”. This can be any number you choose up to999. You will use this in your configuration file to log in.
Set up your credentials as follows in credentials.py:
INTERACTIVE_BROKERS_CONFIG = {
"SOCKET_PORT": 7497,
"CLIENT_ID": "your Master API Client ID three digit number",
"IP": "127.0.0.1",
}
Set up your entry point file as above, except using Interactive Brokers. Here is an example of a completed file:
from lumibot.traders import Trader
# Import interactive brokers
from lumibot.brokers import InteractiveBrokers
from lumibot.strategies.examples import Strangle
from credentials import INTERACTIVE_BROKERS_CONFIG
trader = Trader()
# Initialize interactive brokers
interactive_brokers = InteractiveBrokers(INTERACTIVE_BROKERS_CONFIG)
strategy = Strangle(broker=interactive_brokers)
trader.add_strategy(strategy)
trader.run_all()
You can also see the file simple_start_ib.py for a working bot here: https://github.com/Lumiwealth/lumibot/blob/master/getting_started/simple_start_ib.py