Hatalar, hatalar, sorular - sayfa 1655

 
coderex :
belki bir yapı kurucusudur? o zaten orada
Bu kadar güvensiz olan ne? Tabikide o :)
 
Andrey Barinov :
Bu kadar güvensiz olan ne? Tabikide o :)
Evet, emin değilim, çünkü zaten ne bekleyeceğinizi bilmiyorsunuz, terminali 1395'e güncelledim ve şimdi 1375'e nasıl geri döneceğimi bilmiyorum, çünkü robot ne yapması gerektiğini çözmeyi bıraktı ...
 
Andrey Barinov :
Bu kadar güvensiz olan ne? Tabikide o :)
Tamam, yıkıcı nerede?
 
Vladimir Pastushak :
Tamam, yıkıcı nerede?
En önemlisi, diğer her şey nerede?
 

Çevrimdışı test cihazı, "Başlat" düğmesine tıkladıktan sonra orijinal durumuna geri dönmüyor - "Durdur" düğmesi sürekli olarak açık. Bu, test aralığı mevcut geçmişin ötesine geçtiğinde gerçekleşir.

 2016.08 . 28 10 : 19 : 48      Core 1   RTS- 9.16 : read container failed
2016.08 . 28 10 : 19 : 48      Core 1   RTS- 9.16 : ticks synchronization started
2016.08 . 28 10 : 19 : 48      Core 1   RTS- 9.16 : history synchronized from 2015.06 . 22 to 2016.08 . 25
2016.08 . 28 10 : 19 : 48      Core 1   RTS- 9.16 : load 2651 bytes of history data to synchronize in 0 : 00 : 00.016
2016.08 . 28 10 : 19 : 48      Core 1   RTS- 9.16 : symbol synchronized, 3224 bytes of symbol info received
2016.08 . 28 10 : 19 : 48      Core 1   RTS- 9.16 : symbol to be synchronized
....
2016.08 . 28 10 : 19 : 41      Tester  RTS- 9.16 ,M1 (BCS-MetaTrader5): testing of Experts\Test.ex5 from 2016.08 . 01 00 : 00 to 2016.08 . 28 00 : 00

 
Lütfen yapıyı neden kullanamadığınızı açıklayın, kodda ne var? Ve nasıl değiştirilir (görünüşe göre, MQL için yeni bir işaretçi türü) böyle bir inşaat işe yarayacak şekilde? Ve yavaşlayacak mı?
 void f1( int i1, int i2, int i3, int i4, int i5 ) {}
void f2( int i1, int i2, int i3, int i4, int i5 ) {}

void OnStart ()
{  
   bool Condition = true ;
  
//  (Condition) ? f1(1, 2, 3, 4, 5) : f2(1, 2, 3, 4, 5); // 'f1', 'f2' - expression of 'void' type is illegal

   if (Condition)
    f1( 1 , 2 , 3 , 4 , 5 );
   else
    f2( 1 , 2 , 3 , 4 , 5 );
  
  (Condition ? f1 : f2)( 1 , 2 , 3 , 4 , 5 ); // Почему так нельзя? Как сделать, чтобы можно было?
}
 
fxsaber :
Lütfen yapıyı neden kullanamadığınızı açıklayın, kodda ne var? Ve nasıl değiştirilir (görünüşe göre, MQL için yeni bir işaretçi türü) böyle bir inşaat işe yarayacak şekilde? Ve yavaşlayacak mı?

Bunu dene

 int b = (Condition) ? f1( 1 , 2 , 3 , 4 , 5 ) : f2( 1 , 2 , 3 , 4 , 5 );
 

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

Hatalar, hatalar, sorular

A100 , 2016.08.25 14:49

Çalışma hatası

daha karmaşık bir versiyonda, şu şekilde yeniden üretilir: EX5 yüklemesi başarısız oldu

1398 derlemesinde, 'EX5 yükleme başarısız' hatası kaldı (görünüşe göre bu örnekle ilgili değildi)

 //Script1.mq5
typedef void (*fn)();
#import "Script2.ex5"
        void g( fn );
#import "Script3.ex5"
        void h();
#import
void OnStart () { g( h ); }
 //Script2.mq5
#property library
typedef void (*fn)();
void g( fn f ) export { f(); }
//Script3.mq5
#property library
void h() export {}
 
Vladimir Pastushak :
Depolamayı kendiniz mi kullanıyorsunuz?

4 gün sonra cevap vereceğim. Ama dedikleri gibi, geç olması hiç olmamasından iyidir.

Nadiren, ancak depolama alanı kullanıyorum. Temel olarak, yapılan işi kayıptan korumak için. Bilgisayardan bilgisayara da depolama yoluyla aktarıyorum. Daha önce kullanılan Yandex diski. Ama orada, transfer etmek için kaç manipülasyon yapmanız gerekiyor.

İlk bilgisayarda: zehiri aç - dosya seç - indir

İkinci bilgisayar alıcısında: zehiri açın - dosyayı seçin - indirin - editörde yeni bir kod oluşturun - indirilen kodu oraya kopyalayın - derleyin.

Ve zehir üzerinde bulunan versiyonlarda ek bir karışıklık yoktur.

Bir sorum var. Depo çalışıyor. Farklı bilgisayarlar bağlanır, kod aktarılır. Ancak depolama, hesaptan görünmez. "Görüntüle" düğmesi görünmüyor. Projeler klasöründe dosyalar var.

 

Merhaba. Gösterge penceresinin yüksekliğini değiştirmek için ChartSetInteger işlevi (MT5 build 1395) kullanılır:

 if (! ChartSetInteger ( 0 , CHART_HEIGHT_IN_PIXELS , 1 , subWindowPixels))
    {
         Print ( __FUNCTION__ + ", Error Code = " , GetLastError ());
         return ;
    } 
Pencereyi bu şekilde yeniden boyutlandırdıktan sonra gösterge penceresi engellenir ve artık manuel olarak değiştirilemez.
Bir sonraki konuda https://www.mql5.com/en/forum/59754 , MT4 için benzer bir sorunun çözümü gösterge pencere boyutunu 0 piksele ayarlamaktı ancak bu teknik MT5'te çalışmıyor. Lütfen bu sorunu çözmenin bir yolu olup olmadığını söyler misiniz? Teşekkür ederim.
Neden: