Setup Guide

Complete step-by-step guide to replicate this system โ€” from zero to automated income

๐Ÿ“– This guide documents exactly how Prof Dr Tan built this system. Every step is reproducible by any working professional with zero prior trading or coding experience. Estimated total setup time: under 2 hours.
Phase 1 โ€” Brokerage Account Setup

Step 1 โ€” Open an IBKR Account

1
Go to interactivebrokers.com and open an individual account โœ… Done
Choose Individual account type. Fund with minimum USD 10,000 for meaningful income. Prof Dr Tan's account: U10500387 with Net Liquidation ~USD 471K.
2
Request Options Trading Level 3 โœ… Done
Go to Client Portal โ†’ Settings โ†’ Trading Permissions โ†’ Options โ†’ Request Level 3. Level 3 unlocks spreads (bull put spreads, iron condors). This is what we use. Approval typically takes 1-2 business days.
3
Enable TWS API โœ… Done
Open Trader Workstation (TWS) โ†’ Edit โ†’ Global Configuration โ†’ API โ†’ Settings. Check: Enable ActiveX and Socket Clients. Uncheck: Read-Only API. Socket port: 7496. Click Apply โ†’ OK. This allows the algorithm to place orders automatically.
TWS โ†’ Edit โ†’ Global Configuration โ†’ API โ†’ Settings โ˜‘ Enable ActiveX and Socket Clients โ˜ Read-Only API (must be UNCHECKED) Socket port: 7496 โ†’ Apply โ†’ OK
Phase 2 โ€” Telegram Alert Bot

Step 2 โ€” Create Your Trading Alert Bot

1
Open Telegram and find @BotFather โœ… Done
Search for @BotFather (blue verified checkmark). Tap it and send /newbot. Give your bot a name and username ending in _bot.
Search: @BotFather (verified โœ“) Send: /newbot Name: IBKR Options Income Username: ibkr_options_yourname_bot โ†’ Copy the token BotFather gives you
2
Get your Chat ID โœ… Done
Search for your new bot in Telegram and send it any message (e.g. "hello"). Then open this URL in your browser โ€” replacing TOKEN with your bot token:
https://api.telegram.org/botTOKEN/getUpdates โ†’ Find chat id: YOUR_CHAT_ID โ†’ Copy that number
3
Add secrets to GitHub โœ… Done
Go to your GitHub repo โ†’ Settings โ†’ Secrets and variables โ†’ Actions โ†’ New repository secret.
Name: TELEGRAM_BOT_TOKEN Value: your_bot_token Name: TELEGRAM_CHAT_ID Value: your_chat_id
Phase 3 โ€” GitHub Repository & Website

Step 3 โ€” Deploy the System

1
Fork or clone this repository โœ… Done
Go to github.com/ProfDrTan/ibkr-options-income and fork it to your own GitHub account. This gives you all the algorithm code, GitHub Actions schedules, and website files.
github.com/ProfDrTan/ibkr-options-income โ†’ Fork โ†’ your-username/ibkr-options-income
2
Enable GitHub Pages โœ… Done
Go to your forked repo โ†’ Settings โ†’ Pages โ†’ Deploy from branch โ†’ main / (root) โ†’ Save. Your website will be live at: your-username.github.io/ibkr-options-income
Repo โ†’ Settings โ†’ Pages Source: Deploy from branch Branch: main / (root) โ†’ Save
3
Update config.py with your IBKR account number
Edit config.py in your repo and replace U10500387 with your own IBKR account number. Also set your preferred number of spreads and risk parameters.
IBKR_ACCOUNT = "YOUR_ACCOUNT_NUMBER" NUM_SPREADS = 5 # start conservative MAX_TOTAL_RISK = 5000 # USD
Phase 4 โ€” First Trade

Step 4 โ€” Paper Trade First, Then Go Live

1
Paper trade for 2 weeks first
Change IBKR_PORT to 7497 in config.py to connect to the paper trading account. Run the exact same algorithm. Watch the recommendations and outcomes for 2 weeks before switching to live trading. This builds confidence and catches any issues.
config.py โ†’ IBKR_PORT = 7497 # paper trading After 2 weeks โ†’ IBKR_PORT = 7496 # live trading
2
Monday morning โ€” approve your first trade
Every Monday at 09:35 ET, you receive a Telegram alert with the week's SPX Bull Put Spread recommendation. Open your website dashboard, review the trade details and intel scores, then tap APPROVE. The algorithm executes on IBKR and sends a confirmation when filled.
3
Income target โ€” moderate profile
10 spreads ร— ~$175 credit = ~$1,750 gross per week. That is approximately $7,000/month on roughly $10,000 capital at risk. The system closes at 50% profit mid-week whenever possible, freeing capital for the following week. All positions are closed by Thursday to avoid weekend risk.
Weekly target: ~$875 (50% profit capture) Monthly target: ~$3,500 Annual target: ~$42,000 Capital at risk: ~$10,000/week (10 ร— $1,000)
Setup Checklist

Your Progress

โœ“
IBKR account opened and funded โœ…
โœ“
Options Level 3 approved โœ…
โœ“
TWS API enabled, Read-Only unchecked, port 7496 โœ…
โœ“
Telegram bot created and Chat ID confirmed โœ…
โœ“
GitHub repo live with all algorithm files โœ…
โœ“
GitHub Secrets added (TELEGRAM_BOT_TOKEN + TELEGRAM_CHAT_ID) โœ…
โœ“
Website live at profdrtan.github.io/ibkr-options-income โœ…
8
First Monday alert received and trade approved MONDAY
9
First trade executed on IBKR MONDAY
Press Read Aloud to listen to this page