Architecture overview
Alerts enter Trade Desky from the desktop watcher or your inbound JSON webhook. The cloud parses intent and forwards futures orders to your local bridge, which hands them to NinjaTrader 8.
This guide walks through Sim101 paper first: local bridge, system-tray receiver, HTTPS forward URL on Connections, test order, then optional inbound webhooks and going live.

Alerts enter Trade Desky from the desktop watcher or your inbound JSON webhook. The cloud parses intent and forwards futures orders to your local bridge, which hands them to NinjaTrader 8.
Download the Windows installer from the download page (or use the portable ZIP). Copy NinjaTrader/*.cs into Documents\NinjaTrader 8\bin\Custom\AddOns\, compile in NinjaTrader, then open Trade Desky — NinjaTrader.
Launch Webhook Receiver from the Start Menu (or run WebhookReceiver.exe from the portable ZIP). It sits in the Windows system tray (notification area, bottom-right) — no CMD window. Right-click the icon for status, logs, config folder, restart, or quit.
Note the local webhook URL (default http://127.0.0.1:5088/webhook). Keep dry_run: true in config.json until Sim101 test fills look correct. Developers can still run python main.py from the bridge repo for a console.
Trade Desky cloud must POST to an HTTPS forward URL. You need a tunnel when the receiver runs on your PC and trade-receiver is hosted remotely.
Use Cloudflare Tunnel (cloudflared tunnel) or ngrok to map a public URL to http://127.0.0.1:5088/webhook.
Subscribe on Pricing, then open Connections:
On Connections, create an inbound webhook and copy the URL. External systems POST JSON to that endpoint. Trade Desky parses with AI and routes futures to NinjaTrader when it is your default broker.
Discord-style desktop alerts still use Trade Desky Watcher — no inbound webhook required for those.
dry_run: true.dry_run: false in the receiver config.Start in paper, connect your broker, and go live when you’re ready.
Get started