It says an error which is:
syntax error
< case 1: // look for peak
>
.

I don't know why this happen while cace 0 is fine?.


Code:
function run(){
	
	
BarPeriod = 15;
LookBack = 500;
StartDate = 20120201;
NumDays = 1;

  set(TICKS);
int ExtDepth=12;
int ExtDeviation=5;
int ExtBackstep=3;
int whatlookfor;
var curlow;
var curhigh;
var lastlow;
var lasthigh;
int lasthighpos;
int lastlowpos;
var res;
vars ZigzagBuffer= series(0.0);  
vars LowMapBuffer=series(0.0);
vars HighMapBuffer=series(0.0);

var val=LL(ExtDepth);
if(val==lastlow) val=0.0;
else 
        { 
         lastlow=val; 
         if((priceLow()-val)>(ExtDeviation*PIP)) val=0.0;
         else
           {
           	int back;
            for(back=1; back<=ExtBackstep; back++)
              {
               res=LowMapBuffer[0+back];
               if((res!=0)&&(res>val)) LowMapBuffer[0+back]=0.0; 
              }
           }
        } 
               
 if (priceLow()==val) LowMapBuffer[0]=val; else LowMapBuffer[0]=0.0;
 
 val=HH(ExtDepth);
      if(val==lasthigh) val=0.0;
      else 
        {
         lasthigh=val;
         if((val-priceHigh())>(ExtDeviation*PIP)) val=0.0;
         else
           {
           	int back;
            for(back=1; back<=ExtBackstep; back++)
              {
               res=HighMapBuffer[0+back];
               if((res!=0)&&(res<val)) HighMapBuffer[0+back]=0.0; 
              } 
           }
        }
      if (priceHigh()==val) HighMapBuffer[0]=val; else HighMapBuffer[0]=0.0;
      
      
      
      if (whatlookfor==0)
     {
      lastlow=0;
      lasthigh=0;  
     }
   else
     {
      lastlow=curlow;
      lasthigh=curhigh;
     }
   
      res=0.0;
      switch(whatlookfor)
        {
         case 0:
            if (lastlow==0 && lasthigh==0)
              {
               if (HighMapBuffer[0]!=0)
                 {
                  lasthigh=priceHigh();
                  lasthighpos=0;
                  whatlookfor=-1;
                  ZigzagBuffer[0]=lasthigh;
                  res=1;
                 }
               if (LowMapBuffer[0]!=0)
                 {
                  lastlow=priceLow();
                  lastlowpos=0;
                  whatlookfor=1;
                  ZigzagBuffer[0]=lastlow;
                  res=1;
                 }
                 }
              
             break;  
         case 1:
            if (LowMapBuffer[0]!=0.0 && LowMapBuffer[0]<lastlow && HighMapBuffer[0]==0.0)
              {
               ZigzagBuffer[lastlowpos]=0.0;
               lastlowpos=0;
               lastlow=LowMapBuffer[0];
               ZigzagBuffer[0]=lastlow;
               res=1;
              }
            if (HighMapBuffer[0]!=0.0 && LowMapBuffer[0]==0.0)
              {
               lasthigh=HighMapBuffer[0];
               lasthighpos=0;
               ZigzagBuffer[0]=lasthigh;
               whatlookfor=-1;
               res=1;
              }   
            break;               
         case -1: // look for lawn
            if (HighMapBuffer[0]!=0.0 && HighMapBuffer[0]>lasthigh && LowMapBuffer[0]==0.0)
              {
               ZigzagBuffer[lasthighpos]=0.0;
               lasthighpos=0;
               lasthigh=HighMapBuffer[0];
               ZigzagBuffer[0]=lasthigh;
              }
            if (LowMapBuffer[0]!=0.0 && HighMapBuffer[0]==0.0)
              {
               lastlow=LowMapBuffer[0];
               lastlowpos=0;
               ZigzagBuffer[0]=lastlow;
               whatlookfor=1;
              }   
            break;               
         default: return; 
        }
        plot("Signal", HighMapBuffer[0], 0, RED);
         plot("Signal2", LowMapBuffer[0], 0, RED);
     
     }


Last edited by SFF; 02/23/13 00:55.