MQL uzmanları için soru - sayfa 3

 
Teşekkürler Granit77
 
granit77 :

Evet, bu şekilde, göstergenin adının hilo.mq4 olduğunu varsayarsak:

 extern int iR = 3 ;
extern int SignalBar = 1 ;
//.......
//---получение значения  HighBuffer 
double buy =   iCustom ( NULL , 0 , " hilo " ,
                       iR ,
                       0 , // № буффера
                       SignalBar ) ; // № бара    
 
//---получение значения  LowBuffer
double sell =   iCustom ( NULL , 0 , " hilo " ,
                       iR ,
                       1 , // № буффера
                       SignalBar ) ; // № бара

Küçük sorun. Gösterge EA çalışıyor. Ama .... Sadece kısa işlemlerin uygulanması ile!

onlar. arabellek numarası = 1 ve sıfır ve ilk çubuklardaki değerlerle

 if    (    ( sell_0 > Bid )   &&   ( sell_1 <= Bid ))

Satış durumu sorunsuz çalışmaktadır.

Ancak uzman satın almak istemiyor! Sorun ne anlamıyorum! Görünüşe göre doğru koşulları belirliyorum. arabellek numarası=0

 (    ( buy0 >= Ask )   &&       ( buy1 < Ask )    )

Satın almıyor! Veya och satın alır. nadiren "fener!

Görsel mod tablosundaki gösterge çizgileri doğru oluşturulmuş gibi görünse de!


burdaki problem ne olabilir?

 
rid :
büyük 77 :

Evet, olduğu gibi, göstergenin adının hilo.mq4 olduğunu düşünürsek:

 extern int iR = 3 ;
extern int SignalBar = 1 ;
//.......
//---получение значения  HighBuffer 
double buy =   iCustom ( NULL , 0 , " hilo " ,
                       iR ,
                       0 , // № буффера
                       SignalBar ) ; // № бара    
 
//---получение значения  LowBuffer
double sell =   iCustom ( NULL , 0 , " hilo " ,
                       iR ,
                       1 , // № буффера
                       SignalBar ) ; // № бара

Küçük sorun. Gösterge EA çalışıyor. Ama .... Sadece kısa işlemlerin uygulanması ile!

onlar. arabellek numarası = 1 ve sıfır ve ilk çubuklardaki değerlerle

 if    (    ( sell_0 > Bid )   &&   ( sell_1 <= Bid ))

satış koşulu kusursuz çalışıyor.

Ancak uzman satın almak istemiyor! Sorun ne anlamıyorum! Görünüşe göre doğru koşulları belirliyorum. arabellek numarası=0

 (    ( buy0 >= Ask )   &&       ( buy1 < Ask )    )

Satın almıyor! Veya och satın alır. nadiren "fener!

Görsel mod tablosundaki gösterge çizgileri doğru oluşturulmuş gibi görünse de!


burdaki problem ne olabilir?

Herhangi bir fikri olan var mı? ben de bu soruyla ilgileniyorum

 

Özel bir göstergeyle çalışırken şunu fark ettim:


 // так РАБОТАЕТ !!!
int FATLsB = iCustom ( NULL , 0 , " FATLs " , 0 , 0 ) ;
int FATLsS = iCustom ( NULL , 0 , " FATLs " , 1 , 0 ) ;

// а вот так НЕТ ...
double FATLsB = iCustom ( NULL , 0 , " FATLs " , 0 , 0 ) ;
double FATLsS = iCustom ( NULL , 0 , " FATLs " , 1 , 0 ) ;


// если потом в коде есть сранвнение с 0 или 1, например
if ( FATLsB == 1 ) { CloseSell () ; SetBuy () ; }
 
kombat :

Özel bir göstergeyle çalışırken şunu fark ettim:


 // так РАБОТАЕТ !!!
int FATLsB = iCustom ( NULL , 0 , " FATLs " , 0 , 0 ) ;
int FATLsS = iCustom ( NULL , 0 , " FATLs " , 1 , 0 ) ;

// а вот так НЕТ ...
double FATLsB = iCustom ( NULL , 0 , " FATLs " , 0 , 0 ) ;
double FATLsS = iCustom ( NULL , 0 , " FATLs " , 1 , 0 ) ;


// если потом в коде есть сранвнение с 0 или 1, например
if ( FATLsB == 1 ) { CloseSell () ; SetBuy () ; }

İlk durumda, atama işleminden önce int hedef tipine bir atama gelir. Bu nedenle, karşılaştırma koşulu doğru çalışır.

İkinci durumda, karşılaştırmadan önce, işlevi kullanarak kayan noktalı sayıları belirtilen doğruluğa yuvarlamak gerekir.

 NormalizeDouble ( double value , int digits )



 

Afedersiniz...

Yukarıdaki örneğim bir hataya dayanmaktadır.

Hangi atama iade fiyat göstergesi FATLs üzerindeydi .

Ve bunu EURUSD çiftinde fark etmedim, “okların görünümünü” 0 ve 1 boğası ile karıştırdım


Ancak, bu seçenek durumu düzeltti:


 bool FATLsB = iCustom ( NULL , 0 , " FATLs " , 0 , 0 ) > 0 ;
bool FATLsS = iCustom ( NULL , 0 , " FATLs " , 1 , 0 ) > 0 ;
//--- открытие БАЙ закрытие СЕЛЛ ------------------
   if ( FATLsB == 1 && TotalBuy () == 0 ) { CloseSell () ; SetBuy () ; }
 

Hepinize iyi günler!

Lütfen. söylemek.

Grafiğimde yavaş bir MA ve hızlı bir MA kesiştiğini varsayalım. İlk barda.

Birkaç bar daha geçsin.

Verilen MA'ların son kesişiminin geçmişte hangi çubukta gerçekleştiğini nasıl belirleyebilirim?

------------------------------

Soruna nasıl yaklaşacağımı bile bilmiyorum?

 
Rita :

Grafiğimde yavaş bir MA ve hızlı bir MA kesiştiğini varsayalım. İlk barda.

Birkaç bar daha geçsin.

Verilen MA'ların son kesişiminin geçmişte hangi çubukta gerçekleştiğini nasıl belirleyebilirim?

Sizin için temel fark nedir? İlk çubuktaki kesişme, diğerlerinde olduğu gibi aranır/ aranır. Kenelerin değerlerinin değerlerini görüntülediğiniz ve analiz ettiğiniz bir döngü (örneğin, sıfır çubuktan Çubuklara) düzenleyin. konuyu anlayamıyorum...
 

Şu anki barı bulmam gerekiyor.

MA_1 ve MA_2 - iki mamanın son geçişinden bu yana kaç çubuk geçti.

Böyle bir döngü nasıl organize edilir?

eğer (MA_1>MA_2) {

 
Rita :

Şu anki barda öğrenmem gerekiyor.

İki MA_1 MA_2'nin son geçişinden bu yana kaç çubuk geçti.

Böyle bir döngü nasıl organize edilir?

MA yer değiştirene kadar mevcut çubuktan gidin. ve say.