L'avenir de MQL5 est MQL5+ ou même MQL6 - page 7

 
Slawa:

Je vais vous confier un grand secret. À la vitesse maximale du test (32), il n'y a pas de décalage. La vitesse maximale du vice (31) a ::Sleep(0). En intervertissant simplement les fils, on obtient cette différence

Mais je ne veux pas utiliser de boucles vides pour le délai - les autres utilisateurs vont se fâcher : "Putain, pourquoi j'ai une charge CPU de 100% pour rien !"

Si Sleep() n'est pas appelé à chaque tick ?
 
Dmitry Fedoseev:
Si Sleep() n'est pas appelé à chaque tick ?
Il y a un déséquilibre évident dans la visualisation.
 
MT4 :
  1. Lors de la sélection de l''Algorithme génétique' lors de l'optimisation, j'aimerais spécifier le nombre minimum de 'Total trades' afin d'éviter un cycle dans lequel l'optimiseur choisit la variante avec de moins en moins de 'Total trades' tout en sélectionnant la plus grande valeur du 'Paramètre optimisable'. Et la possibilité de calculer automatiquement la valeur du 'Nombre minimum de 'Total trades'' en fonction du nombre de jours utilisés lors de l'optimisation.
    Par exemple : L'optimisation est faite du 01.01.2015 au 31.12.2015 = 259 jours d'optimisation avec le coefficient "1" égal à 259 (montant minimum de "Total trades") ou avec le coefficient "0.5" égal à ~129 (montant minimum de "Total trades").
  2. Possibilité de tester dans l'ordre décroissant des jours utilisés pour le test (exemple : du 01.01.2015 au 31.12.2015, étape suivante du 02.01.2015 au 12.12.2015.31, et ainsi de suite) au nom de l'identification des endroits où le conseiller expert réussit le test en faisant correspondre avec succès le début du test, "s'asseyant" sur le drawdown de la "marge libre" aux dépens du solde accru de la négociation précédente lorsque le conseiller expert a réussi à faire correspondre l'entrée et la sortie. Ou la possibilité de tester avec le dépôt initial seulement, sans utiliser la balance.
 
Une contrepartie àIntelliSense doit être introduite.
 
lilita bogachkova:
MT4 :
  1. Lors de la sélection de l'algorithme génétique pendant l'optimisation, je souhaite spécifier le nombre minimum de transactions totales afin d'éviter le cycle dans lequel l'optimiseur sélectionne de moins en moins de transactions totales tout en sélectionnant la plus grande valeur du paramètre optimisable, et la possibilité de calculer automatiquement la valeur du nombre minimum de transactions totales en fonction du nombre de jours utilisés dans l'optimisation.
    Par exemple : L'optimisation est faite du 01.01.2015 au 31.12.2015 = 259 jours d'optimisation avec le coefficient "1" égal à 259 (montant minimum de "Total trades") ou avec le coefficient "0.5" égal à ~129 (montant minimum de "Total trades").
  2. Possibilité de tester dans l'ordre décroissant des jours utilisés pour le test (exemple : du 01.01.2015 au 31.12.2015, étape suivante du 02.01.2015 au 12.12.2015.31, et ainsi de suite) au nom de l'identification des endroits où le conseiller expert réussit le test en faisant correspondre avec succès le début du test, "s'asseoir" sur le tirage de la "marge libre" en raison de l'augmentation du solde de la négociation précédente lorsque le conseiller expert a réussi à faire correspondre l'entrée et la sortie. Ou la possibilité d'effectuer des tests avec le dépôt initial seulement, sans utiliser la balance.

+1

Tous les critères actuels de l'optimiseur génétique sont "non robustes", c'est-à-dire que le résultat est trop sur-optimisé et non rentable dans le fronttest. Dans les EA dont je dispose, je résous ces problèmes avec mon propre code, en vérifiant le nombre minimum de transactions par semaine, etc. Dans les conseillers experts du marché, je fais simplement le test le plus complet possible pour tous les paramètres, puis je traite les résultats dans Excel.

Beaucoup de problèmes seraient résolus si nous pouvions ajouter la possibilité d'écrire notre propre code pour ontester() de n'importe quel EA. Il n'aura probablement pas accès aux variables globales de l'EA, bien sûr, mais toutes les données de TesterStatistics() devraient être lisibles.


Je l'ai terminé plus tard :
C'est ce que je pensais, ce serait encore mieux si les scripts pouvaient appeler l'optimisation. Paramètres d'appel - date, nom de l'EA et ses propres paramètres, etc. Pleine fonctionnalité du testeur de stratégie habituel. A la fin du test, le script pourrait obtenir tous les résultats avec un accès complet à TesterStatistics() de chacun.

 
agvozdezkiy:

2. Faire des versions normales pour Mac et Lin, pour qu'il n'y ait pas de vinyles. Il y travaille de temps en temps.

Combien de pourcentages sont négociés sous leur égide ? 1% ou 1,5% ? Pas besoin de le répandre.

3. Permettre non seulement de "réparer" les EA avec des indicateurs, mais aussi de mettre à jour l'interface.

Je pense que la mise en œuvre de ce dernier point accélérera le développement de MT)).

Quelle interface dois-je mettre à jour pour mon trader ? Veuillez écrire plus clairement.

 
Slawa:

Je vais vous confier un grand secret. À la vitesse maximale du test (32), il n'y a pas de décalage. La vitesse maximale du vice (31) a ::Sleep(0). En intervertissant simplement les fils, on obtient cette différence

Mais je ne veux pas utiliser de boucles vides pour le délai - les autres utilisateurs vont se fâcher : "Putain, pourquoi j'ai une charge CPU de 100% pour rien !"

Cool ! Je n'aurais jamais pensé qu'il pouvait y avoir une telle différence.
 
Alexey Volchanskiy:
bien le rasoir d'occam, on se lave juste)
 
Dmitry Fedoseev:
Si Sleep() n'est pas appelé à chaque tick ?
Ou jouer avec les priorités des fils. Les valeurs prioritaires ne sont pas très importantes, mais c'est une option pour l'expérimentation. De plus, il peut être contrôlé en 5 minutes. Hey, une idée m'est venue à l'esprit maintenant de diminuer la priorité du terminal lui-même pour la période d'un test visuel ))))).