$ £ ¥
¥ £ $

NinjaTrader Review

MetaTrader is the uncrowned king among Forex trading platforms. However, traders must have noticed that all Forex related forums and blogs mention NinjaTrader platform. NinjaTrader, LLC, established in 2004 in Denver, Colorado, initially started offering trading software and data services only. In 2015, the firm started offering futures and Forex brokerage services directly. NinjaTrader, the award-winning trading software, is used by more than 40,000 traders worldwide for market analysis, charting, and order execution. So, Forex and equity traders would certainly wish to know more about the performance of the NinjaTrader platform and its unique features. Let us study the NinjaTrader platform in detail and try to figure out its advantages and disadvantages. The following guide is based on NinjaTrader version 8, which the latest one as of June 2018. Future versions of the software will likely retain the most important features described here.

Basics of NinjaTrader

Before we go through the features offered by NinjaTrader, it is better to have a basic idea about the platform. Similar to MetaTrader 4/5 platforms, no fee is charged for using NinjaTrader’s standard features. This includes market analysis, charting, automated trading strategy creation, backtesting, optimization, and even trade simulation. The dedicated NinjaTrader community forum also offers thousands of indicator add-ons, which will enable a user to make informed decisions while trading in financial markets. The 30-day free trial enables a user to get accustomed to the platform before committing any capital. To execute orders using the platform, an interested trader should sign up with a supporting broker. The NinjaTrader platform, which can be run on Windows, Mac OS, and even Linux, is popular among futures traders.

NinjaTrader Trading Platform

System requirements

The following are the system requirements to run NinjaTrader 8 software:

  • Operating system: Windows 7, Windows 8, Windows 10, Windows Server 2008, Windows Server 2008 R2
  • CPU: 1 GHz or faster
  • RAM: 2GB+
  • Microsoft .NET Framework 4.5 or newer
  • Screen resolution: 1024×768 or higher
  • Video card: DirectX10 compatible

NinjaTrader does not support macOS, but you can run the platform on Apple computers with the help of Wine, Parallels, or similar software.

Platform features

NinjaTrader displays control menus, charts, and asset prices in three separate windows. Normally, trading platforms do not allow the price, navigation, and chart windows to be unpinned - everything is offered within a single window. In case of NinjaTrader, the three adjustable windows facilitate better customization according to the needs of individuals.

NinjaTrader - List of Accounts

NinjaTrader Chart Example

NinjaTrader - FX Board

Control Center

As the name indicates, Control Center is the core of the NinjaTrader platform. It enables a trader to view account details, past and pending orders, outstanding positions, and historical log information. Other global commands and features are also enabled or disabled by the Control Center while allowing access to other windows in the NinjaTrader platform.

Order window

NinjaTrader allows placing orders in the Forex and other markets using five different windows:

  • Basic Entry
  • FX Pro
  • Order Ticket
  • Dynamic SuperDOM
  • Static SuperDOM

Each of these windows has some unique characteristics. Apart from the usual limit and market entries, the Basic Entry window enables a trader to choose the current best ask or bid rate. This could be useful during calm periods. Once a trade moves in favor of a trader, the BE function can be enabled. This adjusts all stop-loss orders to break even. Likewise, the Rev menu enables a trader to close their pending long or short positions and open a reverse position with a single click. It would be useful to traders when there is unexpected news that causes a price reversal.

NinjaTrader - Basic Entry

Quite often, a trader would wish to enter only when a level is breached. For this, NinjaTrader has provided a separate button, known as MIT (Market If Touched). The MIT order changes into a market order when a particular level is hit. Different brokers support MIT in a different manner. Some Forex brokers’ servers do not act on it after a user shuts down the NinjaTrader terminal. So, it would be wise to check a Forex broker’s approach towards MIT orders before using the facility.

NinjaTrader also facilitates GTC (Good-Till-Canceled) and GTD (Good-Till-Day) orders. Furthermore, using the ATM (Advanced Trade Management) button, custom entry and exits (specific number of pips for stop-loss and take-profit) can be created. It can be even saved as a template, which can be later applied while placing orders. The platform also supports OCO (One-Cancels-Other) orders. This would be useful for channel traders - to sell at resistance or buy at support, whichever comes first.

While placing the order, NinjaTrader also shows the liquidity available at a specific price level. This facility could be useful to high volume traders.

