NinjaTrader Automated Trading: A Popular and Optimal Choice

What Is a NinjaTrader Automated Trading System?

An automated trading system allows traders to establish predefined criteria for entering and exiting trades, which can be executed automatically through a computer once they are coded.

When using automated trading systems, it's customary to have software integrated with a direct access broker, and any particular rules must be composed in the platform's proprietary language.

Automated trading on the NinjaTrader Platform

NinjaTrader users can engage in automated trading using NinjaScript or by integrating external sources through the Automated Trading Interface (ATI).

Build NinjaScript-based strategies via Strategy Builder

There are multiple ways to create an automated strategy using NinjaScript, but the simplest and most effective approach is to utilize the Strategy Builder.

Furthermore, the majority of our NinjaTrader 8 indicators are prepped for NinjaScript, making them compatible with Strategy Builder.

To access the Strategy Builder, click the New menu in the NinjaTrader Control Center using the left mouse button, then choose Strategy Builder from the menu options.

Let's take a look at the Strategy Builder interface and explore its features.

  • Welcome

The Welcome section in the Strategy Builder provides a concise overview of essential functions and navigation options.

  • General

The General section has two primary functions: naming your strategy and providing a description for it.

  • Default Properties

In the Default Properties section, you have the ability to establish the default values for your custom strategy properties.

  • Additional Data

The Additional Data scection provides the option to choose additional instrument data or custom series for your strategy.

  • Inputs and Variables

If necessary, you can define user inputs for your strategy within the Inputs and Variables section. These inputs become important when you need input values that can potentially affect how your strategy performs.

  • Conditions and Actions

Within the Conditions and Actions section, you can define conditions and subsequent actions that guide how your strategy unfolds.

Conditions - Trigger the designated action when met.

Actions - Perform an action (place orders, draw elements on the chart, etc.) triggered by the parent condition being satisfied.

Using the Builder, you can create an extensive range of conditions along with associated actions, and organize conditions into groups (e.g., for specific filter rules like time).

Conditions and groups are established through the Condition Builder, while actions are defined in the Strategy Actions window.

  • Stops and Targets

Stops and Targets permits you to define automatic stop loss, trail stop, parabolic stop (R15 and higher), and profit target orders upon your strategy's position initiation.

  • Finish

Once you've arrived here, your strategy development is done. To finalize, click the Finish button to compile your strategy, preparing it for either backtesting or live execution.

Automated Trading Interface (ATI) on the NinjaTrader platform

To enable automated order execution from an external source, NinjaTrader relies on trading signals from its ATI.

You have three choices for sending external communication to NinjaTrader's ATI to facilitate trade automation.

  • TradeStation Email Interface: Enables non-programmers to use it for real-time strategy execution. NinjaTrader processes TradeStation orders from your broker after receiving signals via your PC's TradeStation email account.
  • File Interface: Utilize Order Instruction Files (OIF) to trigger instant processing and storage by NinjaTrader on the hard drive, followed by prompt deletion.
  • DLL Interface: Utilizes NtDirect.dll for crucial automated trading functions in NinjaTrader.

Although potential mechanical failures and monitoring pose challenges, NinjaTrader's automated trading provides substantial advantages. It effectively mitigates the influence of emotional trading, a widespread pitfall that can lead to poor decisions.

By adopting automated trading, you can maintain disciplined strategies consistently, mitigating impulsive actions. It's important to note that some trading experience and knowledge are advisable before embracing automated trading systems.