Erreurs, bugs, questions - page 2664

 

Est-il maintenant possibled'exécuter l'optimisation+testsur tous les symboles dans la revue de marché ? Ou seulement sans optimisation, une simple exécution avec les mêmes paramètres est effectuée sur l'ensemble de l'examen ?


C'est-à-dire que vous pouvez effectuer un test non seulement avec les mêmes paramètres pour les symboles dans le Market Watch, mais les optimiser en même temps ? Sinon, la sélection des paramètres d'optimisation est bloquée lorsque tous les symboles sont sélectionnés.

Оптимизация стратегий - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
Оптимизация стратегий - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
  • www.metatrader5.com
Тестер стратегий позволяет тестировать и оптимизировать торговые стратегии (советники) перед началом использования их в реальной торговле. При тестировании советника происходит его однократная прогонка с начальными параметрами на исторических данных. При оптимизации торговая стратегия прогоняется несколько раз с различным набором параметров...
 
Askr:

Est-il désormais possibled'exécuter un test d'optimisationsur tous les symboles de la revue de marché ?

https://www.mql5.com/ru/code/26132

MultiTester
MultiTester
  • www.mql5.com
Бывает, нужно советник прогнать на множестве символов. Для этого в MT5-тестере существует режим "Все символы, выбранные в окне Обзора рынка". Получается прогон одних и тех же настроек советника на разных символах. Но иногда требуется сделать много различных запусков MT5-тестера. Данная библиотека позволяет это. Возможности. Можно задавать...
 
Il me semble avoir lu que cela est déjà apparu dans le testeur standard ?

J'aimerais savoir comment faire fonctionner vos bibliothèques, ce n'est pas clair. Après tout, vous devez spécifier le conseiller expert lui-même dans le testeur, mais comment lancer la bibliothèque ?

Ou, est-ce que vous copiez le skiyal dans le terminal et tout fonctionne tout seul ?
 
Askr:
Ou bien avez-vous copié le scial dans le terminal et tout fonctionne tout seul ?

Oui.

 
Alexey Kozitsyn:
Impossible de s'engager dans le stockage...

Encore le même problème ! Développeurs, s'il vous plaît, réparez le stockage ! C'est impossible de travailler avec ça. Erreur courante.

 
Sergey Dzyublik:

C'est bon, reviens :

Nous sommes en contact. Ce code fonctionne :

class A
{
  protected:
    int field;

  public:
    A() { field = rand(); }
};

class B: public A
{
  public:
    B(A &origin)
    {
      field = origin.field;// это другой экземпляр, C++ дает ошибку 'int A::field' is protected
    }
    int getField(void) const
    {
      return field;
    }
};


void OnStart()
{
    A a;
    B b(a);
    Print(b.getField());
}

Mais selon les règles du C++, il ne devrait pas permettre l'accès à un champ protégé (champ d'un autre objet, bien que de la même classe ; protégé signifie que l'accès n'est possible qu'aux champs hérités du même objet, alors que pour l'accès aux champs étrangers, il doit être public). Est-ce un bug ou une fonctionnalité ?

 
Stanislav Korotky:

Nous nous tournons. Voici le code qui fonctionne :

Mais selon les règles du C++, il ne devrait pas permettre l'accès à protected au moment de la compilation. Est-ce un bug ou un correctif ?

Comment ça, ça ne devrait pas ? Dans quel lieu particulier ? Votre code est donc un héritage public (c'est-à-dire que les membres protégés dans les descendants deviennent publics) et la méthode est publique.

s.w. me suis frotté les yeux, j'ai vu où, désolé)
 
Stanislav Korotky:

Nous nous tournons. Voici le code qui fonctionne :
Mais selon les règles du C++, il ne devrait pas permettre l'accès à protected au moment de la compilation. Est-ce un bug ou un correctif ?

Oui, C++ en ligne jure: https://onlinegdb.com/Hkv1_13EU
C'est aux développeurs d'en décider.

 
Sergey Dzyublik:

Oui, C++ en ligne jure: https://onlinegdb.com/Hkv1_13EU
C'est aux développeurs d'en décider.

Oui, écoutons les développeurs. J'ai maintenant profité de ce trou pratique. S'ils le ferment, je devrai chercher d'autres moyens.

 
Stanislav Korotky:

Oui, écoutons les développeurs. J'ai maintenant profité de ce trou pratique. S'ils le ferment, je devrai trouver d'autres moyens.

class A
{
  protected:
    int field;

  public:
    A() { field = rand(); }
    A(const A &origin)
    {
      field = origin.field;
    }
};

class B: public A
{
  public:
    B(const A &origin):A(origin){}
    int getField(void) const
    {
      return field;
    }
};


void OnStart()
{
    A a;
    B b(a);
    Print(b.getField());
}