The FX Pro order window is specifically provided for Forex traders to quickly place orders.

NinjaTrader - FX Pro Order

The Order Ticket window has been structured in a simple manner. It avoids all the complex features and enables a trader to watch market data and place orders in all the assets offered by the platform. It does not include extra facilities such as ATM, shifting stop-loss orders to break even, etc.

NinjaTrader - Order Ticket

Both dynamic SuperDOM (Depth of Market) and static SuperDOM window enables a trader to watch the market depth and place the order. However, the dynamic SuperDOM can be used for all markets, while the static SuperDOM facilitates trading only in futures.

NinjaTrader - Dynamic SuperDOM

NinjaTrader - Static SuperDOM

Advanced Trade Management (ATM)

It is a sort of semi-automated trading facility. The ATM enables a manual trader to create, save, and load a set of parameters related to an order: stop-loss, multiple profit targets, the time period for which an order is valid, ans so on. NinjaTrader enables placing orders with or without help of ATM. There are three more advanced options provided by ATM. They are:

  • Auto-Chase - the entry level of a limit order is automatically modified as the market moves away from it.
  • Auto-Reverse – enables a trader to reverse position as soon as stop-loss or profit target is hit.
  • Shadow strategy – a trader may be using a well-tested strategy. However, he might want to consider some changes (stop-loss, take-profit levels, etc.) that may improve the overall performance. In such cases, the shadow strategy facility can be activated. Whenever an order is placed based on a tested strategy, a virtual order is placed according to the modified strategy in the simulation account. This will enable a trader to perfectly assess whether the changes have a positive or negative impact on the performance.

NinjaTrader - Custom Strategy Parameters


NinjaTrader enables a user to define alert conditions within the charts, news window, and market analyzer. An alert can also be set using a custom NinjaScript indicator or a specific strategy.

NinjaTrader platform can monitor various objects (chart data series, drawing tools, and indicators) that exist on charts or any market analyzer (column value) display, and provide alerts.

In the Alert Log, a user can filter the alerts based on priority and even modify fonts. Notably, the alert window can also be made to sit on top of other windows.

NinjaTrader - Alerts Log

The alerts can be forwarded to other windows such as basic entry, SuperDOM, charts, order ticket, level II order book, and Time & Sales menu. This means that a trader can use the alert to directly trigger a trade.

The alerts can be printed, shared, and exported (CSV/XLS) as well.

Hot list Analyzer

The Hot lists analyzer facility enables a trader to track the most monitored assets. Currently, NinjaTrader supports the hot lists provided and updated by Kinetick, IQFeed, Interactive Brokers, and TD Ameritrade. This means, the criteria cannot be changed or customized. To do so, a trader has to use the market analyzer facility, whose details are provided in the next paragraph. The Hot lists Analyzer can be considered as a facility primarily offered for stock market traders. Similar to Alerts window, a trader can filter the list of assets and send it to another window (for example, basic order entry or chart), print, share, and even export. Notably, custom hot list analyzer settings can be saved as a template as well.

Level II

The Level II window enables a detailed study of the asset. Again, this is a facility specifically provided for equity and derivative market traders.

Market Analyzer

It is another powerful feature offered by NinjaTrader. There is one major difference between the Hot Lists Analyzer and Market Analyzer. The Market Analyzer allows a user to create a row of instruments as per the requirement. This is not possible with the Hot List Analyzer.

NinjaTrader - Market Analyzer

The Market Analyzer is a free-floating window of adjustable size. A user can add more columns of data using the drop-down list, add custom labeled rows (as shown below), sort, set alerts, export, print, and share asset information or even send it to another window for further analysis or placing an order. If the trader is active in more than one financial market, multiple portfolios can be created and each Market Analyzer tab can be given a separate name. Users can save the customized window as a template as well.

The Market Analyzer enables a user to perform real-time scanning of multiple assets based on customized rules. Individual cell conditions can be created.

Condition Builder

It is another powerful feature offered by the NinjaTrader platform. It can be accessed via the Market Analyzer’s Alerts Dialog screen by selecting the add option. The facility enables a trader to set complex conditions for alerts without a need for programming knowledge.

NinjaTrader - Alerts Condition Builder

Apart from the general Boolean expressions, the following kinds of conditions can be set:

  • Chart price data comparison
  • Offset value (arithmetic, percentage, pips, ticks)
  • Indicator-to-value comparison
  • Compare plot values of multi-plot indicators (stochastic, MACD, etc.)
  • Crossover
  • Time comparison (chart’s bar time data vs. a user-defined time or date value)
  • Account state comparison (for example, a trigger can be created when the trading account profit or loss crosses $1,000.)


The News window, which enables a user to receive real-time news from a data vendor or broker, can be used to create and filter alerts. Furthermore, a keyword search for the news can be done as well. Export, print, and share are other regular functions available in the News window.

Backtest, replay, simulation

NinjaTrader enables performing elaborate tests of automated trading strategies. The platform facilitates backtesting, replay, and simulation.


It allows a trader to analyze the historical performance of a strategy. NinjaTrader enables four different kinds of backtesting process: Standard, Optimization, Walk-forward optimization, and multi-objective optimization.

The Standard backtesting process analyses the performance of a strategy without giving preference to any particular performance metric or ratio. There is a number of performance measures available: maximum percentage profitable, favorable excursion, profit, net profit, probability, profit factor, R-Squared, Sharpe ratio, Sortino ratio, Ulcer ratio, win/loss ratio, and average adverse excursion.

The Optimized backtest type enables a trader to give importance to some of the performance metrics mentioned above. Furthermore, a default or Genetic optimizer can be chosen. If a Genetic optimizer is used after selecting a particular ratio to optimize, a user can configure the genetic algorithm via its properties: convergence threshold, crossover rate (%), generation size, generations, minimum performance, mutation rate, mutation strength, reset size, and stability size.

NinjaTrader platform also allows backtesting a strategy with walk forward optimization. When Optimization is chosen, a sample data will be used to test the strategy. The data will then be optimized. Furthermore, the optimized strategy will be applied to an out-of-sample data to validate the performance and avoid curve fitting. Now, walk forward optimization performs the same process over multiple sets of sample data and out-of-sample data.

NinjaTrader platform allows multi-objective optimization. A trader can select up to three performance ratios to optimize. Again, Default or Genetic optimizer strategy can be applied.

Even a basket of instruments can be selected for backtesting, optimization, and walk forward optimization. After optimization is done, a 2D (for a single parameter) or 3D (for more than two parameters) graph can be viewed.

Replay (Playback 101 facility)

This facility enables a trader to replay the price movement over a given period. NinjaTrader offers the facility to replay both Market Data and Historical Tick Data. Market data is the most accurate as it includes both level I and level II (market depth) data. The historical data does not contain level II data. Additionally, the accuracy of historical data depends on the Forex broker or data vendor.

The Market Data can be recorded by enabling the Market recording for playback menu. Level II, SuperDOM, or FX Pro window should be open and receive data for the currency pair or any other asset. Alternatively, the data can be downloaded from the NinjaTrader’s server.

Multiple assets can be added to the Market Analyzer window. Data can be recorded simultaneously. Replay facility is of great use for strategy developers as it makes the testing process as simple as possible.

Simulation (Sim 101 facility)

Simulation is just demo account trading. NinjaTrader allows multiple simulation accounts to be created. Interestingly, a trader can run a live and a simulation account simultaneously. Both live, and simulation orders can be routed to different windows. This means, a trader can use a well-tested strategy in the live account, while trying multiple trading methods in simulation accounts. If a trader is afraid of getting confused and placing orders in a live account instead of a simulation account, the Global Simulation mode can be enabled.

Both Playback 101 and Sim 101 will not yield the same results as there is no data latency when using Playback 101.

Strategy analysis

NinjaTrader facilitates automation of trading strategy using NinjaScript, which is an extension of the C# language. The Strategy Analyzer allows a user to run historical analysis on an automated trading strategy created using NinjaScript. Analysis and optimization of strategy can be done in an in-depth manner as explained in the earlier paragraphs.

The NinjaTrader’s strategy analyzer window offers detailed analysis of a strategy both in a raw mode and in the form of images. For beginners, the strategy analyzer window has provided four different sample strategies to get acquainted with the platform - ATM, MA crossover, multi-instrument, and multi-timeframe. Professionals can load their own templates and perform a detailed strategy analysis.

NinjaTrader - Strategy Analyzer Summary

