MQL uzmanları için soru - sayfa 6

 
nikost :


ObjectCreate("DevIM0", OBJ_TRIANGLE, pencere, Zaman[0]+5500, 0,Zaman[0]+8500, 30,Zaman[0]+8500, -1*30);

Üçgen de iyi çizilmiş


hattınızı ekledim. Ama pencerede bir üçgen görmüyorum bir şey.
Belki başka bir şeyin eklenmesi gerekir?
ObjectSet vb. ?

 int start()
  { 

ObjectCreate ( "DevIM0" , OBJ_TRIANGLE ,
 WindowFind(WindowExpertName()), Time[ 0 ]+ 5500 , 0 ,Time[ 0 ]+ 8500 , 30 ,Time[ 0 ]+ 8500 , - 1 * 30 );  
       
                                             }                         

//-----------------------------------------------------   
    return ( 0 );
  }
 
  ObjectCreate("asd", OBJ_LABEL, WindowFind(WindowExpertName()), 0,0);
  ObjectSetText("asd", '\x70', "Wingdings 3");// '\x71'
  ObjectSet("asd", OBJPROP_COLOR    , Red);
  ObjectSet("asd", OBJPROP_XDISTANCE, 10);
  ObjectSet("asd", OBJPROP_YDISTANCE, 10);
  ObjectSet("asd", OBJPROP_CORNER   , 3);
  ObjectSet("asd", OBJPROP_FONTSIZE , 18);
 
Rita :


hattınızı ekledim. Ama pencerede bir üçgen görmüyorum bir şey.
Belki başka bir şeyin eklenmesi gerekir?
ObjectSet vb. ?


Sonunda anladım:

 
xrust :


Spsb., xrust

Şimdi anlayacağım.

 

Yine, tamamen net değil.

Gösterge penceresinde bir üçgen çizin:

 #property indicator_separate_window

extern bool     ТРЕУГОЛЬНИК=true ;
int init()  {      return ( 0 );  }
int deinit()  {   return ( 0 );  }
int start()
  { 
     int counted_bars=IndicatorCounted();
  //---- проверка на возможные ошибки
     if (counted_bars< 0 ) return (- 1 );
  //---- последний посчитанный бар будет пересчитан
     if (counted_bars> 0 ) counted_bars-= 10 ;
    //------------------------------------------------------------
   int limit= Bars - IndicatorCounted();  
   int k;    for (k = 0 ; k < limit; k++)   { 
.... .... ....  
 
  if (ТРЕУГОЛЬНИК==true )   
ObjectCreate ( "DevIM0" , OBJ_TRIANGLE ,
WindowFind(WindowExpertName()), Time[ 0 ]+ 3500 , 0 ,Time[ 0 ]+ 9500 , 0.2 ,Time[ 0 ]+ 9500 , - 1 * 0.2 );  

     } 
//-----------------------------------------------------   
    return ( 0 );
  }

Ancak, gösterge TRIANGLE==true koşulunu görmez.

Harici parametrelerde DOĞRU veya YANLIŞ'ı değiştirmeme bakılmaksızın üçgen her zaman çizilir!

Nedenmiş ?

 

Ve sen deinite bir durumda, onu silmeyi unutma?

Ve durumu çerçevelemek için parantezlerle - koşer değil mi?

 

Parantezler yardımcı olmuyor.

Tanımda - evet, değildi. Şimdi kaldırmayı oraya koyacağım.

 

Parantezler ... ve nokta :) olmalıdır. veya durumu ters çevirin ve geri vurun :))

 

parantez koydum. Deinite'de de kaldırma işlemi yapmıştır.

TRIANGLE==true/false anahtarı etkinleştirildi!

Ama şimdi yeni bir sorun ortaya çıktı. Yönünü değiştirirken üçgeni yeniden çizerek.

Şimdi yarın soruyu buraya koyacağım.

 

yani her kene üzerine çiziyorsun...