Drawing
You can use NinjaScript to draw custom shapes, lines, text and colors on price and indicator panels from both Indicators and Strategies.
Draw Methods and Associated Return Types
Drawing Methods and Properties
- Custom graphics for custom indicators can be painted on either the price panel or indicator panel. You could for example have a custom indicator displayed in an indicator panel yet have associated custom graphics painted on the price panel. The “DrawOnPricePanel” property is set to true by default, which means that custom graphics will always be painted on the price panel, even if the indicator is plotted in a separate panel. If you want your custom graphics to be plotted on the indicator panel, set this property to false in the OnStateChange() method of your custom indicator.
- Set unique tag values for each draw object, unless you intend for new draw objects to replace existing objects with the same tag. A common trick is to incorporate the bar number as part of the unique tag identifier. For example, if you wanted to draw a dot that indicated a buying condition above a bar, you could express it: Draw.Dot(this, CurrentBar.ToString() + “Buy”, false, 0, High[0] + TickSize, Brushes.ForestGreen);
- Draw methods will not work if they are called from the OnStateChange() method.

