Bill Williams und seine Strategien... - Seite 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);
  }
Der Indikator zeigt Linien von Fraktalen, die durch die Verschränkung von Alligatoren entstehen
 
dimontus wrote:
Oasis, können Sie den Programmiercode für Bill mitteilen? :-)

Ja, natürlich, aber es ist noch in der Entwicklung (Arbeitsversion mit Fehlern). Es soll ein weiterer Teil in Delphi oder C++ sein (ein Freund von mir wollte mir helfen, ihn zu schreiben). Die Idee ist, mit Non-Stop-Uhren zu handeln. Hier ist eine kurze Beschreibung der Arbeitsversion. Die Strategie beinhaltet nicht: "spezielle Blaulicht"-Signale, 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; // - не работает
Vollständiger Code in der Datei ID_1.mq4
Dateien:
id_1.mq4  15 kb
 
Integer писал (а):

Oasis, ich könnte meine Meinung ändern

Großartig =)
 
Integer писал (а):
 
Der Indikator zeigt Linien von Fraktalen, die durch die Verschränkung von Alligatoren entstehen

Nun, es ist nicht Bill Williams.
Vielleicht ist es etwas, das ich nicht gelesen habe.
Aber ich denke, das wahre Fraktal ist
Methode 1: ein Fraktal, das größer oder kleiner als einer der Werte des Alligators ist
Weg 2: größer als oder kleiner als die rote Linie
 
Ich danke Ihnen allen :-)
 
Oasis писал (а):

Methode 2: mehr oder weniger als die rote Linie

Wenn es eine Linie gibt, sind alle Fraktale entweder größer oder kleiner als sie.
 
Integer wrote:

Wenn es eine Linie gibt, sind alle Fraktale entweder größer oder kleiner als sie.

Nein =) Fraktale nach oben (Hochs) größer als rot -- > dann ist das Signal gültig, wenn es einen Ausbruch nach oben gibt.
Fraktale, die nach unten gehen (Tiefs), sind weniger als rot -- > wenn es zu einem Zusammenbruch kommt, ist das Signal gültig

Nun, dieser Weg ist sehr schnell, um ehrlich zu sein, habe ich es noch nicht benutzt =)

Übrigens, wenn Sie jetzt das EURUSD-Paar auf H1 betrachten, wird das letzte Fraktal nach unten, wenn Sie diese Methode verwenden, gültig sein.

 
Integer:
Ich schließe mich der vorherigen Meinung an.

Sie können mich an die Wand stellen und erschießen, aber ich bin der Meinung, dass Bill Williams ein Träumer ist und nichts weiter.
Der arme Billy versucht es, er erfindet Bücher, er erfindet Truthähne, er tourt durch verschiedene Länder, um Trottel zu finden, die neu im Handel sind. Und Sie wissen es nicht zu schätzen. Natürlich wird er ein wenig lügen, wenn das alles für Dummköpfe gedacht ist. Denken Sie darüber nach, wann er sich im Handel engagieren kann, wenn er ein Buch für den Verlag schreiben und als Unternehmer im Ausland auftreten und für ein Programm werben muss? Der Impresario ist schuld, und Billy selbst ist eine wandelnde Handelsmarke.
 
Oasis:
...
Nun, dieser Weg ist sehr schnell, um ehrlich zu sein, habe ich es noch nicht benutzt =)

Übrigens, wenn Sie sich jetzt das EURUSD-Paar auf H1 ansehen, wird das letzte Fraktal nach unten, wenn Sie diese Methode verwenden, gültig sein.

Aber es gibt keine Verschränkung der Linien, so dass es keine Trendänderung gibt :-)
 
/*
   <> красной
*/
#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);
}