Mon approche. Le noyau est le moteur. - page 159

 
Artyom Trishkin:

Je l'ai fait dans les cinq via la minuterie du testeur. Le simple fait de l'utiliser (et c'est un multitimer à millisecondes) a provoqué un sérieux ralentissement du testeur. Il suffit donc de refuser le timer dans le visualiseur - c'est la même chose pour travailler sur les ticks. Création de deux modèles - par timer et par événements de drapeaux via OnTick(). Par minuterie en temps réel, par tics - dans le moteur de rendu.

Lies - trois modèles - également via OnChartEvent() - uniquement en temps réel là aussi.

A également fonctionné avec OnTimer(), pour le testeur, mais je l'ai lu :

Strategy Tester utilise un intervalle minimum de 1000 millisecondes.

https://www.mql5.com/ru/docs/event_handlers/ontimer

Question, est-il possible d'obtenir une milliseconde dans le testeur, et comment ?

Документация по MQL5: Обработка событий / OnTimer
Документация по MQL5: Обработка событий / OnTimer
  • www.mql5.com
//|                                               OnTimer_Sample.mq5 | //|                        Copyright 2018, MetaQuotes Software Corp. | //|                                             https://www.mql5.com | //| Expert initialization function                                   |...
 
jdjahfkahjf:

Je travaillais également sur OnTimer(), pour le testeur, mais j'ai lu ceci :

Le testeur de stratégie utilise un intervalle minimum de 1000 millisecondes.

https://www.mql5.com/ru/docs/event_handlers/ontimer

Question, est-il possible d'obtenir des millisecondes dans le testeur, et comment ?

seulement en générant un symbole personnalisé et des ticks vers celui-ci et en travaillant sur l'arrivée du tick

Malheureusement, il n'y a pas beaucoup de variantes ici. MT5 a les événements spécifiques OnTick() , OnTimer().... disponibles pour le traitement. et seulement eux peuvent être traités, de plus l'événement OnChartEvent() n'est pas généré dans le testeur ; en général, comme toujours il est nécessaire d'écrire 2 versions de code, une pour le testeur, une autre pour le commerce (ou diviser le code en une version pour le travail dans le testeur et pour le travail sur un compte commercial)


HH : si je ne me trompe pas, alors 1 milliseconde ne peut pas être générée, le timer du système Windows ne donne pas cette précision.

 
Igor Makanu:

uniquement par la génération d'un symbole personnalisé et de ticks pour celui-ci et le travail sur l'arrivée du tick

Malheureusement, il n'y a pas beaucoup de variantes ici, dans MT5 des événements spécifiques OnTick() , OnTimer().... sont disponibles pour le traitement. et seulement eux peuvent être traités, de plus l'événement OnChartEvent() n'est pas généré dans le testeur ; en général, comme toujours il est nécessaire d'écrire 2 versions de code, une pour le testeur, une autre pour le commerce (ou diviser le code en une version pour le travail dans le testeur et pour le travail sur un compte commercial)


HH : si je ne me trompe pas, alors 1 milliseconde ne peut pas être générée, le timer du système Windows ne donne pas cette précision.

Je vois, mais ce que vous dites est déjà compris. Merci quand même.

Tant mieux pour MT5, même si elle est en "bêta" depuis tant d'années.

Mais comme ils ont juré ici qu'il n'y aura pas de version hedge, j'espère qu'il n'y aura pas non plus d'horizons temporels inférieurs à la minute, et encore moins de ticks.

 

Quel est l'intérêt de développer la direction C# ? C'est une impasse de toute façon. Il n'y a aucun moyen de le mettre sur le marché. Mais pour l'utiliser au détriment des autres, il y a beaucoup de possibilités (s'ils commencent à le distribuer en contournant le marché). Et qui sera en mesure de la contrôler ? Pourquoi le feraient-ils ?

Mais même dans ce cas, il est peu probable que beaucoup en aient besoin. J'ai fait en sorte que la connexion à leur interface graphique soit si simple et facile que seuls les gourmets de la programmation s'embêteront avec une autre connexion.

Les possibilités du moteur ne cesseront de croître et son utilisation sera de plus en plus facile. C# n'a aucune chance de m'arrêter)).

C'est drôle comme certaines personnes pensent que c'est un désastre pour moi). C'est un non-sens qui n'apportera rien à personne. Mais, laissez-les essayer. Je me demande ce qui va marcher.


Les fonctionnalités offertes par C# importent peu, ce qui compte c'est de savoir qui peut les utiliser. La plupart des utilisateurs (codeurs) sont trop faibles pour créer quelque chose de sérieux par eux-mêmes. Vous devez le créer pour eux et pour elles. C'est ce que je fais. Au contraire, la direction C Sharp nous éloigne de la simplicité et nous entraîne dans le monde de la programmation compliquée. Par conséquent, il ne gagnera pas une popularité de masse.

 
Реter Konow:

Quel est l'intérêt de développer la direction C# ? C'est une impasse de toute façon.

...

Merci, j'ai bien ri avant d'aller me coucher.

 
Dmitry Fedoseev:

Merci, j'ai bien ri avant d'aller me coucher.

Je vais aller dormir quelques heures aussi.

 
Retrog Konow2019.01.15 16:25 initialisation du tableau sont lentes à l'intérieur du bloc de dessin. Si je commente la boucle, cela ralentit ResourceReadImage, si je commente ResourceReadImage, cela ralentit la boucle. De plus, séparément, ils chargent le processeur de 50%, mais ensemble, ils le chargent de 40%. C'est absurde...

----------------------------------------------

Approximativement, c'est à ça que ça ressemble.

Généralement, il s'agit d'une demande d'envoi ou de réception d'informations par l'intermédiaire d'un port ou d'un autre.

Une permission et une transaction. Par les normes (règles) de l'environnement d'exploitation. Avez-vous fait tout cela avec Metacquotes ?

 

Honnêtement, j'aimerais réaliser cette solution avec C#. Je l'intégrerais rapidement et facilement dans mon moteur. Là, il fonctionnerait, donnant à l'utilisateur le choix de se connecter via mon interface graphique, ou la sienne depuis Windows.

Ça va être cool. Vasily, écris un article bientôt.

Salutations aux négatifs. :)

 

Алексей Тарабанов:

....

C'est à peu près ce à quoi ça ressemble.

Généralement, une demande d'envoi/réception d'informations par un port ou un autre.

Résolution et - transaction. Par les normes (règles) de l'environnement d'exploitation. Avez-vous fait tout cela avec Metacquotes ?

Non, c'est une question de communication interne via les ressources. J'ai réussi à réduire la charge de moitié en optimisant mon système de dessin. Ça ne ralentit pas maintenant.

 
Réalisation d'un test de trafic de données sur de grandes tables. Les limites des possibilités étaient intéressantes. À ma grande surprise, elle ne leur est pas encore parvenue. Je vais maintenant afficher le résultat....
Raison: