Evet, neler oluyor??? - sayfa 9

 
Artyom Trishkin :

....

Test modu ayrıca optimizasyon modunu da içerir, ancak tersi değildir.

    ......
    Artyom Trishkin :
    Numara. Tersine.
    Peki, yarım önlemlere ihtiyacınız varsa.

    Korkarım anlamıyorum.

    MQL_OPTIMIZATION, MQL_TESTER'a dahil edilmişse, neden onu da kontrol edin?

     
    Сергей Таболин :

    Korkarım anlamıyorum.

    MQL_OPTIMIZATION, MQL_TESTER'a dahil edilmişse, neden onu da kontrol edin?

    Optimizasyon, test cihazının bir alt türüdür.
    Ancak test cihazı hiçbir şeyin alt türü değildir.
     
    Сергей Таболин :

    Oldukça doğru. Bir test veya optimize edici değilse, o zaman buraya hiç gelmez)))

    Artyom, eğer doğru anladıysam, o zaman benim tasarımım

    gereksiz?

    Yeterli olacaktır

    ?

     if ( MQLInfoInteger ( MQL_OPTIMIZATION )
    test cihazında çalıştığımızı biliyoruz, ancak bunun tek geçiş mi yoksa optimizasyon mu olduğunu bilmiyoruz, bu nedenle optimizasyon bayrağını kontrol etmemiz gerekiyor
     
    Andrey Dik :
    test cihazında çalıştığımızı biliyoruz, ancak bunun tek geçiş mi yoksa optimizasyon mu olduğunu bilmiyoruz, bu nedenle optimizasyon bayrağını kontrol etmemiz gerekiyor

    Evet Andrew, anladım.

    Ama burada genel bir soru var. Burada, optimizasyon veya test varsa, OnTester'da () kullanılmak üzere bazı istatistikler toplanır.

    Dolayısıyla soru, if(MQLInfoInteger(MQL_TESTER)) yazmak yeterli mi yoksa yine de if(MQLInfoInteger(MQL_OPTIMIZATION) || MQLInfoInteger(MQL_TESTER)) yazmak gerekli mi?

    Teste optimizasyon dahil edilmişse , optimizasyon modunu kontrol etmek gereksiz görünüyor ...

     
    Сергей Таболин :

    Ama burada genel bir soru var. Burada, optimizasyon veya test varsa, OnTester'da () kullanılmak üzere bazı istatistikler toplanır.

    Dolayısıyla soru, if(MQLInfoInteger(MQL_TESTER)) yazmak yeterli mi yoksa yine de if(MQLInfoInteger(MQL_OPTIMIZATION) || MQLInfoInteger(MQL_TESTER)) yazmak gerekli mi?

    Teste optimizasyon dahil edilmişse , optimizasyon modunu kontrol etmek gereksiz görünüyor ...

    Neden karmaşık tasarımlar?

    görünüşe göre, test cihazı ve optimize edici için gerçek dosyalarınız var.

    bu durumda, sizinki:

       filename = "ERR_dir\\" +filename+( MQLInfoInteger ( MQL_OPTIMIZATION ) ? ".opt" : ".tst" );
       filename = "ERR_dir\\" +filename+( MQLInfoInteger ( MQL_TESTER ) ? ".tst" : ".opt" );

    şöyle yazılabilir:

       filename = "ERR_dir\\" +filename + "." ;
       if ( MQLInfoInteger ( MQL_TESTER )) filename = filename + "t" ;
       if ( MQLInfoInteger ( MQL_OPTIMIZATION )) filename = filename + "o" ;
    

    ve hepsi bu kadar - tüm dosyalarınız test cihazı, optimize edici ve gerçek tarafından açıkça ayırt edilebilir hale gelecektir.

     
    Andrey F. Zelinsky :

    Neden karmaşık tasarımlar?

    görünüşe göre, test cihazı ve optimize edici için gerçek dosyalarınız var.

    bu durumda, sizinki:

    şöyle yazılabilir:

    ve hepsi bu kadar - tüm dosyalarınız test cihazı, optimize edici ve gerçek tarafından açıkça ayırt edilebilir hale gelecektir.

     double x;
    int OnInit ()
    {
       x = 0.0 ;
    }
    void OnTick ()
    {
       ....
       // if new Bar
       if ( MQLInfoInteger ( MQL_OPTIMIZATION ) || MQLInfoInteger ( MQL_TESTER )) x += 1.618 ;
       ....
    }
    double OnTester ()
    {
       return (x * 3.14159 );
    }
    

    Bu doğrulama gerekli mi?

     
    Сергей Таболин :

    Bu doğrulama gerekli mi?

    Şununla başlamanız gerekir - sisteminizde test edici, optimize edici ve gerçek olanı ayırt etmek hangi amaç için gereklidir?

    neden bu kontroller olmadan yapamıyorsun?

     
    Andrey F. Zelinsky :

    Şununla başlamalısınız - sisteminizin test ediciyi, optimize ediciyi ve gerçek olanı ayırt etme amacı nedir?

    neden bu kontroller olmadan yapamıyorsun?

    , optimizasyon modunu kontrol etmek gereksiz görünüyor ...


     
    Сергей Таболин :

    O zaman sadece testi kontrol et.
     
    Сергей Таболин :

    neden birine soruyorsun

    test cihazında ve optimize edicide MQLInfoInteger(MQL_TESTER) ve MQLInfoInteger(MQL_OPTIMIZATION) değerlerini kontrol edin

    ve hemen her şeyi anlayacaksınız.