Bill Williams and his strategies... - page 2

 
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Red
#property indicator_color2 Aqua
extern int Jaw_Period=13,Jaw_Shift=8,Teeth_Period=8,Teeth_Shift=5,Lips_Period=5,Lips_Shift=3;
double Buf1[];
double Buf2[];
int init(){
   SetIndexStyle(0,DRAW_ARROW);
   SetIndexArrow(0,159);
   SetIndexBuffer(0,Buf1);
   SetIndexStyle(1,DRAW_ARROW);
   SetIndexArrow(1,159);
   SetIndexBuffer(1,Buf2);
   return(0);
}
int deinit(){
   return(0);
}
int start(){
   int i,limit;
    int counted_bars=IndicatorCounted(); 
    limit=Bars-counted_bars;
      for(i=limit-1;i>=0;i--){
          if(Buf1[i+1]!=0)Buf1[i]=Buf1[i+1];
          if(Buf2[i+1]!=0)Buf2[i]=Buf2[i+1];
 
         double s=iAlligator(NULL,0,Jaw_Period,Jaw_Shift,Teeth_Period,Teeth_Shift,Lips_Period,Lips_Shift,2,4,MODE_GATORJAW,i);
         double m=iAlligator(NULL,0,Jaw_Period,Jaw_Shift,Teeth_Period,Teeth_Shift,Lips_Period,Lips_Shift,2,4,MODE_GATORTEETH,i);         
         double f=iAlligator(NULL,0,Jaw_Period,Jaw_Shift,Teeth_Period,Teeth_Shift,Lips_Period,Lips_Shift,2,4,MODE_GATORLIPS,i);
         
         if((f>m && m>s) || (f<m && m<s)){
         
         }
         else{
            double uf=iFractals(NULL,0,MODE_UPPER,i);
            double lf=iFractals(NULL,0,MODE_LOWER,i);
            if(uf!=0)Buf1[i]=High[i];
            if(lf!=0)Buf2[i]=Low[i];
         }
      }
   return(0);
  }
The indicator shows lines from fractals formed by alligator entanglement
 
dimontus wrote:
Oasis can you share the programming code on Bill? :-)

Yes, of course, but it's still under development (working version with errors). It's supposed to be one more part in Delphi or C++ (a friend of mine wanted to help me write it). The idea is to trade on non-stop watches. Here is a short description of the working version. The strategy does not include: "special blue light" signals, balance line trading, SAO.

extern double          Lots = 1;
extern double       MaxLots = 10;
extern double       UnitLot = 1000;
extern bool        Reinvest = false;
extern int         StopLoss = 0;
extern int       TakeProfit = 0;
extern int      TotalOrders = 1;
// --- --- --- 
extern bool         ACCross = false; // - не проверено           
extern bool             AC2 = false; // - не проверено
extern bool             AC3 = false; // - проверено
extern bool         AOCross = false; // - проверено
extern bool        AOSaucer = false; // - проверено
extern bool         AO2Peak = false; // - ошибка
extern bool  FractalsSignal = false; // - проверено 
extern bool       CloseZone = false; // - не проверено (небольшая ошибка)
extern bool    CloseFractal = false; // - проверено (!!! поддержка одного ордера )
extern bool  CloseAlligator = false; // - проверено
extern bool     TradingZone = false; // - не работает
Full code in file ID_1.mq4
Files:
id_1.mq4  15 kb
 
Integer писал (а):

Oasis, I may well change my mind

Great =)
 
Integer писал (а):
 
The indicator shows lines from fractals formed by alligator entanglement

Well, it's not Bill Williams.
Maybe it's something I haven't read.
But I think the real fractal is
Method 1: a fractal greater than or smaller than any of the alligator's values
Way 2: greater than or less than the red line
 
Thank you all :-)
 
Oasis писал (а):

Method 2: more or less than the red line

If there is one line, all fractals are either larger or smaller than it.
 
Integer wrote:

If there is one line, all fractals are either larger or smaller than it.

No =) Fractals up (highs) greater than red -- > then if there is an upside breakout, the signal is valid
fractals going down (lows) are less than red -- > if there will be a break-down, the signal is valid

Well this way is very fast, to be honest I haven't used it yet =)

By the way, now if you look at the EURUSD pair on H1, the last fractal down, if you use this method, will be valid.

 
Integer:
I'll echo the previous opinion.

You can put me up against the wall and shoot me, but my opinion is that Bill Williams is a dreamer and nothing more.
Poor Billy is trying, he's making up books, he's inventing turkeys, he's touring different countries for suckers who are new to trading. And you don't appreciate it. Well, of course, if it's all designed for fools, he'll lie a little. Think about it, when he can engage in trading, if he has to write a book for the publisher and to act as an entrepreneur abroad and advertise a program? It's all the impresario's fault. And Billy himself is a walking Trade Mark.
 
Oasis:
...
Well this way is very fast, to be honest I haven't used it yet =)

By the way, now if you look at the EURUSD pair on H1, the last fractal down, if you use this method will be valid.

But there is no interlacing of lines, so there will be no change of trend :-)
 
/*
   <> красной
*/
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Red
#property indicator_color2 Aqua
extern int Jaw_Period=13,Jaw_Shift=8,Teeth_Period=8,Teeth_Shift=5,Lips_Period=5,Lips_Shift=3;
double Buf1[];
double Buf2[];
int init(){
   SetIndexStyle(0,DRAW_ARROW);
   SetIndexArrow(0,158);
   SetIndexBuffer(0,Buf1);
   SetIndexStyle(1,DRAW_ARROW);
   SetIndexArrow(1,158);
   SetIndexBuffer(1,Buf2);
   return(0);
}
int start(){
   int i,limit;
    int counted_bars=IndicatorCounted(); 
    limit=Bars-counted_bars;
      for(i=limit-1;i>=0;i--){
      if(Buf1[i+1]!=0)Buf1[i]=Buf1[i+1];
      if(Buf2[i+1]!=0)Buf2[i]=Buf2[i+1];
         double s=iAlligator(NULL,0,Jaw_Period,Jaw_Shift,Teeth_Period,Teeth_Shift,Lips_Period,Lips_Shift,2,4,MODE_GATORJAW,i);
         double m=iAlligator(NULL,0,Jaw_Period,Jaw_Shift,Teeth_Period,Teeth_Shift,Lips_Period,Lips_Shift,2,4,MODE_GATORTEETH,i);         
         double f=iAlligator(NULL,0,Jaw_Period,Jaw_Shift,Teeth_Period,Teeth_Shift,Lips_Period,Lips_Shift,2,4,MODE_GATORLIPS,i);
            double uf=iFractals(NULL,0,MODE_UPPER,i);
            double lf=iFractals(NULL,0,MODE_LOWER,i);
            if(uf!=0 && uf>m)Buf1[i]=High[i];
            if(lf!=0 && lf<m)Buf2[i]=Low[i];
      }
   return(0);
}
Reason: