Run add_client --id C001 --capital 500000 in the terminal to register a client.
Execute add_client in the AdminConsole terminal to hook an execution worker.
| Symbol | Qty | Avg | P&L | Client |
|---|---|---|---|---|
| TOTAL P&L | ||||
Halts all clients + broadcasts KILL_SWITCH. Two clicks within 5 s.
https:// for Upstox, Zerodha, and other strict-HTTPS brokers.
Example: https://abc123.ngrok-free.app or https://terminus.yourdomain.com
Loops all active clients, transmits market-exit requests, halts all strategy execution. 2-click / 5 s window.
| STRIKE | CALL OI | CALL IV% | SPREAD | PUT IV% | PUT OI |
|---|---|---|---|---|---|
| Waiting for option chain data… tick stream must be flowing | |||||
TrapEngine Parameters
⚡ INTRADAY SIGNALS
| Stock | Type | Strike | Entry | LTP | P&L | Spot | SL | T1 | Status | Reason |
|---|---|---|---|---|---|---|---|---|---|---|
| CLIENT ID | NAME | CAPITAL | LOT MUL | DAILY MTM | BROKER | STATUS | ACTIONS |
|---|---|---|---|---|---|---|---|
|
|
Zerodha Kite whitelists a globally-unique static IP per app, so each client needs their own egress IP. Assign the LOCAL/private IP (the bot binds orders to it) + the PUBLIC IP (the client whitelists in their broker).
b. Add the client's broker with its API credentials (api_key / api_secret / etc. per provider).
c. Redirect/postback URL (OAuth brokers): https://<your-server>/callback/<provider>.
d. Client clicks Terminal ON → logs in → token stored.
e. Client opens Deploy, picks the strategy + index, then flips that strategy's Run toggle to start.
A1. EC2 → Elastic IPs → Allocate a new EIP (public 13.x.x.x).
A2. EC2 → Instance → Networking → ENI → Manage IP addresses → Assign new IPv4 (private 172.31.x.x).
A3. Elastic IPs → the new EIP → Associate → choose the new private IP.
A4. Verify: curl --interface 172.31.x.x https://ifconfig.me → must print the new EIP.
In the app (admin): A5. Set the broker binding's source_ip = PRIVATE IP, whitelist_ip = PUBLIC EIP.
Client (broker developer console): A6. Whitelist the PUBLIC EIP (13.x.x.x) in the broker app's Allowed/Static IPs. ← the only IP the client enters.
Finish: A7. Terminal OFF → ON → confirm pm2 logs algo | grep "source IP" shows bound API egress to source IP 172.31.x.x. Orders now leave from the whitelisted EIP.