Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Où sont les changements dans le tableau ? Est-il redessiné ?
Oui, il redessine tout le temps.
en général sans pause le script a lancé 3 tests
2020.03.14 22:21:20.152 tst_T (EURUSD,H1) #1 : loops=1000 ms=360
2020.03.14 22:21:23.558 tst_T (EURUSD,H1) #2 : loops=10000 ms=3406
2020.03.14 22:21:59.366 tst_T (EURUSD,H1) #3 : loops=100000 ms=35812
1000 - 100 000 boucles et mises à jour des valeurs.... étonnamment, .Net + WinForm est tout à fait productif même pour des tâches aussi obscures, rien ne traîne, même sur mon ordinateur portable.
les chiffres de vitesse sont égaux, il s'avère que 22 valeurs doubles (double, double double[]) cast dans .dll et mise à jour complètement WinForms prend 0.3 ms
UPD : et maintenant vous pouvez voir qu'à cette vitesse de mise à jour la charge sur le CPU est présente.
Ça continue de se redessiner.
en général sans pause le script a lancé 3 tests
2020.03.14 22:21:20.152 tst_T (EURUSD,H1) # 1 : loops=1000 ms=360
2020.03.14 22:21:23.558 tst_T (EURUSD,H1) #2 : loops=10000 ms=3406
2020.03.14 22:21:59.366 tst_T (EURUSD,H1) #3 : loops=100000 ms=35812
1000 - 100 000 boucles et mises à jour des valeurs.... étonnamment, .Net + WinForm est tout à fait productif même pour des tâches aussi obscures, rien ne traîne, même sur mon ordinateur portable.
les chiffres de vitesse sont égaux, il s'avère que 22 valeurs doubles (double, double double[]) cast dans .dll et mise à jour complètement WinForms prend 0.3 ms
UPD : maintenant vous pouvez voir qu'une telle vitesse de mise à jour charge le CPU.
Je dois écrire à la société microsoft.))
Ils ont une plus grande charge de mises à jour de tables que moi. Mettez le rafraîchissement toutes les 16ms.
ZS. Construire une table équivalente sur le sharpe. Intéressant de comparer la charge.
Je dois écrire à la société micro-soft.))
Ils ont une charge de mise à jour des tables plus lourde que la mienne. Réglez-le pour qu'il se rafraîchisse toutes les 16 ms.
ZS. Construire une table équivalente sur le sharpe. Intéressant de comparer la charge.
Écrire, mais essayer 1 million de fois de rafraîchir la table, lors de l'échange avec Net il a fallu
2020.03.14 23:22:24.039 tst_T (EURUSD,H1) #4 : loops=1000000 ms=322531
la mise à jour est inférieure à 16 ms chez moi - j'ai écrit plus de 0,3 ms
Mais notez qu'il s'agit d'un formulaire (fenêtre) complètement indépendant, qui reçoit tous les événements Win, et je voulais donc le tester - je me demandais si le .Net ne se bloquait pas sur un tel échange et n'était pas à la traîne.
ZS : demain peut-être sur le PC pour vérifier ce script il ya plus puissant que le processeur de l'ordinateur portable, au moins le testeur (optimiseur) est presque 3 fois plus rapide que sur un ordinateur portable, bien que cela n'a aucun sens - en cours d'exécution .Net est très, très bon
écrire, mais essayer 1 million de fois de mettre à jour la table, lors de l'échange avec Net il a fallu
2020.03.14 23:22:24.039 tst_T (EURUSD,H1) #4 : loops=1000000 ms=322531
Mais notez que c'est un formulaire (fenêtre) complètement indépendant, il reçoit tous les événements Win, en général, je voulais le tester - il était intéressant de savoir si Net se figeait à un tel échange et si tout est décalé
SZS : demain peut-être sur le PC pour vérifier ce script il ya plus puissant que le processeur de l'ordinateur portable, au moins le testeur (l'optimiseur) est presque 3 fois plus rapide que sur un ordinateur portable, bien qu'il n'y ait pas de point - en cours d'exécution .Net est très, très bon
Et pourquoi le mettre à jour un million de fois ? Il serait plus économique de mettre à jour la table en temps réel à 16 ms. Le reste est inutile car le modèle d'événement n'est pas plus rapide. Il s'agit de la charge de redécoupage.
Pourquoi le mettre à jour un million de fois ? Il serait plus économique pour nous de mettre à jour la table en temps réel à 16ms. Le reste est inutile car le modèle d'événement n'est pas plus rapide. Nous parlons de la charge de redécoupage.
Il y a donc beaucoup d'objectifs à atteindre.
ZS : mettez la pause à 16 ms, eh bien, le processeur au pic n'est qu'à 1,5% de la charge, voilà qui rattrape le moment, et remarquez le processeur de l'ordinateur portable !
Je ne suis pas intéressé par les arguments, je voulais juste vérifier les capacités de MQL5 + .Net - tout fonctionne très bien !
alors il y a un objectif à atteindre.
SZY : mettez une pause à 16 ms, le processeur n'est qu'à 1,5% de la charge au pic, voici le moment, et notez le processeur de l'ordinateur portable !
Il était intéressant de vérifier les capacités de MQL5 + .Net - tout fonctionne très bien !
Et donc nous ne l'avons pas vérifié. C'est-à-dire que nous ne les avons pas comparés. J'ai créé deux tableaux analogues - en MCL et Sharp et j'ai regardé quelle charge est donnée par chacun d'entre eux lors du redessin de leurs cellules à 16 msec. Sur MKL, j'ai fourni un tableau. Maintenant, nous avons besoin de la même chose sur Sharpe. Et alors, il sera clair qui est en tête.
Je dois ajouter que la table Sharpe doit être connectée à MT5 via une dll et ensuite comparer.
Donc nous n'avons pas vérifié. C'est-à-dire que nous n'avons pas comparé. Nous devons créer deux tableaux similaires - sur MKL et sur Sharp et voir quelle charge chacun d'eux donne lors du redessin de ses cellules à 16ms. Sur MKL, j'ai fourni un tableau. Maintenant, nous avons besoin de la même chose sur Sharpe. Et alors, il sera clair qui est en tête.
J'ajouterai qu'il faut connecter la table sharp à MT5 via une dll et ensuite comparer.
Je n'y crois pas - je sais que rien ne changera, mais 0,1ms sera ajouté si vous ouvrez 50-100 valeurs et les remplissez dans le tableau à 3 colonnes.
vous pouvez considérer que vous avez vaincu Microsoft et son .Net )))).
ZS : Je peux affirmer que le code sur .Net m'a pris 15 minutes à écrire, environ 50 lignes au total, et qu'il fonctionne rapidement, sans aucun décalage.)
Je n'y crois pas - je sais que rien ne changera, eh bien, 0,1 ms sera ajouté lorsque vous enverrez 50-100 valeurs et les remplirez dans le tableau en 3 colonnes.
vous pouvez considérer que vous avez vaincu Microsoft et son .Net )))).
SZZY : Je suis à l'aise, il m'a fallu 15 minutes pour écrire le code .Net, environ 50 lignes au total, il fonctionne rapidement, sans aucun décalage ;)
Il n'y a pas de victoire sans combat...))
Je suis prêt à parier que bientôt je battrai le concepteur de GUI de Sharp en vitesse de construction de GUI. A pas de géant.
Je l'ai vérifié en ce moment. Il n'est pas conçu pour les constructions rapides. Dommage pour lui...)))
Je viens d'y jeter un coup d'oeil. Il n'est pas ancré dans la construction de la vitesse. Pitié pour lui...))
Eh bien... vous êtes un lamer Peter - et un rare en cela )))))
Sharp est très proche de C++, la différence de productivité, eh bien, maximum 5% et alors il peut n'y avoir aucune différence de productivité - il faut beaucoup de temps pour écrire des tâches simples sur C++, sur Net toutes les tâches primitives sont faites dans une heure - maximum jour ;)
J'étais sur le point d'être occupé, mais j'ai ajouté 2 colonnes supplémentaires en trois clics et suis passé de MQL5 à .dll 3x50 = 150 double (3 tableaux de 50)
mesuré la vitesse maintenant - et gardez à l'esprit que les barres de défilement nécessitent maintenant des ressources - WinForm complètement mis à jour
Voici le même test avant 100 000 mises à jour
2020.03.15 00:12:21.812 tst_T (EURUSD,H1) no1 : loops=1000 ms=1610
2020.03.15 00:12:38.382 tst_T (EURUSD,H1) no.2 : loops=10000 ms=16562
2020.03.15 00:15:19.642 tst_T (EURUSD,H1) #3 : loops=100000 ms=161250
Par exemple, WinForm sur .Net dans la fenêtre avec des barres de défilement et un tableau de 153 cellules sur mon ordinateur portable se met à jour en 1,6 ms.