skip navigation


One-click chart de-cluttering

The indicator is easy to use and works like most other NinjaTrader indicators. Once installed, simply select it from the 'Indicators' dialog box in the ABTrading folder, set the options as desired (defaults are pretty sane) and start using it. I tried to give all the options names that make sense and, if you hover over them with your mouse, I've included more detailed descriptions as appropriate. Overall, I don't think there is too much that's a mystery. More detailed usage information can be gleaned by viewing the screenshots which cover the major implemented features. That being said, this page will provide an overview just in case something doesn't make sense to you.

keep me updated!

Download Instructions

You can download the latest version of AB-CleanChart here . Make sure you save the file somewhere you can find it easily -- your Downloads folder or your Desktop are usually the easiest places. If you wish to verify your download, the SHA-256 checksum is displayed below the download button for each release on the Downloads page.

Installation, Upgrades & Removal


  1. Open NinjaTrader and go to the main control window (the one with the main program menu) and select Tools | Import | NinjaScript Add-On... [Installation screenshot 1]

  2. Navigate and find the ZIP file you downloaded. Select it and click "Open". NinjaTrader will install the file for you.

  3. Assuming there are no errors, you should see a dialog box saying "NinjaTrader successfully imported all scripts contained in the NinjaScriptArchive File." [Installation screenshot 2]

  4. That's it, you're done!


Upgrading involves removing the previous version and then installing the new version just as you did in the initial installation.

You MUST remove the previous version or NinjaTrader will fail to perform the upgrade. If you don't remove the previous version, you will see a dialog box saying "Import failed..." [Screenshot showing upgrade error]

  1. Follow the steps in the "Uninstallation" section below to remove the current (old) version.

  2. Now, follow the steps in the "Installation" section above to install the newest version. Just make sure you choose the newest ZIP (it will have the highest version number) and that will do the "upgrade" for you. Upgrading really is just installing the latest version. Your existing templates will be unaffected and will be automatically reapplied after the upgrade.


