Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 160

 
Zolotai :

Evet, burada kod yok. Sadece doğru duruma ihtiyacım var. Soru, mevcut çubuğun zamanını bulmanın mümkün olup olmadığıdır? Bar saatini nereden biliyorsun?
Zaman[] ve iTime() .
 
Zolotai :

Evet, burada kod yok. Sadece doğru duruma ihtiyacım var. Soru, mevcut çubuğun zamanını bulmanın mümkün olup olmadığıdır? Bar saatini nereden biliyorsun?
Zaman[istenen_bar_index]; Size "desired_bar_index" numarası ile çubuğun açılış saatini verecektir. iTime() diğer semboller ve zaman dilimleri için kullanılabilir
 

Böyle bir göstergeden bir danışmanda nasıl sinyal alınır

 #property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Red
#property indicator_color2 Blue
#define  SH_BUY   1
#define  SH_SELL  - 1
extern int      AllBars= 0 ;
extern int      Otstup= 30 ;
extern double   Per= 9 ;
int             SH,NB,i,UD;
double          R,SHMax,SHMin;
double          BufD[];
double          BufU[];

int init()
{
   if ( Bars <AllBars+Per || AllBars== 0 ) NB= Bars -Per; else NB=AllBars;
   IndicatorBuffers( 2 );
   IndicatorShortName( "SHI_SilverTrendSig" );
   SetIndexStyle( 0 , DRAW_ARROW , 0 , 1 );
   SetIndexStyle( 1 , DRAW_ARROW , 0 , 1 );
   SetIndexArrow( 0 , 159 );
   SetIndexArrow( 1 , 159 );
   SetIndexBuffer ( 0 ,BufU);
   SetIndexBuffer ( 1 ,BufD);
   SetIndexDrawBegin( 0 , Bars -NB);
   SetIndexDrawBegin( 1 , Bars -NB);
   ArrayInitialize (BufD, 0.0 );
   ArrayInitialize (BufU, 0.0 );
   return ( 0 );
}
int start()
{
   int CB=IndicatorCounted();
   if (CB< 0 ) return (- 1 ); else if (NB> Bars -CB) NB= Bars -CB;
   for (SH= 1 ;SH<NB;SH++)
   {
       for (R= 0 ,i=SH;i<SH+ 10 ;i++) {R+=( 10 +SH-i)*(High[i]-Low[i]);}      R/= 55 ;

      SHMax = High[Highest( NULL , 0 ,MODE_HIGH,Per,SH)];
      SHMin = Low[Lowest( NULL , 0 ,MODE_LOW,Per,SH)];
       if (Close[SH]<SHMin+(SHMax-SHMin)*Otstup/ 100 && UD!=SH_SELL) { BufU[SH]=Low[SH]-R* 0.5 ; UD=SH_SELL; }
       if (Close[SH]>SHMax-(SHMax-SHMin)*Otstup/ 100 && UD!=SH_BUY) { BufD[SH]=High[SH]+R* 0.5 ; UD=SH_BUY; }
   }
   return ( 0 );
}

iCustom aracılığıyla denendi ancak herhangi bir sayıda satır ve çubuk belirtilirken 2147483647 değerini yazıyor...

 
VOLDEMAR :

Böyle bir göstergeden bir danışmanda nasıl sinyal alınır

iCustom aracılığıyla denendi ancak herhangi bir sayıda satır ve çubuk belirtilirken 2147483647 değerini yazıyor...

Bu değer EMPTY_VALUE . Varsayılan olarak, sinyal yoksa gösterge arabelleğindedir. Tamponda dolaşın ve boş olmayan değerleri yakalayın.
 

Tamponlarını şu şekilde kontrol edin:

 if (Bufer0> 0 ) {               // в double Bufer0 через iCustom() ранее получено значение буфера индикатора 0
   if (Bufer0!= EMPTY_VALUE ) {
       // поймали значение в буфере
      }
   }
 
artmedia70 :

Tamponlarını şu şekilde kontrol edin:


Tamam anladım ama tamponda yüzlerce değer olabilir, sonuncusu nasıl bulunur ve son al sat sinyalinin ne olduğu nasıl belirlenir?
 
hepsini anladım teşekkürler
 
VOLDEMAR :

Tamam anladım ama tamponda yüzlerce değer olabilir, sonuncusu nasıl bulunur ve son al sat sinyalinin ne olduğu nasıl belirlenir?

Kodu derlemedim ve MT'ye bakmadım, ancak BufD ilk mavi arabellek, BufU sıfır kırmızı arabellek. Ekranda ne gösteriyorlar, mavi ve kırmızı noktalar? Öyleyse, hangi rengin hangi noktada neyi gösterdiğine bakın. Ve onları tamponlarda yakalayın - sıfır tamponda kırmızı, mavi - ilkinde.

Peki... ve değerlerin ilk çubukta yakalanması gerekiyor, büyük olasılıkla yeniden çizilip çizilmediğini görmediniz. Veya sıfır çubuğundan değer bulunana kadar bir döngü gerekebilir. Her şey sinyallerini nasıl verdiğine bağlı...

 
herkese merhaba. MT4'te neden birden fazla danışman ayarlayamıyorum demeyin, stratejiyi test ederken herkes negatif bir değer veriyor! sorun ne olabilir?
 
serjlarkin :
herkese merhaba. MT4'te neden birden fazla danışman ayarlayamıyorum demeyin, stratejiyi test ederken herkes negatif bir değer veriyor ! sorun ne olabilir?
Neyin olumsuz anlamı?