> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.ninjatrader.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.ninjatrader.com/_mcp/server.

# Common

The following section documents methods and properties available to every **NinjaScript** type that access various forms of data including bar data, price data, and statistical forms of data. The Common section is broken into several categories pertaining to distinct **NinjaScript** objects or concepts. An index of topics under the Common section can be found below:

| Category                                                                                            | Description                                                                                                                                                                                                              |
| --------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [Attributes](/developer/desktop-sdk/references/common/attributes)                                   | Documents both .NET native and NinjaScript custom [attributes](https://msdn.microsoft.com/en-us/library/5x6cd29c\(v=vs.110\).aspx) which are commonly used to define the behavior of a NinjaScript property or object    |
| [Alert, Debug, Share](/developer/desktop-sdk/references/add-on/alert-and-debug-concepts)            | Documents methods for triggering alerts, printing debug messages, and using Share Services                                                                                                                               |
| [Analytical](/developer/desktop-sdk/references/common/analytical)                                   | Documents methods and properties useful for analyzing and identifying specific conditions within **Series`\<t\>`** collections                                                                                           |
| [Bars](/developer/desktop-sdk/references/common/bars)                                               | Represents the data returned from the historical data repository                                                                                                                                                         |
| [Charts](/developer/unsorted/charts)                                                                | Covers information related to accessing chart related data                                                                                                                                                               |
| [Drawing](/developer/desktop-sdk/references/common/drawing)                                         | Documents the drawing of custom shapes, lines, text and colors on your price and indicator panels from both [Indicators](/developer/web-sdk/references/modules/indicator) and [Strategies](/developer/unsorted/strategy) |
| [Instrument](/developer/desktop-sdk/references/common/instrument)                                   | Represents an instance of a [Master Instrument](/developer/desktop-sdk/references/common/instrument/masterinstrument)                                                                                                    |
| [ISeries`\<t\>`](/developer/desktop-sdk/references/common/iseriest)                                 | Documents the interface that is implemented by all NinjaScript classes that manage historical data as an **ISeries`\<double\>`** used for indicator input, and other object data                                         |
| [OnBarUpdate()](/developer/desktop-sdk/references/common/onbarupdate)                               | An event driven method which is called whenever a bar is updated                                                                                                                                                         |
| [OnFundamentalData()](/developer/unsorted/onfundamentaldata-2)                                      | An event driven method which is called for every change in fundamental data                                                                                                                                              |
| [OnMarketDepth()](/developer/desktop-sdk/references/common/onmarketdepth)                           | An event driven method which is called and guaranteed to be in the correct sequence for every change in level two market data                                                                                            |
| [OnStateChange()](/developer/desktop-sdk/references/common/onstatechange)                           | An event driven method which is called whenever the script enters a new **State**                                                                                                                                        |
| [SessionIterator](/developer/desktop-sdk/references/common/sessioniterator)                         | An interface which allows you to traverse through various trading hours data elements which apply to a segment of bars                                                                                                   |
| [System Indicator Methods](/developer/desktop-sdk/references/common/charts/chartcontrol/indicators) | Documents syntax and return values for system indicator methods                                                                                                                                                          |
| [TradingHours](/developer/desktop-sdk/references/common/tradinghours)                               | Represents the Trading Hours information returned from the current bars series                                                                                                                                           |
| [Name](/developer/desktop-sdk/references/common/name)                                               | Determines the listed name of the NinjaScript object                                                                                                                                                                     |
| [IsVisible](/developer/desktop-sdk/references/common/isvisible)                                     | Determines if the current NinjaScript object should be visible on the chart                                                                                                                                              |
| [DisplayName](/developer/desktop-sdk/references/common/indicator-displayname)                       | Determines the text display on the chart panel                                                                                                                                                                           |
| [Description](/developer/desktop-sdk/references/common/description)                                 | Text which is used on the UI's information box to be display to a user when configuration a NinjaScript object                                                                                                           |
| [Clone()](/developer/desktop-sdk/references/common/clone)                                           | Used to override the default NinjaScript **Clone()** method which is called any time an instance of a NinjaScript object is created                                                                                      |
| [TriggerCustomEvent()](/developer/desktop-sdk/references/common/triggercustomevent)                 | Provides a way to use your own custom events (such as a Timer object) so that internal NinjaScript indexes and pointers are correctly set prior to processing user code triggered by your custom event                   |