The following simple program illustrates an intriguing problem I 
encountered when trying to develop a complicated trading system.
//Test Program
        fast = MA(C,15);
        slow = MA(C,50);
        Buy = Cross(fast,slow);
        Sell = Cross(slow,fast);
        Buy = Flip(Buy,Sell);
        Sell = Flip(Sell,Buy);
        Plot(fast,"fast",colorRed);
        Plot(slow,"slow",colorGreen);
        PlotShapes(Buy*shapeUpArrow,colorGreen);
        PlotShapes(Sell*shapeDownArrow,colorRed);
//      Buy = PlotShapes(shapeUpArrow,colorGreen);
//      Sell = PlotShapes(shapeDownArrow,colorRed);

When used as shown, it works as intended. i.e. I get "Up" arrows for 
each bar while the fast MA remains above the slow MA, and "Down" 
arrows for the converse situation. However, if I use the alternative 
Plot statements that are shown "commented out", I get  Up and Down 
arrows on ALL bars. Can anyone explain this? I need to resolve this 
before moving on to bigger and better things as I wish to use "flip" 
with arrays other than Buy and Sell.
Incidentally, I have never found a reference to 
the "Buy*ShapeupArrow" format in the manual, though there are many 
examples in the AFL library.

Brian

Reply via email to