It is recommended you remove any custom indicators from within NinjaTrader instead of deleting the file manually (though I've never experienced any problems manually deleting files). We will go through the recommended procedure here.

  1. On the main NinjaTrader Control Center window (the one with the main program menu), select Tools | Remove NinjaScript Assembly [DLL uninstallation screenshot 1]

  2. A new window will appear asking you to select which assembly you want to remove. Select ABCleanChart_version (where '_version' is the currently installed version number) and click "Remove". [DLL uninstallation screenshot 2]

  3. NinjaTrader will display a confirmation dialog box asking if you're sure. You are. Say Yes.

  4. Assuming no errors, you will get a success message. Click OK to close the dialog box. [DLL uninstallation screenshot 3]

  5. Click CLOSE on the "Remove NinjaScript Assembly" dialog box to close it. [DLL uninstallation screenshot 4]

  6. AB-CleanChart is now uninstalled. If you removed the indicator as part of the upgrade process, please follow the "Installation" section above to complete the upgrade.

Using In NinjaTrader

You add the indicator to your chart like any other. In the chart window, right-click and select Indicators (or click the indicators button in the toolbar) to open your indicators panel. Now look for a folder called "ABTrading" on the left side of the window. Double-click to open the folder and then double-click on AB-CleanChart (version) to activate the indicator. You can then customize any options you want on the right side of the window and click "OK" to add the indicator. You may change any options or remove the indicator at any time by opening your indicators panel again.

Like most tools for NinjaTrader, it is easiest to just use it and see what happens. The major features of the indicator are fairly well documented through the screenshots on the homepage . There are, however, a few extra notes that may be worth reviewing here as they are unique to how this tool has been implemented.


The best way to see how this indicator tool works is to add some indicators, drawings and maybe some text and/or chart markers to a dummy chart. Then, start playing with the toggles. You will see how they interact and what the various options do. The most important aspects to understand are exclusions (see below) and the link between the Drawing Toggle and the Text and Marker Objects toggles (directly below). Other than these items, everything is pretty obvious within a few minutes of playing with the toggles.

drawing toggle: text and markers

By default, the Drawing Toggle will affect all drawing items as defined by NinjaTrader. This includes text objects and chart markers (that's why they are in the 'drawing' menu). However, it may not always be desirable for these to all be treated as one block when dealing with a toggle tool such as this one. As such, you can unlink one or both of these items from the Drawing Toggle in the indicator properties dialog box by checking the appropriate boxes:

  • Exclude text from drawing toggle: The Drawing Toggle will no longer affect text items. If you wish to toggle them, you should enable the 'Show Text button' option. [Toggles: Text]
  • Exclude markers from drawing toggle: The Drawing Toggle will no longer affect chart marker items (dot, square, up arrow, down arrow, etc.) If you wish to toggle these items, you should enable the 'Show Markers button' option. [Toggles: Markers]

It should be noted that simply displaying the Text and/or Markers toggle buttons does not sever the link with the Drawing Tools toggle. The buttons will allow independent toggling but their toggle state will be overridden by the Drawing Tools toggle unless the 'Exclude' parameters are enabled as shown above. This can be clearly seen by the shading state of the buttons on the screen. Again, I encourage you to play with these scenarios to see them in action and understand what is happening.

Finally, regardless of whether the Text and/or Markers toggles are linked to the Drawing Tools toggle, the ALL button will still toggle these elements. This makes sense though is perhaps counter-intuitive at first. If this were not the case, the ALL button could never fully toggle all elements and provide a naked chart.

toggle drawing objects from indicators

By default, the Drawings toggles (Drawings, Text and Chart Markers) only affect user-drawn objects. Objects rendered by indicators are handled, along with the indicator that drew them, by the Indicator toggle. However, some indicators may render 'global drawing objects' meaning that an indicator on one chart (source) may draw lines/channels/etc. on another chart (target). If you wanted to toggle drawings made by the source chart but drawn on the target chart, you would need to toggle the indicator itself (probably on the source chart). The way around this is to activate AB-CleanChart on your target chart and enable the Drawings include indicator objects property. This will allow AB-CleanChart to toggle drawing objects created by indicators, even 'global drawing objects'. Careful though, this will affect all drawing objects from all indicators on your chart!


Exclusions are where this tool really becomes useful. By being able to toggle everything except certain elements, you can quickly create new ways of looking at your charts. For example, say you have a chart with several indicators to determine trend. To time your entries you use simple counter-trend lines. The indicators take up a lot of chart real estate and contribute a lot of clutter. In this case, you may wish to exclude the trend lines so they'd be the only thing on your charts after toggling. Now, you can view the 'big picture' and, when you want to isolate your entry, toggle everything with the ALL button to isolate only your trend lines.

Let's run through this scenario one step at a time. To start, let's simulate a potential workspace by adding a Moving Average Ribbon, Parabolic SAR and some counter-trend lines (don't worry about drawing anything properly, we're just pretending here). Finally, add AB-CleanChart with default settings. [Exclusions: Initial state]

  1. Click to select any counter-trend line. Selected items are noticed by the indicator and queued for exclusion. [Exclusions: Selected item]
  2. Since this is a drawing object, we can use the Drawing Tool toggle to add the trend lines to the exclusion list. However, we want to toggle everything else anyway and only leave the trend lines visible. Thus, we can use a shortcut and click the ALL button to do two steps at once -- add to the exclusion list and then hide everything else. Let's do that, click the All button while holding down the SHIFT key (either left or right). [Exclusions: Toggle ALL]
  3. Notice that everything has been toggled (thanks to the ALL button) except our selected trend lines! [Exclusions: Toggle result]
  4. IMPORTANT: Prior to Version 3.0, to make our exclusion 'stick', we need to click on the chart to deselect the trend line element. If we don't do this and instead click another toggle button, then our trend lines will be removed from the exclusion list. The logic is simple: If a selected item is not on the exclusion list, add it. If it is on the exclusion list (like it is right now), then remove it. By deselecting the trend line, we ensure the indicator does remove it from the exclusions list. If deselect reminders have not been disabled, you will also see a message box popup reminding you to do this. [Exclusions: Deselect trend line] Version 3.0 onwards uses the 'shift-click' method so remembering to deselect is avoided entirely.
  5. Now, we can click the ALL button again to toggle everything back on. Then click it again and you'll see that only the trend lines remain, exactly as we wanted!
  6. To fully understand what is going on, you can open the Indicators dialog and look at the AB-CleanChart properties. Notice the Exclusions box is populated with our trend line element (I used the 'line' drawing tool, so it says 'line'). You can add/remove items by name to this list to manage your exclusions in addition to the point-and-click method we just used. [Exclusions: Indicator properties]
  7. To un-exclude our trend lines from being toggled, you can either remove them from the Exclusions list in the indicator properties or you can use the point-and-click method again. Let's quickly run through the latter option...
  8. Close the indicators window if you still have it open.
  9. Toggle the ALL button until everything is visible again (optional, but makes it easier to understand what's happening). Click any trend line to select it.
  10. Hold down the SHIFT key (either one) and click on the Drawing Tool toggle or the ALL toggle button. Notice the trend lines have been removed. They are obviously no longer on the exclusion list.
  11. If using a version prior to version 3.0: Click on the chart to deselect the trend line so our changes 'stick'. If deselect reminders have not been disabled, you will see a message box popup reminding you to do this.
  12. Play with the toggles and you'll see the trend lines now toggle along with everything else.
  13. As an exercise, try excluding the Parabolic SAR using the same methods we used in this example. If you can do that, you've mastered exclusions :-)

disable deselect reminders

This only applies to versions prior to 3.0. Version 3.0 onwards uses the 'shift-click' exclusion method and, thus, deselect reminders are no longer required.

After you have used this indicator for a while, you may find the reminders to deselect to apply exclusions annoying. If so, you can disable them by deselecting the Enable deselect reminder parameter in the Indicator Properties. [Exclusions: Disable reminders]

You can make this the default by updating the default template for the indicator:

  1. Open the Indicator Properties.
  2. Deselect the Enable deselect reminder parameter.
  3. Click the template button near the bottom-right of the properties window and click save.
  4. Click the Save as Default button.
  5. Click OK to close the Indicator Properties window. [Animation: Disable reminders by default]  


As noted in the 'Exclusions' section above, you may manage your exclusions directly in the indicator properties using the Exclusions list parameter. This parameter accepts a comma-separated list of elements by name which should be excluded from toggling. How do you get an element's name? There are three common methods:

  1. The most obvious way to get an elements name would be to use the point-click-click method explained in the 'Exclusions' section and then check the properties. You will see all excluded element names in the Exclusions list parameter.
  2. If you are looking for an indicator name, you can find it in the Indicators Dialog on the left side. Indicator names are exactly as they appear in the upper 'Available' list. Just remember that spaces are important but case is not. [Exclusions: Indicator names]
  3. For trickier items such as Drawing Tools or third-party custom items, you can use the included Inspector. In fact, this is probably the fastest and easiest method.

While AB-CleanChart is attached to a chart, you can left-click on any chart object while holding down the left-CTRL and left-shift keys. This will generate a popup dialog box telling you the name of the element you clicked on. You can then copy this name exactly into your Exclusions list parameter. Remember, spacing is important but case is not. [Exclusions: Inspector]


Click on any of the options below to expand it and read a more detailed explanation of what the particular parameter does. This section will be updated with each new release version.


Use icon captions

If selected, button captions will be the official NinjaTrader icons with no text. This allows for nice small buttons that, hopefully, convey their purpose clearly. Selecting this option will hide all other caption parameters.
Default: True.

Show All button

If selected, the ALL toggle button will be displayed.
Default: True.

All caption

The text displayed on the ALL button. This option is hidden and ignored if 'Use icon captions' is enabled or if 'Show All button' is disabled.
Default: "Toggle-ALL".

Show Indicators button

If selected, the Indicators toggle button will be displayed.
Default: True.

Indicators caption

The text displayed on the Indicators button. This option is hidden and ignored if 'Use icon captions' is enabled or if 'Show Indicators button' is disabled.
Default: "Toggle-Ind".

Show Drawings button

If selected, the Drawings toggle button will be displayed.
Default: True.

Drawings caption

The text displayed on the Drawings button. This option is hidden and ignored if 'Use icon captions' is enabled or if 'Show Drawings button' is disabled.
Default: "Toggle-Draw".

Show Text button

If selected, the Text toggle button will be displayed.
Default: False.

Text caption

The text displayed on the Text button. This option is hidden and ignored if 'Use icon captions' is enabled or if 'Show Text button' is disabled.
Default: "Toggle-Text".

Show Markers button

If selected, the Markers toggle button will be displayed.
Default: False.

Markers caption

The text displayed on the Markers button. This option is hidden and ignored if 'Use icon captions' is enabled or if 'Show Markers button' is disabled.
Default: "Toggle-Markers".


Enable deselect reminder (deprecated starting in v3.0)

If selected, a popup reminder message box will be displayed when using the point-click-click method to add/remove objects from the exclusion list. This message box will remind the user to deselect the object to make the exclusion 'stick'.
Default: Enabled.

Lock exclusions

If checked (enabled), point-and-click exclusions will NOT take effect. The only way to update exclusions will be using the Exclusions listbox in the properties grid.
Default: Unchecked (disabled)


Delimited list of Chart Object names that will be ignored by all toggles. Valid delimiters are ',' (comma) and ';' (semi-colon). Extra spaces and consecutive delimiters are ignored.
Default: empty string.

Exclude text from drawing toggle

If selected, the Drawing toggle will not affect Text drawing objects.
Default: False.

Exclude markers from drawing toggle

If selected, the Drawing toggle will not affect Chart Marker drawing objects.
Default: False.

Drawings include indicator objects

By default, the Drawing toggles (Drawings, Text, Chart Markers) will only affect drawing objects the user has drawn (i.e. using the Drawing Tools). It will not affect drawing objects rendered by indicators. If this is selected, indicator-drawn drawing objects will also be toggled. N.B. Indicator-rendered drawing objects are usually handled by toggling the indicator itself.
Default: False.



Location where buttons will be rendered within the chart window:

  • Top-Left
  • Top-Right
  • Bottom-Left
  • Bottom-Right

Default: Top-Right.

Horizontal margin

Number of pixels away from the nearest of the left or right edge of the chart window to start drawing the button group.
Default: 50.

Vertical margin

Number of pixels away from the nearest of the top or bottom edge of the chart window to start drawing the button group.
Default: 25.

Button colour

Colour to use for button backgrounds. The foreground colour will be auto-calculated to provide sufficient contrast so that icons/text are visible given this background colour.
Default: DimGray.

Icon size

Font size in pixels (px) to use when rendering button icons. This parameter will be hidden and ignored if 'Use icon captions' is disabled.
Default: 16.

Button font

Font properties to apply to button caption text. You may choose the font family, style (bold, italic) and size. This parameter will be hidden and ignored if 'Use icon captions' is enabled.
Default: Consolas, 14px.

contact me

Want to stay updated on new releases? Have questions or found a bug? Want to submit a feature request? Feel free to email me by clicking the button below. I'll be happy to answer any questions you have, help you get the indicator set-up, or let you know about incorporating your suggestion(s) into future versions. If you know how to program for NinjaTrader or in C#/.NET in general and want to contribute, email me using the button below or file an issue or pull request in the git repo (preferred).

email me