
Learn that IB API centers on two classes, the client class Ekland and the Erap, connecting to TWS, requesting data, and placing orders, with Erap translating WS output for humans.
Learn the basic code architecture for a TWX API trading app by importing Ekland and Grappler, defining a class inheriting from Eruptor and Ekland, and configuring the websocket connection.
Learn how to implement multithreading in Python to stream random integers, identify the first 10 values above 100 divisible by five, and store unique results for display across threads.
Learn to use multithreading to stream real-time prices and feed them into strategies, coordinating three threads: trading app, WebSocket input, and text stream that update a shared latest price variable.
Explore fetching open orders with the api using request all open orders to see active orders by client id, and learn that the execution api provides fill details.
Fetch executed orders using the IB API execution class and request executions, then apply an execution filter to retrieve details like execution id, time, price, and quantity.
Learn to extract updated positions from the Interactive Brokers Python API, fix duplication by refreshing or updating the position data frame, and update position and average cost on the fly.
Employ multi-threading to stream and refresh historical data for an open range breakout strategy. Use history data events and ticker events to synchronize threads and avoid duplicate candles.
Demonstrate an ORB strategy using the Interactive Brokers Python API to screen gap stocks, apply capitalization and gap filters, and place bracket orders with stop loss and take profit.
Plan and execute backtesting for the open range breakout strategy by selecting a stock universe, choosing time horizons, extracting daily and intraday data, and modeling slippage.
Learn to extract daily data for a universe of stocks to backtest an open range breakout strategy with the Interactive Brokers Python API, including end-date handling and multi-ticker data coordination.
Identify daily gap stocks by comparing open prices to the prior close and calculating the gap percentage, then compute the previous five-day average volume for backtesting.
Develop a backtesting workflow with the Interactive Brokers Python API to compute daily returns from five-minute data, including take profit, stop loss, slippage; include error handling and KPI reporting.
Design and deploy advanced trading strategies on Interactive Broker's platform using parallel programming/multithreading concepts. Gain an edge in your trading by learning to harness advanced IBAPI functionalities and modules such as scanner, advanced orders etc.
You can expect to gain the following skills from this course
Applying Parallel programming concepts in API trading
Advanced order types
Harnessing streaming data (price, position, p&l)
Implementing scanner using IBAPI
Backtesting strategies
End to end design and deployment of advanced strategies
This course aims to provide a much deeper understanding of IBAPI features to beginner and intermediate level users of IBAPI. I have created this course based on the feedback received on my introductory IBAPI course from students who wanted to delve deeper and deploy advanced algorithms on IBAPI platform. This course seeks to provide you with the required tools to deploy any kind of strategy on Interactive Brokers platform and gain an edge by leveraging IBAPI's advanced functionalities.
The course covers and implements Open Range Breakout strategy which is quite complex to implement as it requires a number of tasks to be performed simultaneously (e.g. streaming current price of tickers, streaming PnL of tickers, extracting historical data periodically, performing calculations, generating signals and order management). The course explains how such strategies can be built step by step and how the various IBAPI tools can be used efficiently to ensure that the various parts of the strategy work harmoniously.