Discussions sur le testeur de stratégie MT5 - page 10

 
Yuriy Zaytsev:

c'est ce dont je parle ! et c'est ce dont je parle!

Vasiliy, il est possible de concourir pour le dossier des 100 terminaux, c'est clair.

le fait que vous puissiez copier des transactions d'un terminal à un autre en utilisant le copieur est une chose différente.


La question est que le terminal lui-même (si c'est MT4) écrit les ticks dans le fichier ticks.raw ...

mais s'il essaie d'écrire 100 terminaux à la fois dans le fichier {TERMIN}\history\{broke}\tisks.raw - une erreur se produira

C'est ce que je ne pense pas qu'Andrei comprenne.


Je peux entendre le canapé théorique grincer sous Andrei à nouveau.

Ow !!!! Yuri ! S'il vous plaît, écoutez-moi !

Pensez-vous que le terminal MT est si stupide, et écrit par des gens si stupides, que plusieurs terminaux vont essayer d'écrire la même chose dans le même fichier ? !

Non ? Alors je dis non ! Le terminal MT est très bien écrit, il ne prend pas la liberté d'écrire la même chose dans un fichier si quelqu'un y écrit déjà ! Vous pouvez facilement vous en convaincre, faites enfin une expérience, assez de théories stériles ! C'est cette "intelligibilité" qui vous permet d'utiliser un dossier partagé pour plusieurs terminaux, tout fonctionne sans problème !!!!. Il s'agit simplement de faire de cette fonctionnalité (sélection d'un dossier partagé) une fonctionnalité standard.

 

Si nous parlons d'un testeur, toutes les bases de l'historique sont stockées de manière centralisée dans le dossier du testeur. Et tous les agents de test fonctionnant à partir de ce dossier lisent l'historique de la même base de données. Pendant que le premier agent synchronise l'historique, les autres agents, s'ils ont besoin du même historique, attendent.

Dans le testeur, l'accès partagé à la base de données de l'historique (et des ticks, aussi, d'ailleurs) se fait pour la raison même qu'il n'y a pas d'écriture (ou plutôt, l'écriture est ponctuelle lors de la synchronisation), et qu'il n'y a que la lecture

 
Slawa:

S'il s'agit d'un testeur, toutes les bases de l'historique sont stockées de manière centralisée dans le dossier du testeur. Et tous les agents de test fonctionnant à partir de ce dossier lisent l'historique de la même base de données. Pendant que le premier agent synchronise l'historique, les autres agents, s'ils ont besoin du même historique, attendent.

Dans le testeur, l'accès partagé à la base d'historique (et aux ticks aussi, d'ailleurs) est fait pour la raison même qu'il n'y a pas d'écriture (ou plutôt, l'écriture est ponctuelle lors de la synchronisation), mais il n'y a que de la lecture...

C'est ce que je vais dire à Andrei.

Vous devez envoyer 100 terminaux à un dossier - dans ce dossier, les ticks et les timeframes sont collectés.

et c'est ce qu'il ne semble pas comprendre !

 
Andrey Dik:

Ow !!!! Yuriiiiiiiiiiii ! Ecoutez-moi s'il vous plaît !

Pensez-vous que le terminal MT est si bête, et écrit par des gens si bêtes, que plusieurs terminaux vont essayer d'écrire la même chose dans un seul et même fichier ?

Non ? Alors je dis non ! Le terminal MT est très bien écrit, il ne prend pas la liberté d'écrire la même chose dans un fichier si quelqu'un y écrit déjà ! Vous pouvez facilement vous en convaincre, faites enfin une expérience, assez de théories stériles ! C'est cette "intelligibilité" qui vous permet d'utiliser un dossier partagé pour plusieurs terminaux, tout fonctionne sans problème !!!!. Il s'agit simplement de faire de cette fonctionnalité (sélection d'un dossier partagé) une fonctionnalité standard.

juste les plus intelligents, et c'est pourquoi ils ont

l'enregistrement est une chose unique.

C'est vous qui ne m'avez pas écouté depuis plusieurs posts et vous dites des bêtises théoriques.

(lisez où je vous dis - je me tape presque sur le crâne chauve - que vous ne pouvez pas écrire simultanément à partir de 100 terminaux) - ne soyez pas offensé - je suis gentil

Vous pouvez faire en sorte que cela fonctionne - dites simplement que le canapé était trop raide ou trop mou.

 
Slawa:

Dans le cas d'un testeur, toutes les bases de l'historique sont stockées de manière centralisée dans le dossier du testeur. Et tous les agents de test fonctionnant à partir de ce dossier lisent l'historique de la même base de données. Pendant que le premier agent synchronise l'historique, les autres agents, s'ils ont besoin du même historique, attendent.

Dans Tester, la base de données de l'historique est partagée (et les ticks aussi, d'ailleurs) pour la raison même qu'il n'y a pas d'écriture (ou plutôt, l'écriture est unique pendant la synchronisation), mais seulement de la lecture.

Vous parlez du dossier partagé C:\Users\User\AppData\Roaming\MetaQuotes\Tester\.

Le même principe s'impose pour le terminal en mode normal, non pas avec la spécification forcée d'un dossier commun aux bases d'historique via des liens. Maintenant, cela fonctionne bien, mais veuillez implémenter cette fonctionnalité normalement en spécifiant un dossier pour les bases d'historique dans les paramètres du terminal.

 
Andrey Dik:

Vous parlez du dossier partagé C:\Users\User\AppData\Roaming\MetaQuotes\Tester\.

C'est le même principe pour le terminal en mode normal, et non en forçant un dossier partagé vers les bases d'historique via des liens. Maintenant, cela fonctionne bien, mais s'il vous plaît mettre en œuvre cette fonctionnalité normalement en spécifiant le dossier pour les bases de l'histoire dans les paramètres du terminal.

Cela ne fonctionne pas bien et ne peut pas fonctionner. Vous avez juste de la chance et les bases ne sont pas tuées par l'écrasement. Nous procédons à une revérification totale de toutes les bases de données avec une récupération transparente des erreurs sur la base des données du serveur, ce qui élimine les collisions potentielles (si l'on écrit à partir de différents terminaux dans le même répertoire) et les dommages.

