Bibliothèque: SingleTesterCache - page 2

 
Edgar Akhmadeev:

Je ne sais pas comment cela se passe sur les blogs, l'apparition d'un nouveau commentaire (s'il ne s'agit pas d'une réponse) est-elle signalée d'une manière ou d'une autre ? Ou vaut-il mieux poster dans un des fils de discussion du forum où les nouveaux commentaires sont visibles ?

L'auteur d'un article de blog reçoit un message personnel lorsqu'un nouveau commentaire apparaît. Les lecteurs ne sont malheureusement pas avertis de quelque manière que ce soit.

Pourquoi ne pas l'avoir publié dans le KB ? Ce serait plus pratique.

Parce qu'il utilise sept bibliothèques (16 fichiers mqh) de la base de données. La KB ne permet pas de publier uniquement des mq5 sans ces bibliothèques. Il est également interdit de publier EX5 dans la base de données.

Alors, où écrire pour obtenir une réponse rapide ?

Sur le forum. Le sujet concerne toujours le tst.

 

TesterPortfolio. Tout fonctionne. Il est arrivé juste au moment où j'en avais besoin. La même chose s'est produite avec MultiTester. Merci beaucoup.

Voici ce que je propose

input string Portfolio = "Expert1.EURUSD|1.0,Expert2.AUDUSD|0.5" ;

de filtrer les fichiers Expert1.EURUSD.M1.*_*.*.*.*.tst et de sélectionner le plus récent et de définir le poids pour chaque instrument. Et il n'y aura pas besoin de travail manuel pour copier les fichiers tst nécessaires. Sélectionnez les fichiers via WinAPI directement à partir de Tester\cache.

Et si vous connaissez le principe de dénomination des fichiers, pour trouver le dernier fichier en une seule fois, vous pouvez établir un lien avec le cache et travailler avec les outils intégrés. Comment se termine le nom, par exemple "*.4.EDE6CD7716E7B1FAB6207685F7921E65.tst" ? Mais c'est peu probable.

 
Edgar Akhmadeev:

Il semblerait que

Je l'ai fait pour moi, donc une telle fonctionnalité ne me conviendrait pas. Il s'agit d'un test de stylo. Le code source n'est pas compliqué, donc beaucoup de gens pourront ajouter leur propre fonctionnalité.

Et si vous connaissez le principe du nommage des fichiers pour trouver immédiatement le dernier fichier, vous pouvez créer un lien vers le cache et travailler avec les outils intégrés. Comment la fin du nom est-elle formée, comme "*.4.EDE6CD7716E7B1FAB6207685F7921E65.tst" ? Mais c'est peu probable.

Je n'ai pas analysé la façon dont le nom du fichier est formé. La lecture du fichier le plus récent était dans l'exemple ci-dessus.


Si vous avez un CT à la peau dure, 99 % de vos besoins seront couverts par un produit tiers gratuit, dont une capture d'écran figure dans le blog (je viens de le remarquer aujourd'hui. Il s'avère que c'est une chose bien connue.).

Pour ma part, j'en ai besoin pour un réglage très fin. Je vois les choses de la manière suivante.

  1. Avec MultiTester, beaucoup d'optimisations sont faites avec une sélection de bonnes passes (des centaines de pièces sont la norme).
  2. Le noyau TesterPortfolio crée des séries d'actions correspondantes pour chaque passe - c'est là que réside toute la nouveauté.
  3. Les coefficients de pondération optimaux pour ces lignes sont trouvés à l'aide de méthodes mathématiques.
  4. Un portefeuille optimal est constitué d'un petit nombre de passes et TesterPortfolio est exécuté pour celles-ci.
  5. En conséquence, nous parions sur le portefeuille réel de TC.

Je note une fois de plus que les sources des conseillers en trading ne sont pas nécessaires. Vous pouvez créer des portefeuilles exclusivement à partir de produits du marché. Créer des solutions plus solides que les auteurs de ces produits de marché. Et vous n'avez rien à payer.


ZЫ Les étapes 2 à 4 n'ont rien à voir avec la recherche d'un TS rentable. Seule la première étape concerne indirectement ce sujet. C'est pourquoi il est logique pour de nombreuses personnes d'effectuer ces étapes sur Market Advisors, car les auteurs y ont déjà trouvé quelque chose.

 
fxsaber:

Je l'ai fait pour moi, donc une telle fonctionnalité ne me conviendrait pas. Il s'agit d'un test de stylo. Le code source n'est pas compliqué, de nombreuses personnes pourront donc ajouter leurs propres fonctionnalités.

Je n'ai pas analysé la façon dont le nom du fichier est formé. La lecture du fichier le plus récent était dans l'exemple ci-dessus.

Je le ferai, bien sûr. En attendant, je vais finaliser toutes les devises que j'ai sélectionnées. Pour l'instant, il s'agit d'un démarrage rapide pour les tests.

