Bibliothèque: MultiTester - page 33

 
Bonjour, c'est très utile, vous avez également un testeur de portefeuille, où vous pouvez ajouter des rapports en un seul, également très utile, mais j'ai cette idée - ne prévoyez-vous pas de combiner ces deux outils, et de faire un optimiseur de portefeuille automatique ? Ainsi, les résultats de l'optimisation seraient évalués immédiatement en tant que partie du portefeuille avec les mêmes résultats - de sorte qu'il n'y aurait pas de corrélation sur les drawdowns et ainsi de suite, avec la fonction cible de l'ensemble du portefeuille par Sharpe ou le facteur de récupération, et des filtres supplémentaires, par le nombre de transactions, par exemple. Cela réduirait considérablement le travail manuel et le temps, car les résultats de l'optimisation doivent être combinés manuellement dans un portefeuille, et lorsqu'il y a des centaines de thèmes....
 
Comment obtenir les paramètres d'entrée d'une exécution spécifique à partir de cette bibliothèque ? TESTERCACHE Cache ; Cache[i] inputs
 

Bonjour !

En décembre dernier, j'ai utilisé votre bibliothèque et j'ai optimisé plus de 100 personnages personnalisés.

Aujourd'hui, j'ai essayé de l'exécuter à nouveau, mais la seule erreur dans le journal du testeur est "l'optimisation ne peut pas être lancée". J'ai mis à jour la bibliothèque.

J'ai essayé de l'exécuter sur différents symboles, j'ai essayé d'exécuter votre MultiTester_example, j'ai essayé différentes versions de Metatrader 5, différents paramètres d'optimisation, j'ai essayé de l'exécuter sur un Expert Advisor de moyenne mobile normal, mais cette erreur se produit toujours, je n'ai pas trouvé de journaux plus détaillés. Pourriez-vous me dire si quelqu'un a déjà eu ce genre de problème ? Comment cela peut-il être résolu ?

 
Jekamajor #:

la seule erreur dans le journal du testeur est "l'optimisation ne peut pas être lancée".

Quelle est la réponse au démarrage manuel de l'optimisation ?
 
fxsaber #:
Quelle est la réponse à l'exécution manuelle de l'optimisation ?


L'optimisation manuelle est lancée, exécutée et terminée sans erreur. Capture d'écran des journaux. En haut, le lancement de l'optimisation par simple moyenne mobile, en bas, le lancement avec les mêmes paramètres mais via la bibliothèque.

 
Jekamajor #:

ci-dessous le lancement avec les mêmes paramètres mais à travers la bibliothèque.

Pourquoi ce Conseiller Expert s'exécute-t-il dans le Testeur lui-même ? Il est lancé sur le graphique du terminal, pas sur le testeur.

 
fxsaber #:

Pourquoi ce Conseiller Expert s'exécute-t-il dans le Testeur lui-même ? Il est lancé sur le graphique du terminal, pas sur le testeur.

Oui, en effet ! J'ai oublié comment le lancer depuis un an. En le glissant sur le graphique, il démarre et fonctionne. Merci beaucoup pour votre aide !
 
Veuillez donner un exemple de la façon d'écrire du code pour plusieurs optimisations séquentielles qui prennent différents paramètres d'entrée.
 
Soroush Kheradmand #:
Veuillez donner un exemple de la façon d'écrire du code pour plusieurs optimisations séquentielles qui prennent différents paramètres d'entrée.

#include <fxsaber\MultiTester\MTTester.mqh>    // https://www.mql5.com/fr/code/26132

#define _CS(A) ((!IsStopped()) && (A))
#define  PAUSE 200

void Run( const string Settings )
{
  while (_CS(!MTTESTER::IsReady()))
    Sleep(PAUSE);

  MTTESTER::CloseNotChart();
    
  if (_CS(MTTESTER::SetSettings2(Settings)))
    MTTESTER::ClickStart(false);

  while (_CS(!MTTESTER::IsReady()))
    Sleep(PAUSE);
}