While the Summary menu in the strategy analyzer window gives a basic idea about the performance of a strategy, the Analysis menu enables a trader to study the performance of a strategy during various timeframes and other conditions (daily, weekly, monthly, yearly, trades, half-hour of day, hour of day. and day of week). Further segregation can be done based on long/short calls, winning/losing trades, and even based on entry and exit time.

NinjaTrader - Strategy Analyzer - Analysis

Once any combination of the above-mentioned data are selected, a visual representation of cumulative net profit, net profit, cumulative maximum drawdown, maximum drawdown, average maximum adverse excursion, average maximum favorable excursion, average entry efficiency, average exit efficiency, and average total efficiency can be viewed.

For example, a trader can study the entry efficiency of daily winning long calls based on exit time.

NinjaTrader - Strategy Analyzer - Equity Efficiency

Multiple Analyzer tabs can be opened, if necessary, with different names. For example, a trader can see the entries on the price graph alongside the entry efficiency or drawdown. So, basically, the analyzer will allow a trader to pinpoint the strength and weakness of a strategy. This can be used to quickly fine-tune a strategy and avoid wasting time by employing a trial and error method.

NinjaTrader - Strategy Analyzer Chart

Additional Analyzer tabs providing details of orders, executions, and trades can be opened in the Strategy Analyzer window to have a better understanding of the performance of a strategy. Notably, the Strategy Analyzer window allows a Monte Carlo simulation of strategy as well. Using the Settings menu, a quick overview of the strategy employed and the trade rules can be seen.

While an equity trader may be interested in the US dollar profit or percentage generated by a strategy, Forex traders may be more interested in having an idea of the net pips generated by a strategy. The Strategy Analyzer allows a trader to view the summary and analysis of a strategy in US dollars, percent, points, pips, and ticks.

Time & Sales

NinjaTrader also provides a visual analysis of a trade flow in an asset. This enables a trader to understand whether most orders are placed above ask, at ask, at bid, below bid, or between the bid and ask price. Even the block size can be defined to create an alert. For example, an order of 100 lots can be used to trigger an alert, which can be automatically routed to a basic entry order window to open a trade. In addition to price, volume, and time details, specific colors can be chosen to represent daily high/low prices. Multiple tabs can be created to monitor more than one asset as well.

NinjaTrader - Times & Sales

Account Data

This menu offers a single point view of trading activity in multiple accounts. So, if a trader holds more than one trading account (e.g., one for Forex and one for equities), then trading activity in both accounts can be viewed in the Account Data window. A trader can select a particular trading account to view transactions or watch transactions belonging to all accounts. Furthermore, filtering based on trading activity (pending, executed, and rejected) is possible as well. Similar to other windows, transactions can be searched, exported, printed, and even shared. Appearance-wise, the windows can be customized as well.

Studying trade performance

It is quite similar to the Strategy Analyzer window. The only difference is this window enables studying the live trading performance, instead of a strategy. You can also manually select the time period for analysis. The Summary menu provides statistical studies such as Sortino ratio, Sharpe ratio, Ulcer index, profit factor, maximum drawdown, and so on for a better understanding of the trading performance. Additionally, it provides backtesting studies offered in platforms such as MetaTrader 4, for example: average winning trade, average losing trade, etc.

Similar to Strategy Analyzer window, the Analysis menu in the Trade Performance window enables a trader to study the performance of a strategy using various timeframes and conditions (daily, weekly, monthly, yearly, trades, half-hour of day, hour of day, and day of week). Further analysis can be done based on long/short calls, winning/losing trades, and even based on entry and exit time.

Once any of the combination of the above-mentioned data is selected, a visual representation of cumulative net profit, net profit, cumulative maximum drawdown, maximum drawdown, average maximum adverse excursion, average maximum favorable excursion, average entry efficiency, average exit efficiency, and average total efficiency can be viewed.

For example, a trader can study the cumulative maximum drawdown of hourly trades based on entry time.

Multiple Report tabs can be opened, with different names. For example, a trader can view the Summary or Analysis of performance alongside the execution, orders, and trades made over a given period. Even manual entry or removal of executions is possible. The manual entry feature may be useful if you execute orders through multiple platforms but wish to analyze them all through NinjaTrader. You can use the trade removal option to eliminate out-of-strategy results, which would otherwise distort the performance results.

NinjaTrader - Trade Performance

A trader can study the performance in currency, percentage, points, pips, and ticks format.

NinjaScript Editor

