You can download NinjaTrader 8, install it, connect a live data feed, chart every US futures contract, backtest a strategy over seven years of history and trade a simulated account, all of it without paying anything. That single fact explains most of why serious futures systems end up on this platform rather than somewhere else.
It is not the prettiest trading software in existence. It is the one where you can check the work before you spend money.
What NinjaTrader 8 actually is
NinjaTrader 8 is a desktop trading platform: charts, order entry and market data. It also includes the part that matters here: a full programming environment for building and testing automated strategies. It has been around since the mid-2000s, version 8 since 2016, and it is entrenched in the US retail futures world the way Excel is entrenched in accounting. Not because nothing better could exist, but because everything is already built for it.
The company behind it is also a registered futures broker, which is why the naming gets confusing. "NinjaTrader" can mean the software, the brokerage, or the data subscription, and they're sold separately. You can run the software and clear through somebody else entirely, which is exactly what happens when you trade a funded account.
NinjaTrader 8 is free for charting, simulation and backtesting. You only pay when you place real orders. That means you can verify any strategy's historical results, on your own machine, before a dollar is committed.
What it costs, honestly
The licensing is tiered, and the tiers are about live trading, not about features you'd need to evaluate a system:
- Free. Charts, indicators, historical data, the strategy development environment, backtesting, and a simulated trading account fed by live market data. No time limit, no crippled features on the analysis side.
- Monthly or annual lease. Live trading with automation enabled, paid as a subscription.
- Lifetime license. A one-time purchase that keeps the same live capability permanently, plus the lowest commission rates if you clear through their brokerage.
- Free live trading with higher per-trade rates. No license fee, but you pay more per contract on every round turn.
NinjaTrader sets those prices and changes them, so check the current numbers rather than trusting a blog. The structural point holds regardless: the cost is attached to execution, and the free tier is enough to reproduce a backtest and watch a system trade in simulation for as long as you want. That is unusual, and it is worth taking advantage of before you buy anything from anyone, including us.
NinjaScript: the language underneath
Strategies and indicators for NinjaTrader 8 are written in NinjaScript, which is not really a language of its own. It is C# running on Microsoft's .NET runtime, wrapped in a framework that hands you market data and takes your orders.
That matters for two reasons. First, it's a real, compiled, general-purpose language, not a drag-and-drop rule builder, so a strategy can do genuinely complicated things with order flow, volume and session state. Second, code has to compile before it runs. A syntax error stops the build; it doesn't quietly misbehave at 8:30 AM ET.
Three kinds of things get written in NinjaScript:
- Indicators: they draw and calculate, they never place orders.
- Strategies: they decide and they place orders. This is what a trading bot is on this platform.
- Add-ons: windows and tools bolted onto the platform itself.
Most commercial systems ship as compiled assemblies rather than open source files, which protects the logic but means you can't read the rules line by line. You can still test the behavior, which is the part that actually matters.
What a strategy actually is inside the platform
Strip away the mystique and a NinjaTrader strategy is a class with a handful of methods the platform calls for you:
- A configuration stage. The platform asks the strategy what it needs: which instrument, which bar type, how much history to load, whether stops and targets attach to entries automatically.
- A market data handler. Every time a bar closes, or a tick arrives, or the order book updates, the platform calls into your code with the new information. Your logic looks at it and decides.
- Order methods. When the conditions line up, the strategy submits an entry, a stop and a target. These are real orders that land at the broker, not notes in a spreadsheet.
- Order and position callbacks. The platform tells the strategy when a fill happens, when an order is rejected, when the position changes. Good strategies handle rejections. Toys assume everything fills.
You then enable that strategy on a chart or from the Control Center, pointed at a specific account and instrument. From that moment it runs on its own. In the case of the system sold here, "runs on its own" means it waits for one window a day at 8:30 AM ET, does its work, and goes quiet. The reasoning is in why 8:30 AM ET is the moment the market shows its hand.
The platform doesn't make a strategy good. It makes a strategy checkable.
The Strategy Analyzer, and why it's the whole argument
The Strategy Analyzer is NinjaTrader 8's backtesting engine, and it is the reason performance claims on this site can be treated as claims rather than decoration. You pick a strategy, an instrument, a date range and a starting account size, press Run, and it walks the strategy through historical data bar by bar, placing simulated orders and building a report.
The report is not a single number. It gives you net profit, gross profit and loss, total trades, win rate, average winning and losing trade, profit factor, maximum drawdown, and the equity curve. It will also run optimizations across parameter ranges and walk-forward tests, which is how you find out whether a system was designed or merely fitted to the past.
The published backtest for Rentabilio was produced in exactly this tool: more than seven years (88 months), day by day, on a $50,000 funded account, one micro contract. $274,406 gross, ≈$260,700 net after commissions of roughly $1 per micro contract. 4,557 trades, a 46.2% win rate, a profit factor of 1.58, and a maximum drawdown of $4,379. Those are simulated results over historical data. No real money was at risk, and past performance, real or simulated, does not guarantee future results. The steps to reproduce them on your own machine are on the performance page.
The platform is free for backtesting. Load the strategy, set the same dates, press Run, and compare your report to ours.
Data feed and broker are two different plugs
New users trip over this constantly. NinjaTrader needs two connections and they are not the same thing:
- Market data: the stream of prices coming out of the exchange. CME charges for real-time futures data, at a modest non-professional rate per exchange per month, though many connections bundle it.
- The broker: where your orders go and where your money sits.
In practice one connection usually delivers both. NinjaTrader 8 speaks to several routing technologies (Rithmic, CQG and Continuum, Tradovate and its own brokerage among them), and prop firms tell you which one to use when they issue your account credentials. You install a connection profile, enter the credentials, and the platform is talking to that account.
| Piece | What it does | Who provides it | Free? |
|---|---|---|---|
| The platform | Charts, code, backtests, order entry | NinjaTrader | Yes for analysis and simulation |
| The license | Permits live automated trading | NinjaTrader | No: lease, lifetime, or higher commissions |
| Market data | Real-time prices from the exchange | Exchange, via your connection | Often bundled; delayed and historical data are free |
| The connection | Routes orders and data to your account | Broker or prop firm | Included with the account |
| The strategy | Decides and places the orders | You, or a vendor | Depends. See pricing |
What it runs on, and what it doesn't
NinjaTrader 8 is a Windows application built on .NET. There is no native Mac version and no native Linux version, and there is not going to be one. The platform is too deeply tied to the Windows desktop stack for a port to be a small job.
If you're on a Mac, you have three workable options: run Windows in a virtual machine, use a Windows PC for trading, or rent a small virtual private server running Windows and let the platform live there. That third option is where most people end up. A VPS costs a few dollars a month, stays on when your laptop doesn't, sits on a connection that doesn't drop when your neighborhood loses power, and means nobody has to be awake at 8:30 AM ET. For a system with one daily window, that last point is close to the entire operational argument.
The hardware requirements are modest for a single strategy on a single instrument. Backtesting and optimization are what eat CPU, and you can do that on your own machine and deploy to the small one.
Where people actually get stuck
- Not letting it finish loading. A strategy needs its historical bars before it can calculate anything. Enabling it mid-session and expecting instant behavior produces confusion, not trades.
- Wrong instrument or contract month. Futures contracts expire. Charting the wrong expiry means thin, wrong-looking data and a strategy that does nothing.
- Sim account versus live account. The platform will happily run the same strategy on both. Check which one is selected before you conclude anything about performance, in either direction.
- Time zone settings. The platform displays in whatever zone you configure. If your session times look shifted by an hour, that's daylight saving and your settings, not the market.
- Assuming it will run itself forever. Windows updates, restarts, connection drops. Somebody has to glance at it. Very little work, but not none.
The full installation path (platform, connection, license key, strategy, first simulated session) is laid out step by step in get started, and the wider comparison against other platforms is in the guide to the best trading software.
Frequently asked questions
Is NinjaTrader 8 really free?
For charting, historical data, strategy development, backtesting and simulated trading, yes, with no time limit. You pay only when you want to place live orders, and even then you can choose a license fee or higher per-contract commissions instead. This is why it's the sensible place to verify a system's claimed results before spending anything.
Can I run NinjaTrader 8 on a Mac?
Not natively. It's a Windows .NET application, so you need Windows running somewhere: a virtualization layer on your Mac, a separate Windows machine, or a Windows virtual private server. Most people who trade a single daily window end up on a VPS, because it stays online whether or not their own computer does.
Do I need to know C# to use a trading strategy?
No. Installing a compiled strategy is a matter of importing a file and enabling it on the right instrument and account. Knowing C# only matters if you intend to write or modify strategies yourself, and modifying a purchased system is usually a bad idea, because a changed strategy no longer has the track record you bought it for.
Does the Strategy Analyzer prove a system will work?
It proves what the rules did over a specific stretch of historical data, which is not the same as what they'll do next. A backtest is a simulation prepared with hindsight, and it can't fully capture slippage, liquidity or a market regime that hasn't happened yet. Its real value is negative evidence: it lets you rule out systems that never worked even in theory.
Can I use NinjaTrader 8 with a prop firm account?
Yes, and it's the standard setup for US futures prop firms. The firm issues credentials for a routing technology such as Rithmic or Tradovate, you add that connection inside the platform, and your strategy trades the funded account directly. Which firms support which connections is covered on the funded capital page.