void OnStart()
{
  string Settings[] = {"[Tester]\n" +
                       "Expert=Input_String_Example_Alternative.ex5\n" +
                       "Symbol=EURUSD\n" +
                       "Period=M1\n" +
                       "Optimization=2\n" +
                       "Model=4\n" +
                       "FromDate=2023.01.01\n" +
                       "ToDate=2024.01.01\n" +
                       "ForwardMode=0\n" +
                       "Deposit=1000000000\n" +
                       "Currency=USD\n" +
                       "ProfitInPips=1\n" +
                       "Leverage=100\n" +
                       "ExecutionMode=0\n" +
                       "OptimizationCriterion=6\n" +
                       "[TesterInputs]\n" +
                       "inAmount=1||1||1||10||N\n" +
                       "inCount=2||2||1||20||N\n" +
                       "inPeriod=3||3||1||30||N\n" +
                       "inKoef=4.56||4.56||0.456000||45.600000||N\n" +
                       "inLog=7.89||7.89||0.789000||78.900000||N\n" +
                       "inFlag=true||false||0||true||N"
                      };

  for (uint i = ArraySize(Settings); (bool)i--;)
    Run(Settings[i]);
}

Les paramètres du testeur sont sauvegardés via CTRL+C/V. Vous pouvez les sauvegarder dans des fichiers séparés, puis remplir le tableau Settings[] dans la source ci-dessus avec des données provenant de ces fichiers.

 

Existe-t-il un moyen simple de transformer les données en tableau ? J'ai besoin d'ajouter 20 fichiers set, chacun de 108 lignes, donc 2160 lignes à ajouter " " + manuellement pour en faire un tableau ?

Le chargement des fichiers set personnellement serait mon option préférée, "D:/\MT5Tester2\MQL5\Profiles\Tester\MTester\MT5 v1.14 bat XU BB+ENV+RSI.set" etc etc mais je ne suis qu'un simple mortel et je ne sais pas comment coder ce genre de choses. Votre EA est très cool mais c'est pas vrai :D

#include <fxsaber\MultiTester\MTTester.mqh>    // https://www.mql5.com/fr/code/26132

#define _CS(A) ((!IsStopped()) && (A))
#define  PAUSE 200

void Run( const string Settings )
{
  while (_CS(!MTTESTER::IsReady()))
    Sleep(PAUSE);

  MTTESTER::CloseNotChart();
    
  if (_CS(MTTESTER::SetSettings2(Settings)))
    MTTESTER::ClickStart(false);

  while (_CS(!MTTESTER::IsReady()))
    Sleep(PAUSE);
}

void OnStart()
{
  string Settings[] = {[Tester]
                        Expert=MT5 White Rabbit v1.14.ex5
                        Symbol=XAUUSD
                        Period=M5
                        Optimization=2
                        Model=4
                        FromDate=2023.02.01
                        ToDate=2024.10.01
                        ForwardMode=0
                        Deposit=20000
                        Currency=USD
                        ProfitInPips=0
                        Leverage=100
                        ExecutionMode=200
                        OptimizationCriterion=6
                        [TesterInputs]
                        OnTester=------------ On Tester ------------
                        MinTrades=60||120||1||1200||N
                        MaxEquityDrawdown=3.0||20.0||2.000000||200.000000||N
                        CustomMax=------------ Custom Max ------------
                        EA_Expires=2024.12.25
                        Enable_Buy=true||false||0||true||N
                        Enable_Sell=true||false||0||true||N
                        TRADE_TIMES=------------ TIME SETTINGS ------------
                        StartTime_1=1||1||3||10||N
                        Stop_Time_1=9||9||4||21||Y
                        Monday=true||false||0||true||N
                        Tuesday=true||false||0||true||N
                        Wednesday=true||false||0||true||N
                        Thursday=true||false||0||true||N
                        Friday=false||false||0||true||Y
                        Weekend=false||false||0||true||N

                        // ensemble suivant
                        [Tester]
                        Expert=MT5 White Rabbit v1.14.ex5
                        Symbol=XAUUSD
                        Period=M5
                        Optimization=2
                        Model=4
                        FromDate=2023.02.01
                        ToDate=2024.10.01
                        ForwardMode=0
                        Deposit=20000
                        Currency=USD
                        ProfitInPips=0
                        Leverage=100
                        ExecutionMode=200
                        OptimizationCriterion=6
                        [TesterInputs]
                        OnTester=------------ On Tester ------------
                        MinTrades=60||120||1||1200||N
                        MaxEquityDrawdown=3||20.0||2.000000||200.000000||N
                        CustomMax=------------ Custom Max ------------
MultiTester
MultiTester
  • www.mql5.com
Множественные прогоны/оптимизации в Тестере.