Have a look at the property in IndicatorBase called OldValuesChange. In the case of ZigZag, we return true. This tells RightEdge that values can change after the fact and we're prepared to deal with it.
We have separated indicators from "chart objects". Lines, fib lines, text, etc are chart objects. They can be manipulated by the trading systems only, not by plugins.
I want to create an object (not sure which type) that uses a ZigZag like indicator, draws Fibs, and draws Text. And so i have a few questions:
1. From what i can tell i should create an object derive from IndicatorBase and include my ZigZag indicator? Then draw the Fibs and Text. I didn't see any examples where indicators draw their own data points, so i wasn't sure whether i need to create a StrategyBase derived object instead. Any examples? I see someone already asked for the ZigZag code... Ultimately i would like to pull out a result and use in a strategy.
2. Given the fact that SeriesCalculatorBaseWithValues is just calculating values...and the chart system plots them, how is ZigZag updating old series values? I can only guess it's calling CreateLine and moving the new line once a new high/low is found?
3. I didn't see a way to customize the Fibs...i.e. only draw certain levels. I assume it's not supported, so i'll just draw my own lines.