Comprehensive order flow indicators like MZpack with a lot of features require significant CPU resources. The performance issue is aggravated by the fact that NinjaTrader 8 can utilize only one CPU thread per instrument. No matter how many CPU cores your system has – only one core will be used for processing market data for this particular instrument (even it is opened on ten charts). The purpose of this was synchronizing data and orders handling on all your charts, but in reality, this may lead to significant delays. And you guessed it, this greatly reduces the performance of the platform.

In this article, we will show how to create beautiful MZpack charts like this one on the screenshot in the header with around 1% CPU load and a very short overall loading time.

The idea is to use Minute profile accuracy for huge periodical profiles. Minute accuracy doesn’t require tick replay mode, requires much fewer CPU resources, and has significantly less loading time. As what about TPO profiles, those can be used with Minute accuracy mode even for very short periods like session.

The Required Steps

  1. Open a new clean chart. We use 5 Min ES chart in this example.
    Add two Data Series: 1st Data Series with Tick replay enabled and Days to load = 5 and 2nd Data Series with Tick replay disabled and Days to load = 30.
    We recommend using equal time periods for both data series.
    Now you have two panels with added data series.
  2. Add mzVolumeProfile indicator to your chart. By default, it will be attached to the 1st data series. We used Weekly periodical profiles and Monthly profile as a stacked VP.
  3. Choose 2nd Data Series as Input series for your mzVolumeProfile indicator.
    Choose Minute for Profile accuracy. Then click Apply. The profile now is attached to 2nd data series.

  4. Add mzFootprint indicator. It will be attached to the 1st Data Series by default.
  5. Send 2nd Data Series to the panel containing 1st one. Now you have both Data Series on the same panel.

The result

The resulting image will look like this. Our Footprint indicator covers the latest 5 days of the chart. Whereas mzVolumeProfile indicator is applied to all 30 days.

The micro-dynamic of order flow can be observed by zooming in the chart.

Adding More Indicators

Add 2nd mzVolumeProfile indicator doing the same steps if you need more plots. Eg. we added another mzVolumeProfile to plot monthly WVAP with standard deviations.
Also, you can add more order flow indicators, like mzBigTrade or mzVolumeDelta to your 1st Data Series with Tick replay enabled.


The common method of adding mzVolumeProfile indicator with Minute accuracy:

  1. Add mzVolumeProfile with Tick accuracy on your Data Series with Tick replay enabled
  2. Move added mzVolumeProfile indicator to Data Series with disabled Tick replay
  3. Change Profile accuracy to Minute
The Workspace

Download NinjaTrader 8 zipped workspace: MZpack Mixed VP-Footprint