Multi-Machine Setup
This guide covers advanced deployments where TWS runs on multiple machines, often with a centrally-managed NATS server — typical for family offices, hedge funds, and sophisticated traders running dedicated trading infrastructure across several workstations.
In a multi-machine deployment, TWS, NATS, and Rover typically run on one machine. Browser-based clients and Excel RTD can run on any machine on the network.
Architecture
Section titled “Architecture”┌─────────────────────────┐ ┌─────────────────────────┐ ┌─────────────────────────┐│ Machine A │ │ Machine B │ │ Machine C ││ (Server) │ │ (Workstation) │ │ (Workstation) ││ │ │ │ │ ││ TWS Desktop │ │ Browser │ │ Browser ││ NATS Server │ │ Excel RTD (optional) │ │ Excel RTD (optional) ││ Rover │ │ │ │ ││ Browser (optional) │ │ │ │ ││ Excel RTD (optional) │ │ │ │ │└───────────┬─────────────┘ └───────────┬─────────────┘ └───────────┬─────────────┘ │ │ │ └────────────────────────────┴────────────────────────────┘ LAN ConnectionBrowser clients require no installation on remote machines, but Machine A must have the firewall configured first (Step 2). Open a browser on any machine on the network and navigate to http:// followed by Machine A’s IP address and port. For example: http://192.168.1.75:5000
Excel RTD requires installation and configuration on each machine where it runs.
Step 1: Verify NATS Configuration
Section titled “Step 1: Verify NATS Configuration”By default, Rover starts NATS automatically and the installer configures NATS to listen on 0.0.0.0, which allows connections from other machines on your network. If you have a fresh installation, this is already set correctly and you can skip to Step 2.
If you are unsure, check your nats.config file (open via Desktop > OptionsRealTime > Advanced > Edit NATS Config):
host: 0.0.0.0port: 4222If it shows host: 127.0.0.1, change it to 0.0.0.0 and save the file. Restart Rover after saving — Rover picks up the new config when it spawns NATS on the next launch.
Step 2: Verify Windows Firewall
Section titled “Step 2: Verify Windows Firewall”The installer configures Windows Firewall during install, opening ports 5000 (Web UI) and 4222 (NATS) for inbound connections on your private network only — it does not expose anything to the internet. If you accepted the UAC prompt during install, you can skip this step.
If you cancelled the firewall UAC prompt or need to re-apply the rules:
- Open Desktop > OptionsRealTime > Advanced
- Double-click Setup Firewall (LAN)
- Click Yes when Windows asks for permission
- You will see confirmation that the rules were added
Step 3: Remote Browser Clients
Section titled “Step 3: Remote Browser Clients”No installation required. Once the firewall is configured on Machine A, open any browser on any machine on the network and navigate to the IP address shown on the Rover Web UI button. For example: http://192.168.1.75:5000 or http://MyMachine.local:5000
The IP address button on Rover shows the current LAN address of Machine A. Use that URL on any other machine on your network.
Step 4: Remote Excel RTD
Section titled “Step 4: Remote Excel RTD”Excel RTD requires installation on each remote machine and must be pointed at your NATS server.
- Install OptionsRealTime on the remote machine
- Open the OptionsRealTime > Advanced folder
- Double-click Edit Excel RTD Config
- Change
NatsUrlfrom localhost to the IP address of the machine running NATS (whether that’s Machine A or dedicated NATS infrastructure):
[Addin]LogLevel="trace"LogPopupLevel="error"DateFormats=["%Y-%m-%d", "%Y%b%d"]
[OptionsRealTime]NatsUrl="nats://192.168.1.100:4222"RtdThrottleMs=250MaskSize=4- Save the file and restart Excel
Step 5: Test the Connection
Section titled “Step 5: Test the Connection”- Ensure Rover is running on Machine A (this also starts NATS)
- Ensure Rover is publishing on Machine A
- Open a browser on Machine B and navigate to
http://192.168.1.75:5000 - Verify data is streaming
Network Requirements
Section titled “Network Requirements”| Port | Protocol | Purpose |
|---|---|---|
| 4222 | TCP | NATS messaging |
| 5000 | TCP | Web UI (browser clients) |
| 7496 | TCP | TWS API (Machine A only) |
Troubleshooting
Section titled “Troubleshooting”| Problem | Solution |
|---|---|
| Browser can’t connect from another machine | Run Setup Firewall (LAN) from the Advanced folder (Step 2) |
| Excel can’t connect | Verify host: 0.0.0.0 in nats.config, run Setup Firewall (LAN) from the Advanced folder |
| ”Connection refused” | Rover is not running on Machine A |
| No data appearing | Rover is not publishing, or NatsUrl is wrong in Excel RTD config |
| Setup Firewall script fails | Make sure you clicked Yes on the Windows permission prompt |
Distributed Architecture
Section titled “Distributed Architecture”OptionsRealTime is built on a distributed architecture. Each component can run on dedicated hardware:
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐│ TWS │ │ TWS │ │ IBKR Gateway│ │ TWS │ │ TWS ││ Machine 1 │ │ Machine 2 │ │ Machine 3 │ ... │ Machine 4 │ │ Machine 5 │└──────┬──────┘ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ │ │ │ │ │ └────────────────┼────────────────┘ └────────────────┘ │ ▼ ┌───────────────────┐ ┌───────────────────┐ │ Rover Server 1 │ │ Rover Server 2 │ └─────────┬─────────┘ └─────────┬─────────┘ │ │ └───────────────────────┬───────────────────────────┘ │ ▼┌─────────────────────┐ ┌─────────────────────┐ ┌─────────────────────┐│ Machine 1 │ │ Machine 2 │ │ Machine N ││ ┌──────┐ ┌──────┐ │ │ ┌──────┐ ┌──────┐ │ │ ┌──────┐ ┌──────┐ ││ │NATS 1│ │NATS 2│ ...◄──►│ │NATS 3│ │NATS 4│ ... ... ◄──►│NATS N│ │ ... │ ││ └──────┘ └──────┘ │ │ └──────┘ └──────┘ │ │ └──────┘ └──────┘ │└─────────────────────┘ └─────────────────────┘ └─────────────────────┘└──────────────────────────────────────────────────────────────────────────────── ... NATS Cluster │ ┌───────────────────────────────┼───────────────────────────────┐ │ │ │ ▼ ▼ ▼ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ Workstation │ │ Workstation │ │ Workstation │ │ (browser) │ │ (browser) │ │ (browser) │ │ (Excel RTD) │ │ (Excel RTD) │ │ (Excel RTD) │ └─────────────┘ └─────────────┘ └─────────────┘NATS supports clustering with automatic failover and horizontal scaling. Multiple Rover servers can manage independent sets of accounts. In sophisticated deployments where NATS runs separately from Rover (centrally-managed NATS cluster), set NATSLocal: false in RoverConfig.json so Rover only connects to NATS rather than spawning its own.
Browser clients and Excel RTD connect from any machine on the network.
Contact support@optionsrealtime.com for assistance with complex deployments.
What’s Next?
Section titled “What’s Next?”NATS Configuration Reference
Complete guide to NATS configuration options
Configuration Files Reference
Complete guide to all configuration options