Hatalar, hatalar, sorular - sayfa 2174

 

Özel bir sembolün kâr para birimi (SYMBOL_CURRENCY_PROFIT), Terminal yeniden başlatıldıktan sonra sıfırlanır. Bu nedenle, TickValue genellikle sıfırdır ve bu, Test Cihazında sıfır kârlı işlemler oluşturur. Her seferinde kârın para biriminin değerini normal forma döndürmeniz gerekir.


Geri çalma

 void OnStart ()
{
   const string Name = "EXAMPL" ;
  
   if ( CustomSymbolCreate (Name))
     CustomSymbolSetString (Name, SYMBOL_CURRENCY_PROFIT , "JPY" );

   Print ( SymbolInfoString (Name, SYMBOL_CURRENCY_PROFIT )); // "JPY" - до перезагрузки Терминала, "MPL" - после.
}
 
Test Cihazındaki özel sembollerde, limit emirlerinin pozitif kayması nedeniyle grails elde edilir. Lütfen özel semboller için limit siparişleri için kaymayı devre dışı bırakın veya kayma (ve komisyon) ayarını yapın.
 

Core1-Agent'ı devre dışı bırakmanın bir yolu yoktur.

Tek çalıştırma başlatılamıyor

 2018.03 . 27 09 : 18 : 19.647 Core 1   agent process started
2018.03 . 27 09 : 18 : 28.380 Core 1   connecting to 127.0 . 0.1 : 3000
2018.03 . 27 09 : 18 : 45.562 Core 1   tester agent authorization error
2018.03 . 27 09 : 18 : 45.564 Core 1   connection closed

Terminali yeniden başlatmak yardımcı olmuyor.


Not: Optimizasyon sadece iki geçişte bu şekilde gerçekleşir ( animasyon )

Normal bağlantılar oluşana kadar Agent'larda sürekli yetkilendirme hataları vardır. Ve bu sadece iki geçiş!

 

Aralarından seçim yapabileceğiniz mevcut karakterlerin bir listesinin eksikliği var.

 
fxsaber :

Core1-Agent'ı devre dışı bırakmanın bir yolu yoktur.


Ayrıca ilk çekirdeği devre dışı bırakmak istiyorum.
 

Buna ek olarak

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

Hatalar, hatalar, sorular

Kirill Belousov , 2018.03.26 12:30

İsimler farklıdır ve silme işlemi bu akılda tutularak gerçekleşir.


ŞİMDİLİK OLSUN:

__________________________

Alt pencere listesindeki ilk gösterge silindiğinde, alt pencere nesnelerden tamamen temizlenir (el ile çizilmiş çizgiler, oklar, metin etiketleri bile silinir)

yeniden üretildi:

1. ayrı bir pencere için yapıcıda boş bir gösterge oluşturun (veya standart paketten örneğin MACD vb. herhangi bir kullanılabilir göstergeyi alın)

2. 5 adet göstergeyi/kopyayı bir alt pencereye koyun

3. Bir alt pencereye (veya herhangi bir nesneye) manuel olarak dikey bir çizgi çizin

Gösterge listesinden ilk olmayan herhangi bir göstergeyi kaldırırsanız, çizgi kalır ve listedeki ilk göstergeyse, tüm alt pencere nesneleri silinir (çizilmiş dikey bir çizgi).

İlkini sildikten sonra tekrar bir çizgi çizerseniz, kalanlardan ilki silindiğinde tekrar silinecektir. İlki dışında bir şeyi silerken, alt penceredeki nesneler silinmez.


Bu, belgelerde nerede belirtilmiştir? Neden bu kadar özel - alt pencere listesindeki ilk gösterge?

Alt pencerenin tamamen yeniden başlatılması gerçekleşiyor gibi görünüyor.


Oynanabilir MT4/MT5

Aradaki fark, MT5'te gösterge dosyalarının adlarının farklı olması gerektiğidir. MT4'te, dosya adını değiştirmeden aynı gösterge dosyasını bir alt pencereye koyabilirsiniz.


İlk alt pencere göstergesiyle ilgili sorun

Göstergeyi alt penceredeki göstergeler listesinden silerken üst üste ilk sıradaysa, tüm nesneler alt pencerede silinir.

