Hatalar, hatalar, sorular - sayfa 1778

 
Evgeny Chernyshev :
Tünaydın!

Bu standart davranıştır. Geri sayım, yapım aşamasındaki mevcut çubuktan başlar. Buna göre, otomatik kaydırma olmadığında yeni bir çubuğun ortaya çıkmasıyla sayısı bir artar.
Tamam, o zaman lütfen belgelerin bir yerine bunun "ilk görünür çubuk " değil, mevcuttan (tamamlanmamış) başlayarak ilk çubuk olduğunu ekleyin.
 

Derleme çalışma zamanı hatası

#define MACRO( x )       #x
void OnStart ()
{
         Print ( MACRO( "1\0" )); //равносильно Print( "\"1\\0\"" );
}

Sonuç : 1

Beklenen: "1\0"

onlar. 2 hata: eksik tırnak " ve yanlış yorumlanmış karakter \

ve ötesinde

void OnStart ()
{
         Print ( MACRO( 1 \ 0 )); //Error: '\' - illegal escape sequence
}
sonuç beklenirken derleme hatası: 1\0
 
Vladislav Andruschenko :

evet, ama bunu müşterilere açıklayamıyor musunuz?

Bir düşünün, bir uzman çalışır, çalışır çalışır, siz uyursunuz, uyursunuz, uyanırsınız ve uzman çalışmaz, neden? çünkü zamanlayıcı kendini astı ve ne yapmalı, kim suçlu?

Hafif bir gecikmeyle yeniden başlatmaya yardımcı olur, örneğin:

int err=- 1 ;
       int count= 5 ;
      { while ((err!= 0 )&&(count> 0 ))
      {
         ResetLastError ();
         EventSetMillisecondTimer (MSTimerSet);                     //Установка таймера XXX миллисекунд
         err= GetLastError ();
         Print ( "EventSetMillisecondTimer n=" ,count, " err >>" ,err);
         { if (err!= 0 ){ Sleep ( 50 );}}
      }} //while((err!=0)&&(count>0))
 
Yury Kirillov :

Hafif bir gecikmeyle yeniden başlatmaya yardımcı olur, örneğin:

int err=- 1 ;
       int count= 5 ;
      { while ((err!= 0 )&&(count> 0 ))
      {
         ResetLastError ();
         EventSetMillisecondTimer (MSTimerSet);                     //Установка таймера XXX миллисекунд
         err= GetLastError ();
         Print ( "EventSetMillisecondTimer n=" ,count, " err >>" ,err);
         { if (err!= 0 ){ Sleep ( 50 );}}
      }} //while((err!=0)&&(count>0))
Ampirik olarak, İnternet buggy olduğunda zamanlayıcının kapatıldığını bulmayı başardık. Terminal donuyor ve zamanlayıcı uçuyor. Onlar. Sadece uçabilir. İnternet yavaşladığında.

Bu yüzden farklı yaptım, yani. Zamanlayıcıyı kene ile başlatın.
 

Çalışma hatası

typedef void (*fn)();
class A { public :
        fn a;
};
class B : public A { public :
         void a() { Print( __FUNCSIG__ ); }
};
void OnStart ()
{
        B b;
        b.a();
}

Sonuç: geçersiz işlev işaretçisi çağrısı; B::a() bekleniyor

ve burada -> derleme hatası

typedef void (*fn)( int );
class A { public :
        fn a;
};
class B : public A { public :
         void a() { Print( __FUNCSIG__ );  }
};
void OnStart ()
{
        B b;
        b.a(); //Error: 'a' - wrong parameters count
}
 
MT4 , kullanıcı olaylarını gruplar halinde atlar. Bu bir özellik mi yoksa bir hata mı?
 
Andrey Dik :
MT4 , kullanıcı olaylarını gruplar halinde atlar. Bu bir özellik mi yoksa bir hata mı?


sadece panelde kontrol edildi - her şey yolunda, tüm olaylar normal şekilde işleniyor

 
Vladislav Andruschenko :

sadece panelde kontrol edildi - her şey yolunda, tüm olaylar normal şekilde işleniyor

Birkaç sembol için casuslar koştum ve EA, keneler geldiğinde bu casuslardan olayları alır. MT5'te, tüm olayların varmak için zamanı vardır ve MT4'te solma bazen bir saniye veya daha uzun süre görülebilir.
Ağır bir şey yapılmıyor, bir tablo açık.
 
Pozisyon açmak için gerekli marjın yeterli değerini alamıyorum. Tüm enstrümanlar için aynı değeri alıyorum, farklı brokerler için farklı şekillerde, biri tüm semboller için 0.0, diğeri 100000.0 gösteriyor.

MT4'te neler oluyor? 10 64 kazanın, MT4 yapı 1031

Bunu seviyorum:

void OnStart ()
{
   Print ( MarketInfo ( Symbol (), MODE_MARGININIT ));
   Print ( MarketInfo ( Symbol (), MODE_MARGINMAINTENANCE ));
   Print ( MarketInfo ( Symbol (), MODE_MARGINHEDGED ));
   Print ( MarketInfo ( Symbol (), MODE_MARGINREQUIRED ));
   Print ( SymbolInfoDouble ( Symbol (), SYMBOL_MARGIN_INITIAL ));
}
Ya MT4 tamamen bozuldu ya da nasıl olduğunu tamamen unuttum ve MT4'ü anlamayı bıraktım.

