We're excited to give you an exclusive deep dive into what we believe is the most groundbreaking development in automated trading infrastructure: CrossTrade now offers a first-of-its-kind REST API for NinjaTrader 8. Connect the CrossTrade NT8 Add-On and interact with your desktop NinjaTrader from anywhere.
If you're tired of wrestling with C# and NinjaScript limitations, frustrated by the lack of modern development tools for NT8, or simply want to integrate your existing Python, JavaScript, or Go applications with professional-grade execution, this changes everything.
Now you can code autotrading bots in Python, Javascript, Java, Go, or even assembly! The days of being locked into NinjaTrader's native development environment are over.
Let's be honest – We're not native C#/.NET programmers and it's not our first choice of language, so coding in NinjaScript is honestly a pain. If you're an algorithmic trader, you've felt this frustration too. Traditional NinjaTrader development forces you into a rigid C# environment with limited debugging capabilities, complex deployment processes, and restricted access to external data sources. But what if you could leverage the execution power of NinjaTrader 8 while building your strategies in the languages and frameworks you actually prefer?
That's exactly what the CrossTrade API delivers. If you're algotraders like us, you most likely have data sources you're analyzing outside of NinjaTrader as well. We wanted a way to execute through NT8 while being able to send orders from any code or 3rd-party service, anywhere in the world, directly to our NT8 desktop application.
Let's address the elephant in the room: We're not native C#/.NET programmers and it's not our first choice of language, so coding in NinjaScript is honestly a pain. If you're reading this, chances are you feel the same way.
Traditional NinjaTrader development traps you in an outdated C# environment with limited debugging tools, complex deployment workflows, and restricted access to modern libraries. Want to use your favorite Python machine learning frameworks? Tough luck.
Need to integrate with your existing Node.js infrastructure? Not happening. Prefer the simplicity of Go for your high-frequency strategies? Forget about it.
The CrossTrade API changes everything. Now you can code autotrading bots in Python, Javascript, Java, Go, or even assembly!
Use the libraries you know, the frameworks you love, and the deployment pipelines you've already built. Your existing infrastructure becomes your trading infrastructure.
# Trade futures with Python - it's that simple
import requests
def place_market_order(account, symbol, quantity, action):
url = f"https://app.crosstrade.io/v1/api/accounts/{account}/orders"
headers = {"Authorization": f"Bearer {your_secret_key}"}
payload = {
"instrument": symbol,
"action": action,
"quantity": quantity,
"order_type": "MARKET",
"tif": "DAY"
}
response = requests.post(url, headers=headers, json=payload)
return response.json()
# Execute a trade in 3 lines of code
place_market_order("Sim101", "ES 03-25", 2, "BUY")
Use the libraries you know, the frameworks you love, and the deployment pipelines you've already built. Your existing infrastructure becomes your trading infrastructure.
We wanted a way to execute through NT8 while being able to send orders from any code or 3rd-party service, anywhere in the world, directly to our NT8 desktop application. The CrossTrade API makes this a reality.
Your NinjaTrader desktop is no longer a limitation – it becomes a powerful execution engine that you control remotely. Whether you're running strategies from AWS cloud servers, deploying algorithms from your phone, or managing trades from a beach in Thailand, you have complete control over your NT8 accounts.
Run strategies on cloud infrastructure: Deploy your algorithms on AWS, Google Cloud, or Azure and execute trades through your home or VPS-hosted NinjaTrader instance. Scale your computing power without being tied to a single machine.
Mobile trading applications: Build custom mobile apps that interact directly with your NinjaTrader accounts. No more being limited to clunky broker mobile platforms – create the exact trading interface you want.
Multi-location redundancy: Run the same strategy from multiple locations simultaneously, with automatic failover if your primary connection drops. True enterprise-grade reliability for serious trading operations.
The world really is your oyster when your trading infrastructure isn't tied to a single desktop application.
Why pay for expensive market data feeds when you already have a NinjaTrader subscription? Anyone with a CrossTrade account can use the API to access information about your NT8 accounts, positions, orders, strategies, executions, and even instrument quotes.
The CrossTrade API transforms your NinjaTrader into a high-performance market data server that you can query from anywhere:
Real-time quotes on demand: Get live bid/ask, last price, volume, and market depth for any instrument your NinjaTrader can access. Perfect for custom indicators, market scanners, or algorithmic decision-making.
Historical data access: Pull historical bars, tick data, and execution history programmatically. Build backtesting systems that use the exact same data your live strategies will see.
Market state monitoring: Track market hours, instrument specifications, and trading sessions to ensure your algorithms adapt to changing market conditions automatically.
// Get live ES futures quote in JavaScript
const quote = await fetch('https://app.crosstrade.io/v1/api/accounts/sim101/quote?instrument=ES%2003-25', {
headers: { 'Authorization': 'Bearer ' + secretKey }
});
const marketData = await quote.json();
console.log(`ES Last: ${marketData.last}, Bid: ${marketData.bid}, Ask: ${marketData.ask}`);
This isn't some hastily-built API that breaks under pressure. The REST API is the same underlying functionality CrossTrade uses to execute orders from inbound webhook requests from TradingView. It's battle-tested and used to execute hundreds of thousands of orders in NT8 every day.
The same REST API that powers the new XT Add-On can be used by any CrossTrader, with a complete set of 25 endpoints to query account, position, and order information, as well as place, close, cancel, and modify orders.
Account Management Endpoints:
- GET account summaries, balances, and performance metrics
- Access detailed account information across multiple accounts
- Monitor real-time P&L and risk metrics
Position Control Endpoints:
- Query current positions across all accounts
- Close specific positions or flatten everything
- Reverse positions with a single API call
Order Management Endpoints:
- Place market, limit, stop, and bracket orders
- Cancel, modify, or replace existing orders
- Track order status and execution history
Strategy Monitoring Endpoints:
- Access NinjaTrader strategy performance data
- Close strategy positions programmatically
- Monitor automated strategy execution
Execution Analytics Endpoints:
- Retrieve detailed fill information
- Analyze execution quality and slippage
- Track commission and fee data
Every endpoint is designed for reliability, speed, and ease of use. Average response times under 50 milliseconds ensure your algorithms can react to market changes instantly.
Managing multiple accounts manually is a nightmare. Whether you're trading prop firm challenges, distributing risk across accounts, or testing strategies at different scales, the CrossTrade API gives you programmatic control over unlimited NinjaTrader accounts.
Coordinated strategy deployment: Execute the same strategy across 10, 50, or 100 accounts simultaneously with position sizing tailored to each account's risk parameters.
Dynamic risk distribution: Automatically allocate trades based on current account equity, drawdown levels, or performance metrics. Your algorithms can decide which accounts get which trades in real-time.
Account health monitoring: Track the performance, equity, and risk metrics of all your accounts from a single dashboard. Automatically disable underperforming accounts or adjust position sizes based on recent performance.
Prop trading optimization: Perfect for prop traders managing multiple challenges simultaneously. Different accounts can run different strategies, or the same strategy with different parameters, all managed from your central algorithm.
# Execute trades across multiple accounts with dynamic sizing
accounts = ["TopStep1", "TopStep2", "FTMO1", "Live001"]
base_quantity = 2
for account in accounts:
# Get account equity
equity_response = requests.get(f"https://app.crosstrade.io/v1/api/accounts/{account}")
equity = equity_response.json()['cash_value']
# Scale position size based on account size
scaled_qty = int(base_quantity * (equity / 50000))
# Place scaled trade
place_market_order(account, "NQ 03-25", scaled_qty, "BUY")
Speed matters in algorithmic trading. When you need to make split-second decisions based on current portfolio state, waiting for multiple API calls isn't an option. A new snapshot endpoint allows pulling all account and position data in a single API call (instead of needing multiple requests for each account).
Complete portfolio visibility in milliseconds: One API call returns your entire account state – cash balance, open positions, unrealized P&L, margin usage, and pending orders. Critical for risk management systems that need to react instantly to changing conditions.
High-frequency strategy optimization: Algorithms that need frequent portfolio updates can access complete account state without overwhelming the API with dozens of individual requests. Maintain sub-second decision loops even with complex multi-account strategies.
Risk management automation: Implement sophisticated risk controls that monitor total exposure across all accounts and instruments. Automatically adjust position sizes, close risky positions, or halt trading when portfolio-wide risk limits are approached.
Performance analytics: Track real-time performance metrics across your entire operation. Calculate Sharpe ratios, maximum drawdown, and other key metrics programmatically to optimize strategy parameters on the fly.
// Get complete portfolio snapshot in Go
type AccountSnapshot struct {
CashValue float64 `json:"cash_value"`
UnrealizedPnL float64 `json:"unrealized_pnl"`
Positions []Position `json:"positions"`
PendingOrders []Order `json:"pending_orders"`
}
func getPortfolioSnapshot(account string) (*AccountSnapshot, error) {
url := fmt.Sprintf("https://app.crosstrade.io/v1/api/accounts/%s/snapshot", account)
// Single API call returns everything you need
resp, err := client.Get(url)
// Process complete account state instantly
}
We've put in a lot of effort trying to make warnings and error messages more useful, showing you exactly what and where the problem is in the message format or field used. We want everyone to be self-sufficient and able to diagnose and fix issues quickly.
This isn't an API built by a team that's never placed a trade. We're algorithmic traders ourselves, and we built the API we wished existed when we were struggling with NinjaScript limitations and restrictive trading platforms.
Developer-friendly documentation: Clear examples in multiple programming languages, comprehensive error handling guides, and practical tutorials that get you trading in minutes, not hours.
Transparent rate limiting: 60 requests per minute gives you plenty of headroom for high-frequency operations while preventing abuse. No surprise throttling or hidden limits.
Robust error handling: When something goes wrong (and it will), you get clear, actionable error messages that help you fix the issue quickly instead of cryptic codes that leave you guessing.
The CrossTrade API is included free with every CrossTrade Pro subscription. No additional fees, no usage limits, no hidden costs – just unlimited access to the most powerful NinjaTrader API ever built.
Installation takes 5 minutes: Download the NT8 Add-On, grab your secret key, and start making API calls. No complex server setups, no infrastructure management, no DevOps headaches.
7-day free trial: Test every endpoint, build your integrations, and prove the value before you pay a penny. We're confident that once you experience the freedom of API-driven trading, you'll never go back to traditional platform limitations.
Join the API revolution: Thousands of algorithmic traders have already discovered what it feels like to have complete programmatic control over their NinjaTrader accounts. Your strategies deserve better than NinjaScript – give them the power of the CrossTrade API.
Explore how to set up your first Copier with this comprehensive, step-by-step guide on using this powerful account management tool available with CrossTrade Pro. Whether you're managing your own account or working as an active prop trader, this tool will provide you with a new level of flexibility. In this video, you'll discover how to navigate the CrossTrade Trade Copier interface and create your first copier!