OnBookEvent aboneliği bazen düşüyor - böyle bir şey var mı? - sayfa 8

 
fxsaber :

Ayrıca, ücretli Market ürünlerini otomatik olarak bağırabilirsiniz - ücretsiz bir demo modunda, tüm kaynakları (simgeler, imleçler, vb.) Alfa kanalları ve daha fazlasıyla.

Yapabilir. Ve ayrıca öfkelenip şöyle düşünemezsiniz: olayın neden bir sonu olmalı.

 
A100 :

İnanmıyorum! - Markette her şeyin güvenli bir şekilde korunduğu yazıyor

Düzenli ithalattan şüpheleniyorum)

 
A100 :

İnanmıyorum! - Markette her şeyin güvenli bir şekilde korunduğu yazıyor

Bunun ciddi mi yoksa alaycı mı olduğunu anlayamıyorum. Cidden, ResourceSave her şeyin başıdır.

Ama mümkün

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum

Mql5 dilinin özellikleri, incelikleri ve çalışma yöntemleri

fxsaber , 2017.10.31 08:11

 // Сохранение Bitmap-объекта в bmp/gif/png-файле (прозрачность не учитывается)
bool BitmapObjectToFile( const long chartID, const string ObjName, const string FileName, const bool FullImage = false )
{  
   const ENUM_OBJECT Type = ( ENUM_OBJECT ) ObjectGetInteger (chartID, ObjName, OBJPROP_TYPE );  
   bool Res = (Type == OBJ_BITMAP_LABEL ) || (Type == OBJ_BITMAP );
             
   if (Res)
  {
     const string Name = __FUNCTION__ + ( string ) MathRand ();

     ObjectCreate (chartID, Name, OBJ_CHART , 0 , 0 , 0 );
     ObjectSetInteger (chartID, Name, OBJPROP_XDISTANCE , - 1 e3);
    
     const long chart = ObjectGetInteger (chartID, Name, OBJPROP_CHART_ID );
        
    Res = ChartSetInteger (chart, CHART_SHOW , false ) && ObjectCreate (chart, Name, OBJ_BITMAP_LABEL , 0 , 0 , 0 ) &&
           ObjectSetString (chart, Name, OBJPROP_BMPFILE , ObjectGetString (chartID, ObjName, OBJPROP_BMPFILE )) &&
          (FullImage || ( ObjectSetInteger (chart, Name, OBJPROP_XSIZE , ObjectGetInteger (chartID, ObjName, OBJPROP_XSIZE )) &&
                         ObjectSetInteger (chart, Name, OBJPROP_YSIZE , ObjectGetInteger (chartID, ObjName, OBJPROP_YSIZE )) &&
                         ObjectSetInteger (chart, Name, OBJPROP_XOFFSET , ObjectGetInteger (chartID, ObjName, OBJPROP_XOFFSET )) &&
                         ObjectSetInteger (chart, Name, OBJPROP_YOFFSET , ObjectGetInteger (chartID, ObjName, OBJPROP_YOFFSET )))) &&
                         ChartScreenShot (chart, FileName, ( int ) ObjectGetInteger (chart, Name, OBJPROP_XSIZE ),
                                                          ( int ) ObjectGetInteger (chart, Name, OBJPROP_YSIZE ));
     ObjectDelete (chartID, Name);
  }                    

   return (Res);
}


Başvuru

 // Сохраняет в png-файлах все Bitmap-объекты текущего чарта
void OnStart ()
{  
   for ( int i = ObjectsTotal ( 0 ) - 1 ; i >= 0 ; i--)
  {
     const string Name = ObjectName ( 0 , i);
    
     BitmapObjectToFile ( 0 , Name, ( string ) ChartID () + "\\" + Name + ".png" );    
  }      
}


ZY Ayrıca BMP-> GIF/PNG dosya dönüştürücüsü uygulanmaktadır.

 
A100 :

Değişiklikler nerede yapılır? MetaTrader'da veya belgelerde... örneğin

geniş bant olayları için, OnChartEvent daha özel olarak yazılmıştır: Tablodaki tüm mql5 programlarına olay mesajları gönderme (yani grafik , abonelik birimidir)

aslında ne olur

Belki CheckBookEventCount() işlevini ekleyin

Yani sayaç 1'den büyükse aboneliğin kaldırılmasını söylemiyoruz.

 
prostotrader :

Belki CheckBookEventCount() işlevini ekleyin

Yani sayaç 1'den büyükse aboneliğin kaldırılmasını söylemiyoruz.

Neden?

Sorular kalsa da:

  • Sayacı hangi işlev azaltır?
  • Hangi cam kapatılır?

Her şey MarketBookRelease'e atanmışsa, o zaman neden CheckBookEventCount ve neden o zaman sayaç çekimiz var?

 

Genel olarak, bir geniş bant aboneliğinin birimi bir program ise, aşağıdaki ada sahip global bir değişkene dayalı bir programlar arası abonelik/abonelikten çıkma sayacı düzenleyerek hiçbir şeyi değiştiremezsiniz:

 string GVName( string symbol ) { return IntegerToString ( ChartID ()) + ":" + symbol; }

sözlü olmayan anlaşma ile

 
A100 :
benim kum havuzumda. bir bardağa bağlı herhangi bir harici kod, büyük olasılıkla sizin için her şeyi bozacaktır.
 
prostotrader :

Beklendiği gibi, yanılıyorsunuz.

Ben yanılıyorum ama bu durumda değil. Başkalarının yazılarını daha dikkatli okumak isterim. Sorunun ne olduğu defalarca tekrarlandı ve nafile...

 
fxsaber :

Init ve Deinit aboneliğe katılmaz. Belki bu durum yardımcı olacaktır.

Hayır, önemli değil. Göstergeleri yeniden yüklerken öngörülemeyen bir OnInit/OnDeinit çağrıları dizisi sorununa atıfta bulunsak bile , nesnelerin yaratılmasına/yok edilmesine güvenirseniz bu sorun ortadan kalkmaz - aynı paradoks vardır.

Ancak bu dizinin (göstergelerdeki) hatanın kaynağı olmadığını bir kez daha tekrarlıyorum.

 
Stanislav Korotky :

Ben yanılıyorum ama bu durumda değil. Başkalarının yazılarını daha dikkatli okumak isterim. Sorunun ne olduğu defalarca tekrarlandı ve nafile...

Doğru, tüm mesajları okumak güzel olurdu.

https://www.mql5.com/ru/forum/267154/page7#comment_8170755
Подписка на OnBookEvent иногда отваливается - есть такое?
Подписка на OnBookEvent иногда отваливается - есть такое?
  • 2018.07.24
  • www.mql5.com
После того как поплотнее занялся стаканом и повесил на чарты несколько экспертов и индикаторов, подписанных на OnBookEvent, обнаружил, что некоторы...