fxsaber:

J'en ai besoin pour un réglage très fin. Je vois les choses ainsi.

  1. Beaucoup d'optimisations sont faites via MultiTester avec une sélection de bonnes passes (des centaines de pièces sont la norme).
  2. Le noyau TesterPortfolio crée des séries d'actions correspondantes pour chaque passe - c'est là que réside toute la nouveauté.
  3. Les coefficients de pondération optimaux pour ces lignes sont déterminés à l'aide de méthodes mathématiques.
  4. Un portefeuille optimal est constitué d'un petit nombre de passes et TesterPortfolio est exécuté pour celles-ci.
  5. En conséquence, nous parions sur le portefeuille réel du TS.

Ma méthodologie est la suivante :

  • Mon multi-test (basé sur votre idée de clicker) exécute des optimisations génétiques sur OHLC jusqu'à ce qu'il cesse d'obtenir des améliorations par rapport aux N dernières tentatives. Cela représente 10 à 20 optimisations génétiques.
  • Il passe ensuite à des optimisations lentes sur des groupes de paramètres connexes, sur une plage étroite.
  • Puis optimisation tic-tac par tic-tac, dans une fourchette encore plus étroite.
  • Inclut le calcul du lot à partir de la balance et l'optimisation du risque. Ce sera le poids dans le portefeuille.
  • J'en suis là pour l'instant.
  • Et la suite du travail - nous obtenons des graphiques d'actions sur des instruments non optimisés en fonction des pondérations, nous créons un portefeuille et nous optimisons le degré de risque global.
 
Les conseillers en freinage viennent de gagner en facilité.

Ускорение бэктеста. Например, имеете советник, который очень долго делает одиночный проход (автооптимизатор внутри или другой тормоз). В таком случае прогнать его на разных интервалах или посмотреть визуализацию - большая проблема. TesterPortfolio же делает его прогон очень быстрым.

 

Argumenté sur le thème de la diversification.

Nous allons évaluer l'influence du portefeuille de TS sur le drawdown maximum.


J'ai pris quatre TS.


Et je les ai combinés en un seul portefeuille avec les mêmes pondérations.


Ce programme tiers ne peut calculer le drawdown que par solde. Par conséquent, appliquons TesterPortfolio pour estimer précisément le drawdown (et d'autres indicateurs).

EA MaxDD_Balance MaxDDD_Equity
1 909 1117
2 981 1173
3 1076 1160
4 860 1086
1+2+3+4 875 961

Le tableau montre clairement que le drawdown du portefeuille de CT s'est effondré, tant en termes d'équilibre que d'équité.


Utilisez des portefeuilles de CT, même si le CT est unique !

 
C'est vrai. C'est pourquoi j'optimise le conseiller expert sur plusieurs instruments. Je l'utilise sur au moins six instruments. Sept majeurs. Je n'ai pas encore atteint les cross, je ne sais pas s'ils sont rentables.
Il faut également tenir compte de la corrélation des devises, car tous les ensembles n'améliorent pas le portefeuille.
 
Que sont les champs price_open et price_close dans une offre ? Selon l'idée, il ne peut y avoir qu'un seul prix dans une transaction, et c'est exactement ce que montre le testeur. À en juger par la comparaison, price_open est toujours le prix d'une transaction, et price_close est le prix d'une transaction inverse (c'est-à-dire l'ouverture d'une position (in) à la vue d'une transaction out). Si c'est le cas, pourquoi des noms aussi confus ?
 
Stanislav Korotky:
Que sont les champs price_open et price_close dans une offre ? Selon l'idée, il ne peut y avoir qu'un seul prix dans une transaction, et c'est exactement ce que montre le testeur. À en juger par la comparaison, price_open est toujours le prix d'une transaction, et price_close est le prix d'une transaction inverse (c'est-à-dire l'ouverture d'une position (in) à la vue d'une transaction out). Si c'est vrai, pourquoi ces noms qui prêtent à confusion ?

C'est le cas. Les noms des champs proviennent des développeurs et n'ont pas été modifiés.

 
Fonction
 Print

n'écrit pas de messages dans les journaux à partir de 2 exemples sur la page avec la bibliothèque.

Pas à pas :

1. un Expert Advisor est lancé dans le testeur

2. le script 20 auquel il est spécifié que " les solutions DLL ne peuvent pas être placées dans la base de données, c'est pourquoi vous trouverez ci-dessous le code source d'un autre script, qui n'est pas inclus dans la base de données".

3. Le graphique est affiché en équilibre, le fichier set est créé mais rien n'est écrit dans les logs (statistiques).


P.S. La correction dans n'importe quel script ne produit pas d'information sur la commande Print, même une chaîne de texte ou un nombre.