MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 831

 

Merhaba.


Bot aracılığıyla Telegram'a sinyal göndermek için birçok çözüm gördüm. Aksi mümkün mü? MT4'te yürütmek için Telegram'dan sinyal alınsın mı? Benzer bir şey varsa bağlantıyı atın.

 
sahsa-777 :
Ve başka bir tesadüfi soru - belki bir şekilde parabolik'in yeni versiyonuna masdi ekleyebilirsiniz. filtre olarak

Lütfen parabolik'in yeni bir versiyonunu gösterin.

 
Bir fonksiyon şeklinde bir düşüş yapmak mümkün müdür?
   prosadka=AccountProfit()* 100 /AccountBalance()*- 1 ;
   if (prosadka> 0 ) prosadka1=prosadka;
   else prosadka1= 0 ;
 
Bir siparişi değiştirirken 1 numaralı hata nedir? Yardım "hata yok, ancak sonuç bilinmiyor" diyor. Neyi düzelteceğimi bulamıyorum
 
Alexandr Sokolov :
Bir siparişi değiştirirken 1 numaralı hata nedir? Yardım "hata yok, ancak sonuç bilinmiyor" diyor. Neyi düzelteceğimi bulamıyorum

bu hata, bir siparişi değiştirirken sunucuya siparişle aynı değerleri gönderirseniz oluşur, yani TPnew = TPset ve SLnew=SLset

Not: eşitlik için normalize edilmemiş reel değerleri karşılaştırırsanız tam olarak beklediğiniz sonucu alamayacağınızı unutmayın;)

 
Igor Makanu :

bu hata, bir siparişi değiştirirken sunucuya siparişle aynı değerleri gönderirseniz oluşur, yani TPnew = TPset ve SLnew=SLset

Not: eşitlik için normalize edilmemiş reel değerleri karşılaştırırsanız tam olarak beklediğiniz sonucu alamayacağınızı unutmayın;)

ya onlardan sadece biriyse? Yoksa ikisini aynı anda mı değiştirmeniz gerekiyor?

 
Alexandr Sokolov :

ya onlardan sadece biriyse? Yoksa ikisini aynı anda mı değiştirmeniz gerekiyor?

bir siparişi değiştirirken en az bir parametrenin değiştirilmesi gerekiyor, hata No. 1 - sunucuya bir istek gönderdikten sonra hiçbir şeyin değiştirilmesi gerekmiyorsa

sunucuya ne gönderdiğinizi yazdırın, hemen göreceksiniz

 
Igor Makanu :

bir siparişi değiştirirken en az bir parametrenin değiştirilmesi gerekiyor, hata No. 1 - sunucuya bir istek gönderdikten sonra hiçbir şeyin değiştirilmesi gerekmiyorsa

sunucuya ne gönderdiğinizi yazdırın, hemen göreceksiniz

teşekkürler

 

İyi günler Bilenler.

Bir sorun vardı, bir Gösterge var ( değişen Zarflar ). Danışman olarak listelenir.

Render göstermesini sağlayamıyorum.

Göstergenin kendisinin değerlerini reçete etti:

 //************************************************************************************************/
#property indicator_chart_window
#property   indicator_buffers 4

#property   indicator_color1   Red
#property   indicator_color2   Blue
#property   indicator_color3   Red
#property   indicator_color4   Blue

#property   indicator_width1    2
#property   indicator_width2    2
#property   indicator_width3    1
#property   indicator_width4    1

#property   indicator_style1    0
#property   indicator_style2    0
#property   indicator_style3    1
#property   indicator_style4    1

double ExtSell_Buffer[];
double ExtBuy_Buffer[];
double ExtSell_2_Buffer[];
double ExtBuy_2_Buffer[];
//************************************************************************************************/

Ardından, Başlatma yaptı:

 //************************************************************************************************/
int OnInit ()
{
   //--- drawing settings-----------
   IndicatorBuffers( 4 );
   IndicatorDigits( Digits );
//--- 
   SetIndexStyle( 0 , DRAW_LINE );
   SetIndexBuffer ( 0 ,ExtSell_Buffer);
   SetIndexShift( 0 ,Ma_Shift);
   SetIndexLabel( 0 , "Line_Sell" );
//--- 
   SetIndexStyle( 1 , DRAW_LINE );
   SetIndexBuffer ( 1 ,ExtBuy_Buffer);
   SetIndexShift( 1 ,Ma_Shift);
   SetIndexLabel( 1 , "Line_Buy" );
   //------------------------------
//--- 
   SetIndexStyle( 2 , DRAW_LINE );
   SetIndexBuffer ( 2 ,ExtSell_2_Buffer);
   SetIndexShift( 2 ,Ma_Shift);
   SetIndexLabel( 2 , "Line_Sell_2" );
//--- 
   SetIndexStyle( 3 , DRAW_LINE );
   SetIndexBuffer ( 3 ,ExtBuy_2_Buffer);
   SetIndexShift( 3 ,Ma_Shift);
   SetIndexLabel( 3 , "Line_Buy_2" );
//------------------------------
   return ( INIT_SUCCEEDED );
}
//************************************************************************************************/

Kodun devamında arabellekleri doldurmaya çalışıyorum:

 //************************************************************************************************/
void OnTick ()
{
Paint ();
}

//************************************************************************************************/
void Paint()
{
//-----------------------------------------------
int limit; 
int counted_bars=IndicatorCounted(); 
//---- последний посчитанный бар будет пересчитан 
if(counted_bars>0) counted_bars--; 
limit=Bars-counted_bars; 
//---- основной цикл 
for(int i=0; i<limit; i++) 
   { 
      ExtSell_Buffer[i]=iEnvelopes(Symbol(), TimeFrames, Ma_Period, Ma_Method, Ma_Shift, Applied_Price, Deviation, 1, i); 
      ExtBuy_Buffer[i]=iEnvelopes(Symbol(), TimeFrames, Ma_Period, Ma_Method, Ma_Shift, Applied_Price, Deviation, 2, i);

      ExtSell_2_Buffer[i]=iEnvelopes(Symbol(), TimeFrames, Ma_Period, Ma_Method, Ma_Shift, Applied_Price, Deviation_2, 1, i); 
      ExtBuy_2_Buffer[i]=iEnvelopes(Symbol(), TimeFrames, Ma_Period, Ma_Method, Ma_Shift, Applied_Price, Deviation_2, 2, i);
   }
   return;
}
//-----------------------------------------------

Derleme hatasız geçiyor, ancak başlangıçta "dizi aralık dışında" hatası veriyor ve duruyor (EA'daki kritik bir hata nedeniyle test geçişi durduruldu).

Düzeltmeye yardım et...

ps Ayrı olarak, gösterge hatasız çalışır.

 
Alexander Layzerevich :

İyi günler Bilenler.

Bir sorun vardı, bir Gösterge var (değiştirilmiş Zarflar). Danışman olarak listelenir.

Render göstermesini sağlayamıyorum.

Uzman Danışmanların gösterge arabellekleri yoktur ve terminalde çizim yapmazlar

uzmanların komut dosyalarından ve göstergelerden ne gibi farklılık gösterdiğini yardımda okuyun