Andrew and All,
Zigzag (and its offspring Peak() and Trough() ) are not the only functions that cause 'dynamic results' or 'dynamacism' (new word!)
Hindsight indicators can be created using Ref() with a positive value to "see into the future" and LastValue() where even the very first bar on the chart "knows" what the value will be on the very last bar of the chart!
Any trading system using forward Ref(), LastValue(), Peak(), Trough(), Zig() etc must be used with EXTREME CAUTION, actually it is safer to say they should NEVER be traded.
Jose's excellent example code might be using any/all of these functions, but he does warn that his system is dynamic and should NOT be traded. Anyone who does trade Ramona has only themselves to blame when they lose their savings.
wabbit
"The question of whether a computer can think is no more interesting than the question of whether a submarine can swim."
Edsgar W. Dijkstra
MS: 6.52 EOD, 7.x EOD, 8.0 PRO, 9.2 PRO w/QC, 10 PRO w/QC C, 11 PRO w/QC & MDK
For custom MetaStock programming : http://www.wabbit.com.au
My SkyPE status : 
My SkyPE account : wabbit.com.au