NinjaScript Editor enables a user to create custom indicators and strategies in an efficient manner. The editor also includes a help section, which offers coding assistance and advanced debugging tools. It has a built-in tool named Intelliprompt that provides intelligent code completion to developers of automated trading programs and indicators.

By pressing Ctrl-Space after typing a text, the Intelliprompt list box containing suitable methods and properties can be opened. The entire pieces of code can be inserted automatically.

NinjaScript Editor

To speed up coding, NinjaTrader also offers code snippets. These code templates can be easily accessed through F2 button, by typing the snippet shortcut, followed by the tab key, or using the right-click.

NinjaScript Editor - Code Snippet

NinjaScript Explorer is usually pinned to the right-hand side of the NinjaScript Editor, as shown in the image above. However, if needed, a trader can unpin the script explorer. For performance reasons, NinjaScript compiles custom-built scripts together. To avoid issues with compilation, NinjaScript editor has provided a facility to exclude one or more files from getting compiled. This facility will be useful while handling several custom-built indicators.

Many a time, some portion of code would remain the same in several trading strategies. The NinjaScript Wizard, which can be opened using the ‘+’ sign in the lower portion of NinjaScript Editor, provides the basic code that will make it easy to begin programming a custom indicator or any other supported type.

NinjaScript Editor - Wizard

A range of properties for the custom indicator or strategy can be defined as shown in the image above. It saves time by minimizing the coding work. Even CPU intensive additional events such as OnMarketData and OnMarketDepth can be included using the wizard.

NinjaScript Editor also includes documentation for different kinds of compiling errors. The Output menu allows further debugging of data generated by a user-created NinjaScript file. It is also possible to debug NinjaScript objects using Microsoft Visual Studio.

In order to differentiate print data of two separate scripts, NinjaTrader is offering two Output tabs. If necessary, for comparison purposes, a Dual View can be created with possible synchronized scrolling.

NinjaScript - Output Window

NinjaScript - Output Window - Dual View

The Output can be printed and shared as well. Theoretically, NinjaScript can be used to program any complex strategy. It supports multiple charting types, has a supportive community, offers great technical assistance, facilitates many third-party add-ons, and is scalper friendly. However, the learning curve is steep. Even simple strategies take time to program. Position sizing strategies are difficult to program and need extra work to simulate in the strategy tester.

Strategy Builder

Strategy Builder enables the creation of strategies for automated trading. It is offered to those who wish to build their own custom strategies, but do not possess knowledge of programming in C#. Basically, it offers a great foundation to enter the world of automated trading. The strategy builder allows the addition of custom series for a strategy. Most of the indicator-based strategies can be created very easily. Furthermore, unlimited number of conditions and related actions can be created. Conditions can be grouped if necessary. The menu-driven screen is extremely simple and easy to handle even for traders who have never before automated a strategy. Only complex strategies, which involve many mathematical calculations, need to be programmed.

NinjaTrader - Strategy Builder

Linking windows

Linking windows is yet another extremely important function offered by NinjaTrader. All the sub-windows (Basic Entry, Charts, Alerts, Time and Sales, News, Market Analyzer, and FX Board) have a link button in the top-right corner. Two or more windows can be linked by choosing the same color. This facility is provided to quickly change an asset in all the windows. Once linked, an instrument change in one window is reflected immediately on others. In a fast-moving market, this facility will be immensely helpful to flip through various assets, perform analysis and place orders, without a need to change individually in each window. There is also a facility to link a window to all colors. This will enable the window to receive transmission from windows with any link color selected.

For example, the Market Analyzer window can be linked to the Basic Entry window as below. The yellow colored square on both windows indicates the link. Any asset selected in Market Analyzer is transmitted to the Basic Entry window. This provision can be used to quickly analyze or place order.

NinjaTrader - Basic Entry Linked Window

NinjaTrader - Market Analyzer

NinaTrader also provides an additional function to link chart intervals. This means when a trader switches from one time interval to another, say, for example, 15 minutes to 1 hour, all the linked chart windows will shift to the 1 hour timeframe.


