빌 윌리엄스와 그의 전략 ... - 페이지 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 ) ;
  }
표시기는 악어의 신경총 동안 형성된 프랙탈의 선을 보여줍니다.
 
dimontus wrote:
오아시스 Bill의 코드를 공유할 수 있습니까? :-)

예, 물론입니다. 하지만 아직 개발 중입니다(오류가 있는 작업 버전). Delphi 또는 C ++에 다른 부분이 있을 것으로 예상됩니다(친구가 작성을 도와주길 원했습니다). 아이디어는 논스톱 시계로 거래하는 것입니다. 다음은 작업 버전에 대한 간단한 설명입니다. 전략에는 다음이 포함되지 않습니다: "특별한 청색광" 신호, 균형 라인, 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 ; // - не работает
파일 ID_1.mq4의 전체 코드
파일:
id_1.mq4  15 kb
 
Integer писал (а):

오아시스, 마음이 바뀔지도 몰라

슈퍼 =)
 
Integer писал (а):
 
표시기는 악어의 신경총 동안 형성된 프랙탈의 선을 보여줍니다.

글쎄, 여전히 Bill Williams에 따르면
어쩌면 내가 뭔가를 읽지 않았을 수도 있습니다.
하지만 내 생각에 진짜 프랙탈은
방법 1: 악어 값보다 크거나 작은 프랙탈
방법 2: 다소 빨간선
 
모두 감사합니다 :-)
 
Oasis писал (а):

방법 2: 다소 빨간선

선이 하나만 있으면 모든 프랙탈이 그보다 크거나 작습니다.
 
Integer wrote:

선이 하나만 있으면 모든 프랙탈이 그보다 크거나 작습니다.

아니요 =) 위쪽 프랙탈(최고값)이 빨간색보다 큽니다. -- > 위쪽 중단이 있는 경우 신호가 유효합니다.
빨간색보다 작은 프랙탈 아래(낮음) -- > 고장이 있는 경우 신호가 유효합니다.

글쎄요, 이 방법은 매우 빠르네요. 솔직히 말해서 저는 아직 사용해본 적이 없습니다 =)

그건 그렇고, 이제 H1의 EURUSD 쌍을 보면 이 방법을 사용하면 마지막 다운 프랙탈이 유효합니다.

 
Integer :
이전 의견에 동의합니다.

나를 벽에 기대어 쏠 수는 있지만 내 생각에 Bill Williams는 몽상가일 뿐 그 이상은 아니다.
불쌍한 Billy는 열심히 노력하고, 꿈틀거리며, 책을 쓰고, 칠면조를 발명하고, 다른 나라에서 거래하는 초심자를 위한 여행을 주선합니다. 그리고 당신은 그것을 감사하지 않습니다. 음, 물론, 이 모든 것이 boobies를 위해 설계된 것이라면 약간 잘못될 것입니다. 그가 출판사를 위해 책을 작성해야 하고 또한 언덕 뒤에 있는 대중 엔터테이너 역할을 해야 하고 프로그램을 광고해야 하는 경우 무역에 종사해야 할 때를 스스로 생각하십니까? 그것은 모두 임프레자리오의 잘못입니다. 그리고 Billy 자신은 걸어다니는 상표입니다.
 
Oasis :
...
글쎄요, 이 방법은 매우 빠르네요. 솔직히 말해서 저는 아직 사용해본 적이 없습니다 =)

그건 그렇고, 이제 H1의 EURUSD 쌍을 보면 이 방법을 사용하면 마지막 다운 프랙탈이 유효합니다.

그러나 선이 얽혀 있지 않으므로 추세 변화가 없습니다 :-)
 
/*
   <> красной
*/
#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);
}