WEBHOOK AUTOMATION

TradingView to NinjaTrader.
In ~30 milliseconds.

Turn any TradingView alert into an executed order on NinjaTrader 8. No code, no plugins, no manual intervention. CrossTrade handles the translation, validation, and delivery.

~30ms
Avg Pipeline Latency
key=value
Simple Format
Accounts per Alert
app.crosstrade.io/webhooks
LIVE WEBHOOKS

The signal pipeline

A TradingView alert becomes an executed order on NinjaTrader in three hops. CrossTrade sits in the middle — authenticating, validating, and routing every signal.

monitoring
TradingView Signal Source
bolt
CrossTrade Validation & Routing ~30ms
terminal
NinjaTrader Execution
01 — TRADINGVIEW

Alert fires

Your TradingView strategy or indicator triggers an alert. The alert message contains a CrossTrade-formatted payload with your order details. TradingView sends it to your personal webhook URL.

02 — CROSSTRADE

Validate & route

CrossTrade receives the webhook, authenticates your key, validates the format, applies any advanced options (Strategy Sync, rate limiting, multi-account placement), and pushes the instruction to the XT Add-On via WebSocket.

03 — NINJATRADER

Order executes

The XT Add-On submits the order through NinjaTrader's Automated Trading Interface. ATM strategies, bracket orders, and all NT8-native features are available. The entire pipeline averages ~30ms.

The alert format

CrossTrade uses a simple key=value format — no JSON required. Each line ends with a semicolon. Paste it into TradingView's alert message field, or use the Automation Wizard on your dashboard to build it visually.

Alert Message // Buy 1 MES at market on sim101
key=your-secret-key;
command=PLACE;
account=sim101;
instrument=MES1!;
action=BUY;
qty=1;
order_type=MARKET;
tif=DAY;

Advanced options

Same key=value format, more power. Append any of these to your alert message to unlock advanced execution logic.

sync_lock

Strategy Sync

Compares expected vs. actual position state before every order. Prevents state drift between TradingView and NinjaTrader — the #1 cause of phantom positions and double entries.

SAFETY
speed

Rate Limiting

Block duplicate signals within a configurable time window. TradingView fires duplicate alerts more often than you'd think — rate limiting catches them before they become duplicate orders.

SAFETY
groups

Multi-Account Placement

Hit up to 10 NinjaTrader accounts from a single alert. Separate account names with commas — one webhook, one payload, all accounts filled simultaneously.

SCALE
account_tree

Bracket Orders

Add take_profit and stop_loss to any order. Supports tick, percentage, point, and dollar offsets. Plotted on TradingView for backtesting when used with the Alert Builder.

CONFIG
label

Strategy Tags

Assign position ownership with strategy_tag. Run multiple strategies on the same account and instrument without interference — Strategy B can't close Strategy A's position.

CONFIG
play_arrow

Flatten First

Close all existing positions on the account before placing the new order. One key=value pair turns a reversal into a clean slate entry. Works with or without Strategy Sync.

AUTOMATION
See all advanced options in the docs →

Don't want to write alert messages by hand?

The Automation Wizard on your CrossTrade dashboard walks you through building webhook payloads step by step — select your account, instrument, order type, and advanced options from dropdown menus. It generates the exact alert message you need, ready to paste into TradingView.

Or use the XT Alert Builder on TradingView — a Pine Script strategy that wraps your indicators and generates CrossTrade-compatible alerts with full backtesting. No code required.

Learn about the Alert Builder →

Supported order types

Everything NinjaTrader supports, CrossTrade can execute via webhook.

trending_up

Market & Limit Orders

Market orders execute immediately at current price. Limit orders sit on the book at your specified level. Both support all time-in-force options (DAY, GTC, IOC).

swap_vert

Stop & Stop Limit

Stop orders trigger at your price and execute as market. Stop limit orders trigger at your stop price and place a limit at your limit price. Full bracket support.

stacked_line_chart

ATM Strategies

Attach any NinjaTrader ATM template to your webhook order. Trailing stops, auto-breakeven, multi-target management — all handled by NT8 after CrossTrade places the entry.

close_fullscreen

Position Commands

CLOSE, FLATTEN, and CANCEL commands let you manage existing positions without placing new orders. Close a specific instrument, flatten an account, or cancel all pending orders.

What you need

REQUIRED

NinjaTrader 8

Installed and connected to at least one data feed — sim, prop, or live broker. Level 1 data is sufficient.

REQUIRED

CrossTrade Account

Free 7-day trial includes full webhook access. Standard plan starts at $29/mo after trial. No per-order fees.

REQUIRED

TradingView

Any paid TradingView plan with 2FA enabled. Free TradingView plans do not support webhook alerts.

From first alert to first fill in under 10 minutes.
Try everything free for 7 days.