Drawing objects will appear on the bar it is within the time of when the drawing method is called. Which also means that historical may be different than real-time depending on if TickReplay is enabled.
What is the Time[0] when the draw method is called?
What is the close time of the bar the drawing object appears on?
A drawing object, drawn intra-bar (such as with Calculate.OnEachTick with TickReplay enabled) in OnBarUpdate when IsFirstTickOfBar is true, would appear on the last bar and not the previous bar.
As far the prices, are you printing the price submitted to the draw method (the price of the execution from what I understand) to the output window and this is not matching the price of the drawing object on the chart?

Comment