[ARŞİV] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 5. - sayfa 121

 

http://clip2net.com/s/2LkQp

Yapabileceğinden daha fazla yardım et ... Selamlar! Ayarlar penceresinde Fraktallar için ayarları çıkarmak gerekiyor ve bunlar fonksiyonda....

 
Allis :

http://clip2net.com/s/2LkQp


Yapabileceğinden daha fazla yardım et ... Selamlar! Ayarlar penceresinde Fraktallar için ayarları çıkarmak gerekiyor ve bunlar fonksiyonda....


Ekle ;


extern int Bars.left =5;

ve bir sonraki de

ve aşağıdaki satırları tekrar etmemeleri için yorum yapın

// int Çubuklar.left =5;

// int Çubuklar.sağ =5;

 
BeerGod :

Ekle ;


extern int Bars.left =5;

ve bir sonraki de

ve aşağıdaki satırları tekrar etmemeleri için yorum yapın

// int Çubuklar.left =5;

// int Çubuklar.sağ =5;


Ne yaptım, yazdığını yapmadım mı? Externs'e çekti ve altta yorum yaptı ....

http://clip2net.com/s/2LlEi iyi, aslında bununla başladım

 //+------------------------------------------------------------------+
//|                                                                  |
//|                 Copyright © 1999-2008, MetaQuotes Software Corp. |
//|                                         http://www.metaquotes.ru |
//+------------------------------------------------------------------+
#property copyright "© 2007 Takbir"
#property link       "www.stigal.com"
//----
#define major   1
#define minor   1
//----
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 DarkGreen
#property indicator_color2 Maroon
#property indicator_width1   1
#property indicator_width2   1
extern int Bars .left = 5      // надо что бы было здесь и соответственно в окошке настроек
extern int Bars .right = 5      // надо что бы было здесь и соответственно в окошке настроек
//----
double UpperFr[];
double LowerFr[];
//----
int Bars .left= 5 ;       //а оно здесь, да ещё участвует в формуле
int Bars .right= 5 ;       //а оно здесь, да ещё участвует в формуле

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void init()
  {
   SetIndexBuffer ( 0 , UpperFr);
   SetIndexBuffer ( 1 , LowerFr);
   //
   SetIndexEmptyValue( 0 , 0 );
   SetIndexEmptyValue( 1 , 0 );
   //
   SetIndexStyle( 0 , DRAW_ARROW );
   SetIndexArrow( 0 , 159 );
   //
   SetIndexStyle( 1 , DRAW_ARROW );
   SetIndexArrow( 1 , 159 );
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void start()
  {
   int counted=IndicatorCounted();
   if (counted < 0 ) return (- 1 );
   if (counted > 0 ) counted--;
   int limit= Bars -counted;
//-----
   double dy= 0 ;
     for ( int i= 1 ; i<= 20 ; i++) 
     {
      dy+= 0.3 *(High[i]-Low[i])/ 20 ;
     }
   for (i= 1 + Bars .right; i<=limit+ Bars .left; i++)
     {
      UpperFr[i]= 0 ;
      LowerFr[i]= 0 ;
//----
       if (IsUpperFr(i)) UpperFr[i]=High[i] + dy;
       if (IsLowerFr(i)) LowerFr[i]=Low[i] - dy;
     }
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
bool IsUpperFr( int bar)
  {
   for ( int i= 1 ; i<= Bars .left; i++)
     {
       if (bar+i>= Bars ) return ( false );

       if (High[bar] < High[bar+i]) return ( false );
     }
   for (i= 1 ; i<= Bars .right; i++)
     {
       if (bar-i < 0 ) return ( false );
       if (High[bar] < High[bar-i]) return ( false );
     }
//----
   return ( true );
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
bool IsLowerFr( int bar)
  {
   for ( int i= 1 ; i<= Bars .left; i++)
     {
       if (bar+i>= Bars ) return ( false );
       if (Low[bar] > Low[bar+i]) return ( false );
     }
   for (i= 1 ; i<= Bars .right; i++)
     {
       if (bar-i < 0 ) return ( false );
       if (Low[bar] > Low[bar-i]) return ( false );
     }
//----
   return ( true );
  }
//+------------------------------------------------------------------+
 

böyle dene

 //+------------------------------------------------------------------+
//|                                                                  |
//|                 Copyright © 1999-2008, MetaQuotes Software Corp. |
//|                                         http://www.metaquotes.ru |
//+------------------------------------------------------------------+
#property copyright "© 2007 Takbir"
#property link       "www.stigal.com"
//----
#define major   1
#define minor   1
//----
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 DarkGreen
#property indicator_color2 Maroon
#property indicator_width1   1
#property indicator_width2   1
extern int Bars .left = 5 ;     // надо что бы было здесь и соответственно в окошке настроек
extern int Bars .right = 5 ;     // надо что бы было здесь и соответственно в окошке настроек
//----
double UpperFr[];
double LowerFr[];
//----
//int Bars.left=5;       //а оно здесь, да ещё участвует в формуле
//int Bars.right=5;      //а оно здесь, да ещё участвует в формуле

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void init()
  {
   SetIndexBuffer ( 0 , UpperFr);
   SetIndexBuffer ( 1 , LowerFr);
   //
   SetIndexEmptyValue( 0 , 0 );
   SetIndexEmptyValue( 1 , 0 );
   //
   SetIndexStyle( 0 , DRAW_ARROW );
   SetIndexArrow( 0 , 159 );
   //
   SetIndexStyle( 1 , DRAW_ARROW );
   SetIndexArrow( 1 , 159 );
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void start()
  {
   int counted=IndicatorCounted();
   if (counted < 0 ) return (- 1 );
   if (counted > 0 ) counted--;
   int limit= Bars -counted;
//-----
   double dy= 0 ;
     for ( int i= 1 ; i<= 20 ; i++) 
     {
      dy+= 0.3 *(High[i]-Low[i])/ 20 ;
     }
   for (i= 1 + Bars .right; i<=limit+ Bars .left; i++)
     {
      UpperFr[i]= 0 ;
      LowerFr[i]= 0 ;
//----
       if (IsUpperFr(i)) UpperFr[i]=High[i] + dy;
       if (IsLowerFr(i)) LowerFr[i]=Low[i] - dy;
     }
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
bool IsUpperFr( int bar)
  {
   for ( int i= 1 ; i<= Bars .left; i++)
     {
       if (bar+i>= Bars ) return ( false );

       if (High[bar] < High[bar+i]) return ( false );
     }
   for (i= 1 ; i<= Bars .right; i++)
     {
       if (bar-i < 0 ) return ( false );
       if (High[bar] < High[bar-i]) return ( false );
     }
//----
   return ( true );
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
bool IsLowerFr( int bar)
  {
   for ( int i= 1 ; i<= Bars .left; i++)
     {
       if (bar+i>= Bars ) return ( false );
       if (Low[bar] > Low[bar+i]) return ( false );
     }
   for (i= 1 ; i<= Bars .right; i++)
     {
       if (bar-i < 0 ) return ( false );
       if (Low[bar] > Low[bar-i]) return ( false );
     }
//----
   return ( true );
  }
//+------------------------------------------------------------------+


 
BeerGod :

Bunu deneyin hatasız derleniyor performansı kontrol etmedim)


Tin .... Bu baştan başladım .... Tam olarak bundan ... Bağlantıyı gönderdim .... Ve nedense işe yaramadı ... Teşekkürler!
 
hoz :

Artyom, senin gibi biraz meyve suyu içsen iyi olur. Bira tavsiye etmiyorum ... tamamen kalbimin derinliklerinden tavsiye etmiyorum .. :)

Eh ... Sekiz yıldır alkol almak istemiyorum - ilginç değil ... :)

Sağlığınıza dikkat ettiğiniz için teşekkür ederiz ;)

 
hoz :

Numara. Sadece ekstra koşulların ve kontrollerin ekstra bir kaynak maliyeti olduğunu düşünüyorum.
Evet ... birkaç gerekli kontrol için kaynak maliyetlerini kaçırmak, daha sonra Kolya Amca'nın önünde bir rapor tutmaktan çok daha kolaydır ...
 
Allis :

Tin .... Bu baştan başladım .... Tam olarak bundan ... Bağlantıyı gönderdim .... Ve nedense işe yaramadı ... Teşekkürler!
İşe yaramadı çünkü bir değişken bildirdikten sonra noktalı virgül koymak zorundaydınız, ama onlara sahip değildiniz.
 

Standart mumlara farklı bir açıdan bakmak için zaman çizelgesini soldan sağa doğru hareket ettirecektim.Saatlik mumlar 00 dakika değil, örneğin 10 veya 20'de başlayıp bitsinler.

Bu, bazı ek bilgiler verir. Aynısı günler için de geçerlidir - saatlere göre değişim (örn. açık oturumlar). Excel'de csv arşivlerini düzenlemeye başladım, ancak bir şekilde zahmetli olduğu ortaya çıktı. Belki birileri dakikaları hareket ettirmek ve TF'nin geri kalanını yeniden hesaplamak için başka bir çözüm görür.

 
Operr :

Standart mumlara farklı bir açıdan bakmak için zaman çizelgesini soldan sağa doğru hareket ettirecektim.Saatlik mumlar 00 dakika değil, örneğin 10 veya 20'de başlayıp bitsinler.

Bu, bazı ek bilgiler verir. Aynısı günler için de geçerlidir - saatlere göre değişim (örn. açık oturumlar). Excel'de csv arşivlerini düzenlemeye başladım, ancak bir şekilde zahmetli olduğu ortaya çıktı. Belki birileri dakikaları hareket ettirmek ve TF'nin geri kalanını yeniden hesaplamak için başka bir çözüm görür.


period_converter betiğini alın ve mum kesme koşulunu kendi isteğinize göre tamamlayın, mutlu olacaksınız. Örneğin, önceden, mumları x saat 10 dakika elde etmek için:

       if (time0>=i_time+periodseconds || i== 0 )

ile ikame edilmiş

       if (TimeMinute(time0)== 10 || i== 0 )

Peki, ya da onun gibi bir şey)))