[ARCHIVE]Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 5. - page 381
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
Il a acheté beaucoup de cœurs de processeurs. Et maintenant, pour lequel faire la queue)))))))))
Non, cela vaut aussi pour les processeurs à un seul cœur, le multitâche est une fonction du système d'exploitation.
J'ai vérifié avec l'augmentation de PauseBar et j'ai obtenu juste ces bâtons sur les barres de 1 et 5 minutes. Mais je ne comprends pas comment les contourner correctement. Je comprends ce qu'il faut écrire, probablement (mais pas évidemment) si la valeur
в
la valeur des barres précédentes - quelque chose comme ceci :
Mais lorsque j'essaie de le faire, tout mon indicateur "bouge" - parce que je ne comprends pas la logique et que je n'arrive pas à comprendre où le mettre et dans quelles conditions.Cette variante fonctionne de manière adéquate dans le testeur.
Je l'ai contourné de la manière suivante :
Et partout où il y avait un [i] décalé d'une mesure en arrière
Et ici :
Je me suis promené sur le forum mais je n'ai pas trouvé de réponse définitive. Est-il possible pour un EA de travailler avec plusieurs paires de devises à la fois ?
Je pense que certains sites qui vendent des EA ont cette possibilité dans leurs descriptions, mais je veux être sûr.
c'est possible. le conseiller n'est limité que par le nombre de symboles de votre société de courtage.
Si vous n'avez pas trouvé la réponse, c'est que votre question est stupide par essence.
Si vous le pouvez, envoyez-nous un lien sur la façon de le faire.
1. Vous devez avoir du mal à le comprendre. Je sais de quoi tu parles.
2. Merci, mais je n'ai pas demandé de conseils. D'autant plus que nous parlons de synchronisation de ce qui n'est plus dans le même fil.
Et quelle est la science de la synchronisation ? Quelle science ? Votre propre science ? Un jour, vous le comprendrez, mais il n'y a rien de compliqué. Les langages de programmation et les algorithmes n'ont pas été inventés et créés par des imbéciles. Mais pour une raison quelconque, ils sont dotés de moyens de synchronisation et de mise en file d'attente.
4. très mal. Si c'est correct....Si il y avait une synchronicité. Mais dans le code que vous avez cité ici un peu plus tôt, il n'y a pas de synchronisation, seulement un accès atomique.
3. Selon la science de la programmation des systèmes. Lis Richter. Il vous éclairera sur les files d'attente.
4. Qu'est-ce que la synchronisation ? C'est un accès atomique à une ressource. Mon code le fournit. La file d'attente est construite par le système. Les modules sont exécutés proportionnellement à leur temps d'exécution. L'ordre d'exécution n'est pas important. Tout est fait par le système. Ce n'est pas une invention d'imbéciles. Essayez de prouver le contraire en utilisant un exemple concret. Analysez le journal. Vous verrez que tout s'exécute correctement, sans vos files d'attente spéciales.
A propos, MQL4, en tant que langage, possède une fonction avec accès atomique. Il n'y en a pas en C++. Vous devez les écrire vous-même, en tant que wrappers de fonctions WinAPI. Il est préférable de l'implémenter dans une classe.
Encore une fois, juste au cas où, pour ceux qui sont dans un sous-marin dans un réservoir et qui portent encore un casque. Seul l'accès atomique est montré ici. L'ordre des fonctions ici sera au gré du vent. Ce code ne prévoit pas l'exécution uniforme des fonctions. C'est pourquoi il n'y a aucune garantie qu'une fonction ne restera pas en rayon pendant très longtemps. Il est ridicule de compter sur l'aptitude au service dans la programmation uniquement parce que la fréquence du processeur est élevée, même si la fréquence du processeur est très élevée.
Encore une fois pour ceux qui ne sont pas dans le réservoir. Le système fournit l'ordre d'exécution. Qu'est-ce que l'exécution uniforme ? Comment pouvez-vous assurer l'exécution uniforme de threads dont le temps d'exécution et le nombre sont inconnus ? Pourquoi s'en préoccuper ? Ils y ont déjà pensé pour vous et l'ont fait. Vous pouvez utiliser des objets de synchronisation.
Bien entendu, je n'exclus pas les cas où vous avez besoin d'une file d'attente spéciale pour exécuter les threads. C'est une chose très délicate :-)) Vous devriez éviter ce type de code. Car il y a là un paradoxe. Pourquoi exécuter une tâche dans plusieurs threads pour les regrouper en un seul ? Utilisez l'exécution monofilaire. Vous n'aurez alors pas besoin de synchronisation.
Il existe un autre cas où vous avez besoin d'une file d'attente. Mais ce n'est pas la file d'attente de l'exécution des threads, mais l'ordre de traitement des données reçues des threads (résultats des threads). Il s'agit de la tâche la plus fréquente pour les files d'attente.
La synchronisation est également une notion relative. Synchronisation de quoi avec quoi ? Synchronisation pour l'accès atomique ? Et qui va construire la file d'attente ? Junko, peut-être que votre file d'attente de bibliothèque est construite normalement, si le code est pris à partir de MSDN, parce que tout est fait correctement là. Et vous l'avez juste copié sans comprendre ce qu'il fait - comme les lunettes d'un singe. Ou peut-être que tu inventes tout ça comme tu le fais toujours. Parce que vous ne comprenez pas. Vous confondez synchronisation pour fournir un accès atomique et mise en file d'attente.
La synchronisation consiste à fournir un accès atomique à une ressource. La file d'attente est construite par le système. L'exécution est garantie, la commande ne l'est pas. Dans MSDN, le code est probablement correct, mais maladroit. Écrivez votre propre classe pour une synchronisation pratique. J'ai écrit mon cours selon le principe du cours d'Andrei Postnikov. Il m'a gentiment montré comment le synchroniser correctement. C'est vrai, ce n'est pas une seule classe. J'ai une classe pour chaque objet de synchronisation, une autre classe de verrouillage pour tout et un espace de nom pour les fonctions d'attente.
En fait, j'ai déjà répondu à tout ce qui précède.
Junko, tu es sans espoir. Si vous avez du mal à penser, ne pensez pas, crachez le morceau, ce n'est pas votre truc...
Si quelque chose n'était pas prouvé et non prouvé, vous ne vous disputeriez pas à ce sujet. Le problème est que vous, Vadim, êtes incapable d'avoir une conversation constructive. Au moins, vous confirmez que la synchronisation ne concerne que l'accès atomique et non la mise en file d'attente. Vous, Vadim, vous vous disputez maintenant avec vous-même sans vous en rendre compte.
Junko, tu es sans espoir. Si vous avez du mal à penser, ne pensez pas, crachez le morceau, ce n'est pas votre truc...
Si quelque chose n'était pas prouvé et non prouvé, vous ne vous disputeriez pas à ce sujet. Le problème est que vous, Vadim, êtes incapable d'avoir une conversation constructive. Au moins, vous confirmez que la synchronisation ne concerne que l'accès atomique et non la mise en file d'attente.
La synchronisation est la fourniture d'un accès atomique à une ressource.
La file d'attente est construite par le système.
Un grand coup d'applaudissements ! Au sujet du code de la page 378. Même si le terminal règle l'ordre de la file d'attente, il ne peut pas savoir dans quel cas la fonction a été exécutée et dans quel cas elle a été rejetée.
Un grand coup d'applaudissements ! A propos du code de la page 378. Même si le terminal enregistre l'ordre de la file d'attente, il ne peut pas savoir dans quel cas la fonction a été exécutée et dans quel cas elle a été rejetée.