Using the Window Manager

In this article, I will show you how to use the Window Manager in the TTP ToolBarPro to manage your NinjaTrader charts and workspaces.

Example for a 3 Monitor Layout

With just one workspace open, in this case, the TTP Master ES, the first layout I save in the Window Manager button #1 is pictured below with two windows per monitor/screen.

To quickly arrange your charts as pictured in the image above, use the ‘Windows’ key on your keyboard together with the arrow keys.

  1. Select a chart (or group of tabbed charts)
  2. Hold down the ‘Windows’ key on your keyboard (to the left of the spacebar and right of ALT)
  3. Simultaneously tap the right arrow on your keyboard to snap the window to the right side of the monitor
    • While continuing to hold down the ‘Windows’ key, tap the up-arrow, down-arrow, left-arrow, and right-arrow and see how the window snaps to the bottom-right corner, upper-right corner, etc.
    • Windows key + Up-arrow will maximize a window; Windows key + down-arrow will minimize a window.
    • If a window is snapped to the right side of the screen, Windows key + up-arrow will snap the windows to the upper-right hand corner of the screen, etc.

We used to recommend using an app from the Microsoft Store called ‘Snap-it’ to manage the snapping of your charts around your screens, but since the Window Manager has been reworked, using another app like Snap-it is no longer necessary, as the Window Manager properly handles fully maximized charts and tabbed charts just fine, now.

Once you have all your charts (and any other NinjaTrader 8 windows you’d like to control) laid out as you desire, simply right-click on one of the Window Manager buttons and click the ‘Click to save’ checkbox to save the layout in that button.

  1. Click the Window Manager Group button to open the Window Manager panel.
Graphical user interface

Description automatically generated
  1. The first, top-left button is set to ‘Show desktop’ and will minimize all handled NinjaTrader 8 windows. Buttons 1 thru 9 can be used to store nine different chart layouts.
  2. Right-click on button number 1 to open the Window Manager settings UI for that button.
A screen shot of a cell phone

Description automatically generated with low confidence
  1. If you’d like the Window Manager to handle other NinjaTrader 8 windows, click in the radio-button to the right of the associated property (the checkbox) to force the Window Manager to handle those windows. The options are the following:
    • Handle alerts window
    • Handle charts
    • Handle control center
    • Handle market analyzer
    • Handle ninjascript editor
    • Handle ninjascript output
    • Handle superdom
    • Handle time and sales
    • Handle TTP reader manager
    • Handle TTP toolbar
    • Handle other types
  2. Once all the NinjaTrader 8 windows are arranged for the layout, click the radio button to the right of the ‘Click to Save’ property at the top of the settings UI. The checkbox acts as a function, so it will not remain checked; it simply forces the saving of the layout into that button.
Graphical user interface

Description automatically generated

Utils heading – The two utility properties under the ‘Utils’ heading, below the ‘Click to Save’ property, allow you to show all the windows from all the open workspaces and then separate the windows back into their respective workspaces again.

  • Click to show all windows – when clicked, all the charts and NinjaTrader 8 windows from every open workspace will become visible. This setting allows you to store layouts for multiple workspaces in the same Window Manager button. Showing all the windows from all open workspaces does not affect the workspaces’ XML files, though, so rest assured that this utility will not corrupt or damage your workspace files in any way. And don’t worry; you can shutdown NinjaTrader 8 with all windows showing from all open workspaces without affecting your workspace.
  • Click to restore current workspace – when clicked while all windows from multiple open workspaces are visible, each window will ‘return’ (be hidden back) to its respective workspace, and only the currently selected workspace’s windows will remain visible.

Restore heading – These three properties set policies for showing, hiding, and minimizing handled and unhandled NinjaTrader 8 windows, as well as restoring or leaving unchanged the chart zoom levels.

  • Hide minimized+handled windows – When checked, this option will completely hide all minimized and handled windows as if they were no longer a part of the workspace – visually, only – removing them from view when hovering your cursor over the NinjaTrader 8 icon in the task tray.
  • Policy for windows not handled by this button – The three options are: DoNothing, Minimize, and Hide. DoNothing will not move unhandled NinjaTrader 8 windows (handled windows are those checked under the ‘Handle’ properties heading). Minimize will minimize all unhandled NinjaTrader 8 windows. Hide will completely hide all unhandled windows as if they were no longer a part of the workspace, removing them from view when hovering your cursor over the NinjaTrader 8 icon in the task tray.
  • Restore chart zoom levels – When checked, the chart zoom levels (distance from one bar to the next) of the charts at the time the layout was saved will be restored with the layout upon button or hotkey press.

Clear heading – One property to remove stored data for the associated Window Manager button.

Click to clear window data – When clicked, the stored layout data for the NinjaTrader 8 window locations and sized will be erased from the associated Window Manager button. This is mostly for internal use so that the ToolBarPro backup files I include in the installer will not contain my saved layouts potentially causing issues for the end user.

Now, let’s move through the string of layouts I use for each of the Window Manager buttons when managing two workspaces.

In this example, I have both the ES and CL workspaces open. The first step is to ensure that both sets of windows from each workspace are visible. To do this, right-click on one of the Window Manager buttons and click the ‘Click to show all windows’ checkbox. You’ll see that all the charts from both workspaces become visible. You can then arrange the charts as you desire for the first layout. In my first layout, I make sure that all charts from both workspaces are visible at the same time. I arrange ES across the top of my screens with CL across the bottom.

Things to note when saving layouts:

  1. NinjaTrader must redraw every single visible chart (the entire chart) on every visible change of the chart (price and indicator changes).
  2. The more charts visible, the more resources required to redraw those charts.
  3. The more price changes per instrument, the more resources required to redraw that instrument’s charts and save its price data.
  4. Non-time-based charts (Tick and ROE Bars charts), require more resources to load and save the tick data, as tick data is heavier than minute data.
  5. The more volume traded for an instrument, the more resource intensive its tick data.
  6. The more bars, indicators, and drawing objects visible on a chart, the more resources are required to redraw that chart. Candlestick charts are especially heavy, as they are made up of multiple objects per bar.
  7. When market data is entering the charts very quickly, as during the open and close of the RTH session, and as during news announcements/reports, the prices of each chart will rapidly change. Each price change sends a render call to redraw the chart. The way NinjaTrader 8 is built, every single render call must be processed in order (for some reason), and none can be dropped. So, when those render calls start to pile up, they form a queue, and when that queue grows larger and larger as the calls stack up, the data displayed on the chart can start to lag.

Therefore, to save on your computer’s resources and ensure that NinjaTrader 8 is running optimally and the data coming into the charts is not lagging:

  1. You will want to save a layout with very few charts visible to display during periods of very high volume and market volatility.
  2. Save most layouts with no more than two visible charts per screen.
  3. Save most layouts with the bars zoomed in (fewer bars visible)… Remember, the more bars visible (bars are objects), the more resources required to redraw the charts on every price change.
  4. Minimize all other charts that are not going to be visible for the layout.

IMPORTANT NOTE: When you save a layout with windows/charts from workspace X and workspace Y but then open workspace Z, the charts from workspace Z will not be moved or handled by the Window Manager buttons, as they were not open at the time the layout was saved; only the windows from workspace X and Y were open at the time of saving the layout. Decide which buttons will handle which workspaces and make a note.

The series of images below will give you some ideas about how to arrange your charts and store the various layouts in Window Manager buttons on the ToolBarPro.

Window Manager button #1

Window Manager button #2

Window Manager button #3

Window Manager button #4

Window Manager button #5

Like this article?