Using a single NinjaTrader platform, a trader can simultaneously trade Forex, equities, indices, CFDs, and other derivative instruments offered by different brokers or connectivity providers. The Instruments menu enables addition or removal of a Forex, equity, CFD, or any other supported assets, regardless of the broker. This avoids the need to maintain multiple databases within a user’s system. All other parameters necessary to provide price quotes and to route orders to various brokers are maintained by this master Instruments window. A predetermined list of instruments is maintained in the local database of the platform user. The database is updated whenever the NinjaTrader application is run. Still, there may be situations where a particular asset supported by a specific broker (for example, EUR/HUF) has to be loaded for trading.

The Instruments menu in the Tool tab of the control center enables addition of instruments.

NinjaTrader - Instruments

The instruments that we have added can be viewed on the Instrument List. Using the menu, it is possible to remove the added instruments.

NinjaTrader - Instrument List

The Instruments and Instrument List menus would be useful when trading futures contracts, which expire on a given date. Big traders, who trade on multiple contracts, may find it difficult to add a huge list every time. For this purpose, NinjaTrader has provided the Roll-over facility. It can be accessed using Database management menu on the Tool tab.

NinjaTrader - Instruments Database

Hot key setting

Routine tasks can be simplified in NinjaTrader by assigning hot keys. There are also preassigned hot keys for performing certain functions. For example, Ctrl+F will open a database window. A user can assign hot keys globally or specifically to a Chart, Market Analyzer, NinjaScript Editor, Basic Entry, or SuperDOM.

NinjaTrader - Hot Keys

Hot keys list can be printed for quick reference.

Historical Data

NinjaTrader provides access to Historical and Market Replay Data through the Historical Data menu situated in the Tools tab. In additional to traditional formats, it supports importing the data in MetaStock format. Additionally, both NinjaTrader End of bar time and Start of bar time data format can be imported. The loaded historical data can be edited if necessary. The status column provides details regarding the changes made to the data. Likewise, data can be exported by suggesting the interval (tick, minute, or day) and type (Ask, bid, or last.). Fresh data can be downloaded from the connected broker.

NinjaTrader - Historical Data


If a trader is dealing directly with NinjaTrader’s brokerage service, then the commission charged per trade depend on the type of NinjaTrader license. A user can study the commission structure using the Commissions menu provided in the Tools tab. In case a trader wishes to include the commission structure into strategy analysis, it can be done as well. This will enable a perfect assessment of trading performance.


The Options menu offers a great deal of additional settings under General, Trading, Strategies, Automated trading interface, and Market data. Some of the notable ones include transmission of Log Alert messages to email inbox, and a sound alert on reversal of orders, auto-breakeven, auto-chase, and auto-trail trigger. There is an option to enable the use of FIFO for position average price calculations. Even time-based auto-closing of positions can be enabled.

Furthermore, auto-cancellation of orders can be accomplished when a NinjaScript is disabled. The manner an order is handled (Submit as is, Submit and forget, Market order on TradeStation fill) can be modified using the options menu. Equity traders can adjust historical price data for stock splits and dividends. The market movement can be recorded for playback as well. You can also set up different brokers or websites for historical and real-time connections here.

NinjaTrader - Options

Close at time – closes a position at a specified time. Beginner traders, afraid of having open positions during big news events, can use this facility to exit on time.

For a quick review of activities, NinjaTrader provides six tabs (Orders, Executions, Strategies, Positions, Accounts, and Log) on the lower portion of the Control Center. Such popular info as orders, executions, strategies employed, positions, and overall account details can be checked in the respective tabs provided at the lower end of the Control Center window.


Since a variety of instruments are offered for trading, traders active in more than one market may have doubts regarding the margin requirements. The Risk menu clearly lists all the assets available for trading, the initial and maintenance margin, and the position limits. By default, the column shows the trading conditions of NinjaTrader Brokerage service. New templates can be added as well.

NinjaTrader - Risk

Likewise, the Trading hours menu displays the time period during which an asset will be available for trading in a particular market. The list of holidays is shown too. If necessary, a trader can add, edit, or remove a session or a holiday.

NinjaTrader also allows import and export of backup files, historical data, stock symbol list, and NinjaScript files. If there is a need to re-install the operating system or upgrade the hardware, the backup facility will be of immense use. The Remove NinjaScript Assembly menu enables removing an indicator quickly from the trading platform.

Charting window

When it comes to the analysis of price data on chart, NinjaTrader is arguably the best option available for retail Forex traders. The number of charts that can be opened is limited only by the PC resources. Notably, NinjaTrader allows opening more charts in separate windows, in two different panels in the same window, or even within a single panel. Additionally, within a single window, multiple chart tabs can be opened as well.

