Skip to main content
All manual pages

Broker Link (Desktop Connector)

Broker Link is a tiny local connector that takes any symbol you click in Tapeboard and types it into DAS Trader, TWS, Webull, Lightspeed, or any other trading app on the same computer. Symbol link only — it never sends orders.

Broker Link is the desktop half of Tapeboard's symbol passthrough: you click a ticker anywhere in Tapeboard, and the connector types that symbol into your broker's window on the same computer. It replaces the copy-symbol → alt-tab → paste → Enter loop with a single click.

What it is not: it never sends orders, quantities, or prices, and it never talks to your broker's API. It only types a ticker symbol, exactly as if you typed it yourself. Nothing leaves your machine except the one websocket hop from your browser to 127.0.0.1.

How to use it

  1. Install the connector on the computer where your broker runs. It's a single Python file — download tapeboard-connector.py from the link in Settings → Broker Link, then run python tapeboard-connector.py. Windows, macOS, and Linux are supported; Python 3.9+ is the only requirement, with no pip installs.
  2. Enable Broker Link in Tapeboard: Settings → Preferences → Broker Link → toggle Broker link ON. The panel probes your connector and shows *Connector found* with its version when the handshake succeeds.
  3. Map your link channels. If you use Tapeboard's link color groups, each color can route to a different broker — e.g. red-linked scanner clicks go to DAS while blue-linked clicks go to TWS. Channels you don't care about stay Off.
  4. Click any symbol in a scanner, watchlist, chart header, or alert. The connector focuses the mapped window and types the symbol + Enter.

The first time your browser can't reach the connector it offers to launch it via the tapeboard:// protocol handler (you'll see one "Open Tapeboard Connector?" prompt from your browser — say yes and optionally "always allow"). After that, clicks flow over a persistent local websocket with no prompts.

Per-broker setup notes

  • DAS Trader Pro — the symbol is typed into the focused montage window and Enter is sent. Keep one montage visible.
  • TWS / Interactive Brokers — typed into the focused window's order line / symbol field.
  • Webull Desktop — typed into the symbol search.
  • Lightspeed Trader — typed into the symbol box.
  • Generic — types the symbol + Enter into any window whose title contains a string you choose in the connector config (~/.tapeboard-connector.json).

Config file

The connector reads ~/.tapeboard-connector.json (created on first run). You can change the listen port (default 47339, must match the port shown in Settings), the per-target window-title matches, and the channel routing used by the tapeboard:// cold-start path. Routing done in the Settings panel applies to clicks while the websocket is connected, which is the normal case.

Privacy and safety

  • The connector listens on 127.0.0.1 only — nothing on your network or the internet can reach it.
  • Dispatched symbols are validated (A–Z, digits, . - /, max 12 chars) before anything is typed.
  • The browser feature is per-device: enabling it on your trading PC does not change your laptop.
  • Tapeboard never sees your keystrokes, windows, or broker session. The only analytics events are broker_link_enabled / broker_link_probe / broker_link_emitted (symbol NOT included — target, channel, and transport only).

Troubleshooting

  • "Connector not detected" in Settings — the connector isn't running, or it's on a different port. Start it, or fix the port in ~/.tapeboard-connector.json and the Settings panel so they match.
  • Browser keeps asking to open the connector — that prompt only appears when the websocket isn't connected, at most once every 10 seconds. Starting the connector (and allowing the protocol) stops it.
  • Symbol lands in the wrong window — tighten the window-title match for that target in ~/.tapeboard-connector.json, or keep only one broker window visible.
  • macOS asks for Accessibility permission — typing keystrokes into another app requires it; grant it once for your terminal/Python in System Settings → Privacy & Security → Accessibility.