Il faut être très attentif aux risques pour travailler dans un tel environnement. Il est d'autant plus effrayant d'exiger et de prétendre que tout est juste et normal.

 
Yuriy Zaytsev:

C'est ce que je vais dire à Andrei.

Je ne veux pas jurer, bien que vous me provoquiez avec insistance à le faire.

Et c'est exactement ce qu'il ne semble pas comprendre !

Je n'ai vraiment pas envie de me disputer, bien que vous vous obstiniez à me provoquer à le faire.

Putain ! ESSAYEZ DE VOIR PAR VOUS-MÊME - CRÉEZ UN DOSSIER COMMUN POUR L'HISTORIQUE ET SPÉCIFIEZ-LE POUR TOUS LES TERMINAUX À L'ADRESSE ! !!!!. CE TRAVAIL !!!!

Enfoncez-vous dans votre canapé théorique à l'adresse **** ! Pratique, essaie ! Le dossier partagé sur les liens fonctionne et il n'y a aucun problème !

 
Renat Fatkhullin:

Ça ne fonctionne pas bien et ça ne peut pas fonctionner. Vous avez juste de la chance et les bases ne sont pas vraiment détruites par l'écrasement.

Il faut être très peu enclin à prendre des risques pour travailler dans un tel environnement.

Oui, c'est une béquille. Utilisable - mais une béquille. Dans le cas des agents, ils ont pensé au partage de fichiers, pourquoi ne pas le faire pour le terminal ?

Heureusement, le terminal n'essaie pas d'écrire dans le fichier si l'écriture est déjà effectuée, c'est pourquoi la méthode avec les dossiers par liens fonctionne maintenant.

 

Un jour, nous avons été surpris lorsque les administrateurs d'un courtier sont venus nous voir pour se plaindre d'erreurs d'enregistrement de fichiers.

Il s'est avéré qu'ils sauvegardaient depuis longtemps des serveurs avec tous les fichiers à la volée. Pas de copie fantôme, mais ils copiaient des fichiers à la manière des paysans. À la question "à quoi pensiez-vous, les gars ?", la réponse a été "pourquoi, tout a bien fonctionné pendant longtemps !

C'est à peu près la réponse de @Andrey Dik. Dans le même temps, il suggère de faire cela à des millions de commerçants. Pour que deux cents personnes marchent sur le même râteau toutes les heures.

 
Renat Fatkhullin:

Un jour, nous avons été pris de court lorsque les administrateurs d'un courtier sont venus nous voir pour se plaindre d'erreurs d'enregistrement de fichiers.

Il s'est avéré qu'ils sauvegardaient depuis longtemps des serveurs avec tous les fichiers à la volée. Pas de copie fantôme, mais ils copiaient des fichiers à la manière des paysans. À la question "à quoi pensiez-vous, les gars ?", la réponse a été "pourquoi, tout a bien fonctionné pendant longtemps !

C'est à peu près la réponse de @Andrey Dik. Dans le même temps, il propose de faire de même pour des millions de commerçants. Pour que deux cents personnes marchent sur le même râteau toutes les heures.

Andrei propose aux développeurs de faire de l'accès aux dossiers publics une option interne. C'est exactement ce qu'il suggère, il vous demande à vous, pas à des millions de traders.