NinjaTrader - Charting Window

NinjaTrader - Chart Combination - Separate Panels

NinjaTrader - Chart Combination - Single Panel

As it can be seen, the prices should be comparable to open two different assets in the same chart panel. Other changes that can be accomplished using the Data Series window are as follows:

  • The chart can be based on ask, bid, or last price.
  • Number of days or bars to be loaded along with an ending date can be set.
  • We can have a continuous chart or enable a break at the end of the day.
  • Exchange based trading hours can be set.

Furthermore, the charting window supports the following chart styles:

  • Box – by using data series of an asset, pertaining to two different time frames, a detailed analysis of the trading range of an asset can be analyzed. The AUD/USD chart below was constructed using a 1-hour data (boxes) applied over a 15-minute data (candles).

    NinjaTrader - Box Chart

  • Candlesticks
  • Kagi line – purely based on the price with no consideration to time or volume
  • Line on close
  • Mountain
  • OHLC, HLC, HiLo
  • Open/Close
  • Point-and-figure – many charting platforms, including MetaTrader 4 / MetaTrader 5, do not offer point-and-figure charts as a standard. NinjaTrader, however, offers them in a customizable manner. Notably, it loads quickly without using too many resources.

NinjaTrader enables a user to set the bar/candle size in multiple ways:

  • Ticks – a trader can select 100, 200, 300, 400, 500, or 1,000 ticks for a bar. Once the number of ticks gets completed, the formation of a new bar will begin.
  • Volume – this allows a trader to specify the number of units that make up a bar on the chart. A trader can choose one of the five volume levels - 1,000, 5,000, 10,000, 25,000, 50,000, or 100,000.
  • Range – enables a trader to set a price range (1, 2, 3, 4, 5, 10, 15, 30, and 60) for a bar. The bar will develop until the price range is broken.

Additionally, chart bars can be set in seconds (1, 2, 3, 4, 5, 10, 15, 30, and 60), minutes (1, 2, 3, 4, 5, 10, 15, 30, and 60), hour, day, week, month, or year. You can also modify the bar spacing and width.

Drawing facility

NinjaTrader enables drawing the following objects on the chart screen:

  • Line
  • Ray
  • Extended line
  • Arrow line
  • Horizontal line
  • Vertical line
  • Fibonacci retracements, extensions, and time extensions
  • Fibonacci circle
  • Andrew’s pitchfork
  • Gann fan
  • Regression channel
  • Trend channel
  • Ellipse
  • Rectangle
  • Triangle
  • Arc
  • Text
  • Arrow up/down
  • Triangle up/down
  • Diamond, dot, and square
  • Region highlight X
  • Region highlight Y

Additionally, NinjaTrader offers Ruler, which enables measuring key metrics such as number of bars, time period, and Y-axis value within an instrument’s price movement.

NinjaTrader - Chart Ruler

Another notable feature in the drawing facility is the Risk-Reward menu. It enables a trader to quickly make the risk-reward assessment in percentage, ticks, currency, and pips.

NinjaTrader - Measuring Risk-to-Reward Ratio on the Chart

The Snap Mode menu allows attaching drawing object to price and/or time data within the chart.


While studying the price data on a chart, a trader can use either a mouse pointer or a cross hair view. Additionally, NinjaTrader offers a Global View facility to move the cursor (mouse pointer or cross hair) simultaneously in more than one chart. This feature allows to perform an in-depth study of what happened in two different assets simultaneously. The chart settings can be saved as a template for quick loading. Alerts can also be set directly in a chart via the right-click menu.

The Data Box menu enables a trader to understand the price movements within a given period.

NinjaTrader - Data Box

Chart trading

The Chart Trader menu enables placing orders directly, without using the Basic Entry or any other menu in the Control Center.

NinjaTrader - Basic Entry on Chart

In case a trader wishes to maximize the screen space, Chart Trader (Hidden) menu can be enabled. This will make the Basic Entry window (attached to the chart) disappear. Whenever a trader wants to place an order, the right-click on the chart will open a pop-up menu for placing orders. In this manner, orders can be placed without going back to the Control Center.

NinjaTrader - Chart with Hidden Basic Entry Window


NinjaTrader offers a range of built-in indicators with customizable parameters. The software also allows traders to create and load their own indicators.