İşte 2 brokerden elde edilen değerler:


2017.01.31 22:15:59.312 Komut Dosyası MarginReq AUDCHF,M15: kaldırıldı
2017.01.31 22:15:59.310 MarginReq AUDCHF,M15: uninit neden 0
2017.01.31 22:15:59.310 MarginReq AUDCHF,M15: 0.0
2017.01.31 22:15:59.310 MarginReq AUDCHF,M15: 1000.0
2017.01.31 22:15:59.310 MarginReq AUDCHF,M15: 100000.0
2017.01.31 22:15:59.310 MarginReq AUDCHF,M15: 0.0
2017.01.31 22:15:59.310 MarginReq AUDCHF,M15: 0.0
2017.01.31 22:15:59.309 MarginReq AUDCHF,M15: başlatıldı
2017.01.31 22:15:59.300 MarginReq AUDCHF,M15 girişleri: Giriş1=0;
2017.01.31 22:15:57.899 Script MarginReq AUDCHF,M15: başarıyla yüklendi
2017.01.31 22:13:38.077 Script MarginReq AUDCHF,M15: kaldırıldı
2017.01.31 22:13:38.075 MarginReq AUDCHF,M15: uninit neden 0
2017.01.31 22:13:38.075 MarginReq AUDCHF,M15: 100000.0
2017.01.31 22:13:38.075 MarginReq AUDCHF,M15: 1000.0
2017.01.31 22:13:38.075 MarginReq AUDCHF,M15: 100000.0
2017.01.31 22:13:38.075 MarginReq AUDCHF,M15: 0.0
2017.01.31 22:13:38.075 MarginReq AUDCHF,M15: 100000.0
2017.01.31 22:13:38.075 MarginReq AUDCHF,M15: başlatıldı
2017.01.31 22:13:38.066 MarginReq AUDCHF,M15 girişleri: Giriş1=0;
2017.01.31 22:13:36.806 Komut Dosyası MarginReq AUDCHF,M15: başarıyla yüklendi
Bir çeşit incir.
 
Andrey Dik :
Pozisyon açmak için gerekli marjın yeterli değerini alamıyorum. Tüm enstrümanlar için aynı değeri alıyorum, farklı brokerler için farklı şekillerde, biri tüm semboller için 0.0, diğeri 100000.0 gösteriyor.

MT4'te neler oluyor? 10 64 kazanın, MT4 yapı 1031

Bunu seviyorum:

void OnStart ()
{
   Print ( MarketInfo ( Symbol (), MODE_MARGININIT ));
   Print ( MarketInfo ( Symbol (), MODE_MARGINMAINTENANCE ));
   Print ( MarketInfo ( Symbol (), MODE_MARGINHEDGED ));
   Print ( MarketInfo ( Symbol (), MODE_MARGINREQUIRED ));
   Print ( SymbolInfoDouble ( Symbol (), SYMBOL_MARGIN_INITIAL ));
}
Ya MT4 tamamen bozuldu ya da nasıl olduğunu tamamen unuttum ve MT4'ü anlamayı bıraktım.

İşte 2 brokerden elde edilen değerler:


2017.01.31 22:15:59.312 Komut Dosyası MarginReq AUDCHF,M15: kaldırıldı
2017.01.31 22:15:59.310 MarginReq AUDCHF,M15: uninit neden 0
2017.01.31 22:15:59.310 MarginReq AUDCHF,M15: 0.0
2017.01.31 22:15:59.310 MarginReq AUDCHF,M15: 1000.0
2017.01.31 22:15:59.310 MarginReq AUDCHF,M15: 100000.0
2017.01.31 22:15:59.310 MarginReq AUDCHF,M15: 0.0
2017.01.31 22:15:59.310 MarginReq AUDCHF,M15: 0.0
2017.01.31 22:15:59.309 MarginReq AUDCHF,M15: başlatıldı
2017.01.31 22:15:59.300 MarginReq AUDCHF,M15 girişleri: Giriş1=0;
2017.01.31 22:15:57.899 Script MarginReq AUDCHF,M15: başarıyla yüklendi
2017.01.31 22:13:38.077 Script MarginReq AUDCHF,M15: kaldırıldı
2017.01.31 22:13:38.075 MarginReq AUDCHF,M15: uninit neden 0
2017.01.31 22:13:38.075 MarginReq AUDCHF,M15: 100000.0
2017.01.31 22:13:38.075 MarginReq AUDCHF,M15: 1000.0
2017.01.31 22:13:38.075 MarginReq AUDCHF,M15: 100000.0
2017.01.31 22:13:38.075 MarginReq AUDCHF,M15: 0.0
2017.01.31 22:13:38.075 MarginReq AUDCHF,M15: 100000.0
2017.01.31 22:13:38.075 MarginReq AUDCHF,M15: başlatıldı
2017.01.31 22:13:38.066 MarginReq AUDCHF,M15 girişleri: Giriş1=0;
2017.01.31 22:13:36.806 Komut Dosyası MarginReq AUDCHF,M15: başarıyla yüklendi
Bir çeşit incir.

denemek

HesapSerbestMarjKontrol