Alt pencere listesinden ilk gösterge kaldırıldığında, OnDeinit() işlevinden ÖNCE tüm alt pencere nesneleri silinir.

 void OnDeinit ( const int reason)
  {
   int window= ChartWindowFind ();
   if (window== 2 )
  {
   int count= 0 ;
   for ( int i= ObjectsTotal ()-1;i>=0;i--)
    {
     if ( ObjectFind ( ObjectName (i))==window) count++;
    }
   Alert ( "Осталось объектов в подокне #2 - " ,count, " _StopFlag=" , _StopFlag , " REASON=" ,reason);
  }
//....
}

İlkini değil, listedeki ilkini silin

Tüm nesneler kaldırıldı

Göstergelere ait olup olmadıklarına veya alt pencerede manuel olarak oluşturulmuş nesneler olmalarına bakılmaksızın tüm nesneler silinir.
 

Uzman Danışmanı MQ-Demo'da "Tüm işaretler" modunda başlatma

 void OnTick ()
{
   static int i = 0 ;
  
   if (i < 2 )
  {
     MqlTick Tick;
    
     if ( SymbolInfoTick ( _Symbol , Tick))
       Print (Tick.time_msc);
      
    i++;
  }
   else
     ExpertRemove ();
}


Sonuç

Si- 6.18 ,M1 (MetaQuotes-Demo): every tick generating
Si- 6.18 ,M1: testing of Experts\fxsaber\LimitsSlippage.ex5 from 2018.03 . 25 00 : 00 to 2018.03 . 27 00 : 00 started
2018.03 . 26 10 : 00 : 00    1522058400 378
2018.03 . 26 10 : 00 : 00    1522058400013
2018.03 . 26 10 : 00 : 00    ExpertRemove () function called

İlk oluşturulan kenenin süresi ikinciden daha uzundur - bir hata.

 
Optimize edici, bu tür (üç geçişin tümü başladı) tekrarlanan mesajlarla sonsuz bir döngüye girer
 2018.03 . 27 23 : 13 : 54.520 Core 2   TESTER_EURUSD: history for 2017 year synchronized
2018.03 . 27 23 : 13 : 54.578 Core 1   pass 0 tested with error "history processing error (314 TESTER_EURUSD)" in 0 : 00 : 00.125
2018.03 . 27 23 : 13 : 54.580 Core 2   pass 1 tested with error "history processing error (314 TESTER_EURUSD)" in 0 : 00 : 00.124
2018.03 . 27 23 : 13 : 54.580 Core 3   pass 2 tested with error "history processing error (314 TESTER_EURUSD)" in 0 : 00 : 00.124
2018.03 . 27 23 : 13 : 54.600 Core 5   common synchronization completed


PS Oynatma


Ekli arşivin içeriğini sanal alana kopyalayın.

Komut dosyasını MQ-Demo'da çalıştırın

 #include <fxsaber\ThirdPartyTicks\ThirdPartyTicks.mqh> // https://www.mql5.com/ru/code/20225

void OnStart ()
{
  THIRDPARTYTICKS ThirdPartyTicks; // Подключились к локальному архиву котировок

   const string Name = ThirdPartyTicks[ "EURGBP" ].ToCustomSymbol( true ); // Создали кастомный символ на основе локального архива  
  
   if (Name != NULL )
  {
     const SYMBOL Symb( "TESTER" ); // Создали символ
  
     if (Symb.IsExist()) // Если символ создан
    {
      Symb.CloneProperties( "Si-6.18" );      
      Symb.SetProperty( SYMBOL_DIGITS , 5 );
      
      Symb.CloneHistory(Name);
  
       if (Symb.On()) // Включили в Обзор рынка
         ChartOpen (Symb.Name, PERIOD_CURRENT ); // Открыли график нового символа
    }   
  }
}


Özel bir TEST EDİCİ sembolü oluşturulacaktır. Test Cihazında seçiyoruz. Ayarlar: Optimizasyon yavaş, Tüm onaylar.

Bu danışmanı koyduk

 input int Range = 0 ;

void OnTick () {}


Seçenekler sekmesi


Optimizasyonu çalıştırın ve sonsuz bir döngü gözlemleyin


Dosyalar:
Archive.zip  1729 kb
 

Test Cihazında silinen "parasız" siparişlere sıfır kapanma süresi atanır

Bu elbette bir bug.

 

Bu gönderiden bir resmim var yeni bir açılır pencerede açılmıyor mu? Mozilla Firefox 59.0.2 (64-bit)

Yani alıntıdaki resim açılmıyor.