NinjaTrader - Indicators

The indicator loading window also provides details about the built-in indicators in a brief manner. For example, the trading platform explains an FOSC oscillator as follows:

NinjaTrader - FOSC Description

Likewise, the Strategies menu enables loading automated trading strategies quickly. Additionally, order quantity, trading account details, order handling (entry and exit), bars look-back, and bars required to trade can be modified quickly using the Strategies menu. To save time, the details can be saved as a template. Additionally, all basic properties of a chart (font, background, axis color, etc.) can be changed using the Properties menu.

NinjaTrader - Strategy Wizard

NinjaTrader supports an interesting feature - attaching indicators to orders (Indicator Tracking). Using the SuperDOM or Chart Trader facilities, a trader can attach an indicator to a particular order. Any changes in the value of the indicator will result in a change in the order price levels.

NinjaTrader FX Board

The NinjaTrader FX Board is designed to give an unobstructed view of Forex and CFD market data. The trading interface is designed specifically for Forex and CFD products.

NinjaTrader - FX Board

The FX Board provides the following capabilities:

  • Simultaneously view quotes (Bid & Ask) for multiple currency pairs.
  • The tiles can be used as a quick order entry screen. Such relevant details as order quantity, time validity (GTC, GTD, or Day) pertaining to order, stop-loss, take-profit, stop strategy (Auto-Trail, Auto Breakeven) can be customized and saved as a template for future use.

NinjaTrader - Custom Strategy Parameters

NinjaTrader - Custom Stop Strategy Parameters

The flip tile facility (see AUD/USD and EUR/CHF tiles on the screenshot below) can be used to place orders at a specific price level.

NinjaTrader - Flip Tiles in FX Board

The tiles also show the current position (see GBP/USD on the screenshot above), net profit/loss, open orders (if any), and advanced order management strategies.

Using the right-click menu, instruments can be added or removed. The FX Board screen can be printed and shared. The basic features - background, foreground, and others - can be customized to suit individual needs.

The lower part of the FX Board gives a concise view of the account activity.

Trading with NinjaTrader

Traders who wish to use the NinjaTrader platform can purchase a lifetime license, lease the platform, or trade via NinjaTrader Broker. As of June 2018, the price of the lifetime license was $999.

As mentioned earlier, there is no fee for using NinjaTrader’s standard features. This includes advanced charting, automated strategy development, market analytics, backtesting and optimization, and trade simulation.

NinjaTrader Ecosystem offers advanced indicators, automation strategies, drawing tools, pattern recognizers, and programming services. Users can purchase the tools of interest and customize their platform.

NinjaTrader forum members are form helpful community and usually are willing to help a fellow NinjaTrader novice. Additionally, numerous videos are provided on YouTube to minimize the learning curve. NinjaTrader also organizes free training webinars. The help guide, email and remote support, webinars, Facebook, Twitter, and YouTube channel can all be accessed from within the trading platform. A 24/5 technical support and a 24/7 emergency trade support is also provided.

Overall, a trader employing this platform will be able to thoroughly focus on the trading process. Operating in the foreign exchange market will become a reasonably simpler task if a trader puts the NinjaTrader platform to its best possible use.


NinjaTrader is a trading platform that can be customized to suit individual needs. The platform easily scores many points over its competitors when it comes to advanced trade management techniques, strategy and trade performance analysis, flexibility in strategy creation, charting facilities, and setting up alerts. The platform also enables trading multiple assets using different brokers at the same time. However, writing automated trading programs is a bit more difficult when compared to MetaTrader 4 and MetaTrader 5, which are currently the most popular platform among Forex traders. The availability of third-party resources (like indicators and robots) is also significantly lacking compared to MT4/MT5.

NinjaTrader can be considered as a platform that is better than entry-level platforms, but slightly below institutional level platforms. For example, platforms such as Quant Connect facilitate cloud processing. This is a must have feature if a trader wishes to complete a backtest on a 10-year period of 1-second bar data in less than three minutes. Nevertheless, the NinjaTrader platform would be a blessing to a trader who has programming and statistical knowledge. If you are a small retail trader managing a portfolio of less than 100k, then probably MetaTrader might be enough to fly high without any issues.

If you want to get news of the most recent updates to our guides or anything else related to Forex trading, you can subscribe to our monthly newsletter.