Développeurs. format de l'heure dans le terminal MT5 - page 2

 
Risk:

Ils vous remercieront, parce que votre morve était bonne dans MT4, mais je m'en fichais, l'important c'est le trading.

Au risque de vous donner un deuxième avertissement, arrêtez de débiter des grossièretés aux autres.

 

Mes amis, le plus important est que la précision à la milliseconde près n'est tout simplement pas possible - les délais sur l'internet sont plusieurs fois supérieurs. De plus, la minuterie ordinaire de l'ordinateur fonctionne toujours à une faible fréquence (si je ne me trompe pas, environ 1/18s), et il n'est pas facile d'obtenir une plus grande précision.

Et vous avez raison de dire qu'il n'y a pas besoin de millisecondes.

Je pense que le format datetime est plus que bon.

 
sergeev:

Vyacheslav, mais ce n'est pas vrai ;)

Je voulais contacter le support avec cette suggestion, mais je comprends que vous devrez créer un nouveau format de temps pour faire cela... et je réalise que c'est une sorte de déception de faire ça.

peut-être est-il vraiment temps que le terminal donne de telles informations sur les commandes ?



Exactement. Nous devons créer (pas un nouveau format de temps) une nouvelle façon de stocker le temps. Et le répartir sur tous nos composants. Jusqu'aux séries chronologiques. Cela en vaut-il la peine ? Définitivement non.

C'est ici que l'information à la milliseconde est la plus vitale. Mais ça n'en vaut pas la peine non plus. En effet, ces informations perdent complètement leur pertinence lorsqu'elles passent dans les fils.

PS Stanislav, au fait.

Документация по MQL5: Основы языка / Типы данных / Целые типы / Тип datetime
Документация по MQL5: Основы языка / Типы данных / Целые типы / Тип datetime
  • www.mql5.com
Основы языка / Типы данных / Целые типы / Тип datetime - Документация по MQL5
 
stringo:

Exactement. Nous devons créer (pas un nouveau format de temps) une nouvelle façon de stocker le temps. Et le répartir sur tous nos composants. Jusqu'aux séries chronologiques. Cela en vaut-il la peine ? Définitivement non.

oui, le processus prend beaucoup de temps

Les informations concernant les millisecondes sont plus viables. Mais ça ne vaut pas le coup non plus. En effet, ces informations perdent complètement leur pertinence lorsqu'elles passent par des fils.

L'information n'est pas aussi importante pour la prise de décision instantanée que pour la collecte de statistiques, c'est-à-dire que ce n'est pas pour la pertinence, mais pour rétablir la chaîne des événements et, comme je l'ai dit, pour collecter des statistiques pour le fournisseur ou le serveur.

Après tout, vous avez presque tout préparé pour donner au négociant la propriété de l'ordre et de la transaction en ms. Ils appartiennent à OrderGetInteger / DealGetInteger. avec ORDER_TIME_MSC / DEAL_TIME_MSC


PS Stanislav, au fait.

Compris, c'est juste Slawa dans votre profil.
 
papaklass:

Renat a dit que MT5 est connecté à Plaza et vous dites pourquoi des millisecondes.

Quelle est la fonction asynchrone de l'envoi d'ordres de transaction pour ensuite ? Pourquoi l'avez-vous fait ?

MT5 est une plateforme boursière et les traders ont besoin de millisecondes. :)

Donc, c'est ça. En quoi les millisecondes "vous aident-elles à abattre des arbres" ? (ц)

Vous demandez, vous demandez - tous sont silencieux.

 
stringo:

C'est donc ça. En quoi les millisecondes "vous aident-elles à abattre des arbres" ? (ц)

Vous demandez, vous demandez - tout le monde ne dit rien.

Je vous l'ai dit - il n'y a pas moyen de faire du commerce. parce qu'il est clair qu'entre le moment où une commande est passée et l'arrivée des transactions sur celle-ci, des dizaines de ms passent.

Quant à la collecte ultérieure de statistiques, comment le fournisseur traite les commandes, peut-être a-t-il des bugs, peut-être le serveur ralentit-il ou l'Internet.

Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
 
