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
- Begin by opening a chart in NinjaTrader. Do Not add BlackBird to a chart with tabs. Currently, BlackBird is not enabled to work with tabs.
- To add BlackBird, right-click on the chart and select “Strategies…”, followed by opening the SharkIndicators folder and selecting BlackBird. On the right hand side you will see the Properties list for BlackBird. If Strategies… is grey & disabled see NinjaTrader’s documentation here to enable it.
- Scroll to the top of the Properties list and adjust any options as needed. See below for a description of each properties. Lastly, check the Enabled box before clicking the OK button.
- Once BlackBird is loaded on the chart, click the Order Setting button (bottom right) to start setting up BlackBird.
NOTE: An Order Set must be defined to use the Trade Controls on the chart and for BlackBird to do anything.
There are several NinjaTrader setting that affect order handling when a strategy (BlackBird) is enabled or disabled by any means. The NinjaTrader 8 settings are found in Control Center » Tools » Options » Strategies » 'Ninja Script' and 'On connection loss' sections, and in the Strategies window » Properties section. It is very critical that you fully understand these NinjaTrader settings.
When enabling BlackBird, and having Strategies window » Properties » Setup » Start behavior set to ‘Immediately submit...‘ and BlackBird » Backtest Mode is enabled, 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.
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
NinjaTrader has several adjustable properties that determine the behavior for all strategies. These properties are available in the Strategies window and Options window. SharkIndicators does not lock or hard-code any of these properties so the trader can adjust them to suite their own needs.
These properties are in the Strategies window.
NinjaTrader Tip: Calculate Property Inheritance
If you use an indicator which requires the Set up » Calculate property to be set to 'On each tick' to run correctly (such as a volume profile or order flow type of indicator), then NinjaTrader requires the hosting strategy's (i.e. BlackBird) Calculate property also be set to 'On each tick' in order for that guest indicator to run correctly.
In other words, NinjaTrader takes the Calculate setting of the hosting NinjaScript (strategy or indicator) and applies it to all the guest indicators used by the host. In this case BlackBird is the hosting NinjaScript, and the order flow indicator is the guest NinjaScript. This is called property inheritance. NinjaTradere does not allow "mixing & matching" the Calculate property.
Please note, if you are using BloodHound within BlackBird, and BloodHound is using an indicator that requires Calculate be set to 'On each tick', then BlackBird must be set to 'On each tick'.
These properties are in the Options window. Go to Control Center » Tools » Options window » Strategies category » Properties list.
The properties listed below can only be set in the code. They can not be changed via the Strategies or Options window. SharkIndicators does not set any of these properties. Thus, NinjaTrader applies the default setting to BlackBird and Raven.
These properties are in the Strategies window.
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 order at the price you desire, click again to complete the 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 Control Center » Tools » Historical Data) 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 dynamic nature and various changeable parameter items and settings inside of BlackBird (and BloodHound). Therefore, it has limited practical value. The issue is NinjaTrader requires a static list of parameters for their property grid. e.g. SharkIndicator software allows you to use indicators of your choosing. If your system uses the MACD, the Fast , Slow , and Smooth parameters need to be listed on the property grid. But, later if you decide to remove the MACD and use the Momentum instead then the Period parameter need to be added and the Fast , Slow , and Smooth parameters for the MACD need to be removed from the property grid. Unfortunately, NinjaTrader does not allow the property grid to be dynamically updated or changed like that.
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.