BlackBird is a NinjaTrader Strategy, which significantly extends the functionality of NinjaTrader’s Chart Trader, ATM, and much more. It serves both discretionary traders and automation traders.
For the discretionary trader, risk and money management rules can be defined to assist the trader from violating their daily trading limits and risks, and that’s just the beginning. The trade designer aspect gives the trader unprecedented control of every order type. The ability to automatically manage the entry, profit target and stop-loss. And of course, manual movement of the orders can be made at any time.
For the automated trader, BlackBird can automatically enter a trade using your favorite or signal, and then manage all order types, as mentioned before, for a fully automated trading system. BlackBird can even use BloodHound signals to manage your profit and stop-loss orders to build a truly advanced automated trading system.
BlackBird is a strategy, and NinjaTrader gives you the option to run strategies on a chart (which is what we show in our videos) or they can be run on the Strategies tab in the NinjaTrader Control Center. For more information on how to initiate a Strategy see NinjaTrader’s documentation here.
Both methods are identical in terms of setting up BlackBird. Below we will cover the more common way of running a Strategy by adding BlackBird to a chart.
Special Notes from NinjaTrader when running a strategy: Strategy Position vs. Account Position
Adding BlackBird to a Chart
- Begin by opening a chart in NinjaTrader.
- To add BlackBird, right-click on the chart and select “Strategies…”, followed by selecting SiBlackBird. On the right hand side you will see the parameters for BlackBird. If Strategies… is grey & disabled see NinjaTrader’s documentation here to enable it.
- Scroll to the top of the parameters list and adjust any options as needed. See below for a description of each parameter. Lastly, set Enabled to True before clicking the OK button.
- Once BlackBird is loaded on the chart, click the Order Setting button to start setting up BlackBird.
Using BloodHound?If you are using BloodHound signals in BlackBird it is not necessary to have BloodHound on your chart, because BlackBird can add BloodHound to the chart. It is suggested to leave BloodHound off the chart, if this is the case, to save CPU resources.
Quick Start Video
Setting Up Your First OCO Order Set
Lets do a quick walk-though to create a simple Market entry order with a 10 tick profit target and 10 tick fixed stop-loss.
Each week we host a free live workshop where you can ask questions and see things demonstrated in BlackBird. Find the schedule and list of recordings on the workshops page.
Here’s the first BlackBird workshop:
(watch in full screen at 1080p for best results)
Starting & Ending BlackBird
There are a couple of NinjaTrader setting that affect order handling when enabling or disabling BlackBird. The NinjaTrader settings mentioned are found in Control Center » Options » Strategies tab » NinjaScript tab.
When enabling BlackBird, having NinjaTrader’s ‘Immediately submit live working historical orders‘ selected and BlackBird » Backtest Mode = True, NinjaTrader will immediately submit an order in the direction of BlackBird’s last historical trade. Setting BlackBird » Backtest Mode = False will prevent immediate order submission.
In Control Center » Options » Strategies tab » Order handling, you may want to select ‘Cancel entry orders when a strategy is disabled, and uncheck ‘Cancel exit orders when a strategy is disabled’.
If you do not fully understand the setting in Control Center » Options » Strategies tab » NinjaScript tab, then we suggest selecting ‘Wait until flat before executing live’
Common NinjaTrader Parameters
BlackBird chart panels provide various UI controls and information feedback. The exhibits below explain the various panel interfaces. These panels are dockable (a.k.a. docking panels), meaning they can be moved and snapped to any location within the chart or even moved outside of the chart, for a customized look to suit your preferences.
BlackBird Layout Button
The BlackBird Layout button provides management tools for the chart panels. This is where panels are turned on or off, and a custom layout can be saved or loaded.
Trade Controls Panel
The Trade Controls panel is used to enable/disable automated trading, manually place trades, and close out trades. If this panel looks grayed-out that means no Order Set is defined in the Order Settings window.
The Info panel provides trade position status and market Bid/Ask data. You may notice a tick difference in the PnL display between the DOM and the Info panel. Differences can also be seen between the DOM and NinjaTrader’s Chart Trader. These differences are due to NinjaTrader’s framework.
The Settings panel displays the settings file name in the top area, and provides access to the Order Settings interface.
Dynamic Planning Panel
Order Monitor Panel
The Order Monitor panel displays the current order status, and order control buttons.
The Performance panel displays common trade statistics for the current day. More detailed statistics can be found in NinjaTrader’s Strategy Performance report.
Discretionary Trade Management
BlackBird provides complete discretionary control over the Profit Target and Stop Loss placement.
Modifying Order Price: To modify the price of an order, left click with your mouse on the order line or the right section of the label. A ghost order line will appear and display the number of ticks you are away from the market.
When above the ask the label will display a positive value. When below the bid the label will display a negative value. At the Ask or the Bid the label will display @Ask or @Bid. Once you have the ghost order at the price you desire, left click to complete the order move. This is a click once and click again method. Do NOT click and drag.
Cancelling an Order: To cancel an order, left mouse click on the red X on the order marker.
Using BlackBird in the Strategy Analyzer allows you to run historical analysis on a basket of instruments. Click here for NinjaTrader’s Strategy Analyzer Help guide. Due to some unusual behavior of the Strategy Analyzer these simple steps should be followed before running the Strategy Analyzer. Open the NinjaTrader Historical Data Manager (found in the Control Center under the Tools menu) and download all the historical data you want to backtest against, while the data feed is connected. Then disconnect the data feed before clicking Run Backtest.
The Optimization feature is not able to access the various parameters and settings inside of BlackBird, and therefore has limited practical value. We hope a solution can be found in the future. At this time, none of the Optimizer features are available in either version of NinjaTrader.
Tips & Misc. Backtest Help
It is a good idea from time to time to reset the NinjaTrader database to help with performance. If you start to notice NinjaTrader pausing when an order is submitted, or a delay in the time it takes for an order to execute, or it takes longer for BlackBird to start up, then that might be a sign that NinjaTrader’s database is getting to big, and resetting it typically helps. To reset the database open the Options window, select the Data tab, then click Reset DB button.
Know the Risks of Computerized Trading
We want you to be aware there a numerious components, both hardware and software, involved with computerized and automated trading. The process starts with your computer, running Windows, running NinjaTrader, and running BlackBird. When BlackBird receives a “signal” it is sent to NinjaTrader’s order framework. At which point NinjaTrader sends the order to your Broker, who must approve the order and then sends it to the Exchange. If your order is filled the exchange notifies your broker, who then notifies NinjaTrader, and NinjaTrader updates BlackBird. As this simplified example illustrates, there are several components & “players” involved and lots of software programs that make this all happen. If there is any miscommunication among these components or internet issues, BlackBird may get out of sync with your positions at the Exchange. If you suspect any issue with your live orders use the ‘Flatten Everything’ option in the NinjaTrader Control Center, and then call your broker immediately to verify.