stringo:

C'est donc ça. Comment les millisecondes peuvent-elles "vous aider à abattre des arbres" ? (ц)

Vous demandez, vous demandez - tout le monde se tait.

Ils aident tout autant que les secondes pour une minute de TF. Et lorsque les secondes ne suffisent plus, nous optons pour les millisecondes :)

 

Je négocie sur MT4. Comme vous le savez, le temps est similaire à celui de MT5. Gérer les pings et autres bêtises à la milliseconde. Je me demandais si je pouvais utiliser des données en millisecondes dans MT4. Et, curieusement, a répondu par la négative. Oui, les données en millisecondes sont parfois utiles en analyse, par exemple, OrderOpenTime. Mais en pratique, je n'en ai eu besoin que très rarement. Je dirais même que ce n'est pas une nécessité mais un désir d'analyser une nuance de trading dont le profit ne dépendait pas de toute façon.

Bien sûr, les millisecondes sont surtout nécessaires pour les ticks. Il permet d'analyser les petites fluctuations de prix en temps réel. Mais elle est encore plus utile pour l'étude de l'histoire : les systèmes multidevises ne peuvent être correctement analysés que sur un historique de l'ordre de la milliseconde. Par exemple, il est impossible de construire un EURGBP synthétique sans un tel historique. Mais il y a plusieurs problèmes :

  • Dans MT4/MT5, il est impossible de collecter des ticks sans saut.
  • L'infrastructure de recherche ne dispose pas des possibilités d'historique personnalisé et de testeur de tics.
  • En temps réel, les plateformes elles-mêmes donnent des décalages assez forts lors du trading (je n'ai pas étudié l'asynchronie dans MT5, je ne vais pas mentir).

C'est-à-dire que les millisecondes sont nécessaires pour ceux qui disposent d'une bonne infrastructure de recherche. En règle générale, il s'agit de leur propre solution. En l'état actuel des choses, le problème de l'obtention de tics avec des millisecondes et d'autres informations est également résolu par leurs propres moyens.

De plus, si l'on regarde qui a réellement besoin de telles fonctionnalités, la question se pose de savoir s'il vaut vraiment la peine de créer des complexités à cause de cette possibilité, dont l'utilité est douteuse. Vous devez comprendre à qui sont destinés les MT4/MT5 : aux utilisateurs de masse. Ils n'ont pas vraiment besoin de ces millisecondes. Si quelqu'un en a vraiment besoin, il peut utiliser Stocksharp ou FDK.

En temps réel, même avec MT4, j'utilise des millisecondes, en l'émulant en quelque sorte par GetTickCount. Par exemple, en analysant les unités:

2012.09.14 21:21:15 3296(2)ms. 1898804512 BuyLimit = 1.31062 EURUSD Ticks = 2 ShiftAvg = 1.50 ShiftByTime = 0.33 VolumeByTime = 0.20 PriceByTime = 1.310623 FillTime = 21:21:15

Ou, par exemple, des cas plus complexes - des piles synthétiques à partir de symboles ou de différents flux. À ces fins, dans les limites des possibilités de MT4/MT5, une telle émulation est suffisante.

Pour résumer, je pense qu'il est inutile de donner des millisecondes dans MT5 en l'absence des éléments mentionnés ci-dessus.

P.S. J'ai aimé l'approche de FXCM. Ils ont un historique des tests et des tiques. Chacun est libre de tester ses stratégies sur l'historique régulier de l'OHLCV disponible. Mais si quelqu'un a besoin de l'historique des ticks et du testeur de tics, l'historique des tics n'est disponible que via l'API. Et un testeur de tique - seulement par le testeur SDK. C'est-à-dire que le calcul est que si une personne veut l'utiliser pas pour le plaisir, sa qualification doit être adéquate. En d'autres termes, il comprendra leur API (et fera du commerce par son intermédiaire) et le SDK.

 
Nous avons un champ de millisecondes réelles dans les commandes, nous pouvons le sortir dans MQL5.
 

Ici, je pense qu'une fraction de seconde aurait été utile.