Erreurs, bugs, questions - page 291

 
Interesting:

À propos, les développeurs devraient ajouter à la bibliothèque standard une fonctionnalité pour CPositionInfo, qui remplirait automatiquement le tableau des offres au moins pour la position sélectionnée (il n'y a pas encore de telle chose).

Les classes C...Info ont été "réglées" pour accéder aux informations en tant que "wrapper" pour les fonctions MQL.

À l'avenir, il est prévu de les développer pour qu'ils puissent servir de stockage de données.

 
Valmars:

Mais il existe la fonction HistorySelectByPosition(), qui fait la même chose, il suffit de connaître l'identifiant de la position. Et il permet d'obtenir l'historique des positions existantes et déjà fermées. Quel sera le rendement de la méthode que vous proposez ? Une série de transactions sur la position existante, ou toute l'histoire du symbole ? Et s'il n'y a pas de position à l'heure actuelle, que retournera-t-elle ?


Bien sûr, beaucoup de choses peuvent être résolues à un "bas niveau", mais je veux avoir une solution dans une bibliothèque standard.

Et la fonction retournera le nombre de transactions qui ont formé la position (qui ont participé au processus), et en même temps elle remplira le tableau des tickets pour ces mêmes transactions.

En cas d'erreur, il retournera 0. Je n'ai pas vu une telle chose dans la bibliothèque standard (peut-être que je n'ai pas assez cherché).

Bien sûr, ce n'est qu'une suggestion, car personne n'interdira d'écrire le descendant de la classe standard et d'y faire tout ce que vous voulez et comme vous le voulez.

oncleVic:

À l'avenir, nous envisageons de les développer pour qu'ils puissent être utilisés comme stockage de données.

C'est bien, d'une certaine façon.
 
Valmars:
Le temps d'ouverture de la position est toujours un, et il peut y avoir de nombreux changements de volume (et/ou de direction) de la position au cours de son existence, et que voulez-vous obtenir le tableau complet du temps de changement de volume de la position avec la méthode de la bibliothèque standard? Le changement de volume est toujours le résultat d'une transaction, vous devez donc analyser l'historique des transactions pour une position donnée, et le moment d'une transaction s'y reflète. Si vous avez besoin de l'heure du dernier changement de position, vous devez trouver la dernière transaction de la position dans l'historique, et chercher ce qui est égal à DEAL_TIME pour elle.
Je veux dire l'heure du dernier changement et je l'obtiens à l'aide de la méthode de la bibliothèque standard.
 

Messieurs les professionnels, aidez-moi à comprendre quelque chose

J'ai trouvé un static int Recount[] dans Code Base 9 sur Multik (EA multi-devises), mais en plus ce tableau prend

vrai ou faux ---- est-ce une erreur ou non et encore une chose : quand cet EA multi-devises est attaché au graphique EUR, les cotations des autres devises Je peux faire ce que je veux avec eux.

Merci d'avance Vladimir

 
fvdtrejder:

Messieurs les professionnels, aidez-moi à comprendre quelque chose

Dans le Code Base 9 page Multik (EA multi-devises) dans le programme il est dit static int Recount[] et ensuite ce tableau prend

vrai ou faux ---- est-ce une erreur ou non et une autre question est de savoir si l'EA multi-devises est attaché au graphique EUR et aux cotations des autres devises. Je peux faire ce que je veux avec eux.

Merci d'avance Vladimir

Il s'agit probablement de valeurs booléennes converties en 1 ou 0. Personnellement, je ne vois pas de gros problème (l'auteur était probablement à l'aise avec cela).

Tous les symboles et leurs paramètres dans cet EA sont codés en dur.

À chaque tic-tac du symbole "graphique de travail", le conseiller expert reçoit des signaux pour les 12 symboles et tente de négocier en fonction de ces signaux.

À partir d'un symbole particulier, si je comprends bien, seule la fréquence des ticks dépend, c'est-à-dire la fréquence de déclenchement de OnTick().

 
Interesting:

Très probablement, les valeurs booléennes sont simplement converties en 1 ou 0. Personnellement, je ne vois pas de gros problème (probablement, c'était pratique pour l'auteur).

Tous les symboles et leurs paramètres dans cette EA sont codés en dur.

À chaque tic-tac du symbole "graphique de travail", le conseiller expert reçoit des signaux pour les 12 symboles et tente de négocier en fonction de ces signaux.

D'après ce que je comprends, seule la fréquence des ticks dépend d'un symbole particulier, c'est-à-dire la fréquence de déclenchement de OnTick().

Je n'ai pas trouvé dans le programme où les expressions booléennes sont converties en 1 ou 0, ou peut-être ai-je mal compris quelque chose.

Et merci pour le reste

 
fvdtrejder:

Lorsque cette EA multi-devises est attachée à un graphique en euro par exemple, les cotations des autres devises continuent à affluer dans ce programme et je peux faire n'importe quoi avec elles, que signifie le fait d'attacher physiquement l'EA à un instrument spécifique ?

L'attachement "physique" d'un EA à un graphique spécifique ne fait que lancer l'EA. D'après ce que j'ai compris, la nécessité d'attacher à un seul graphique un EA négociant sur différents instruments doit être considérée comme un atavisme, conceptuellement supporté à ce stade du développement de la plateforme.

 
fvdtrejder:

ce qui est gagné en attachant physiquement un EA à un instrument particulier

Si nous parlons spécifiquement des EA multidevises, certaines caractéristiques sont décrites ici.
 
Yedelkin:

"Le fait d'attacher physiquement un EA à un graphique spécifique entraîne simplement l'exécution de cet EA. D'après ce que je comprends, la nécessité de rattacher à un seul graphique un EA qui négocie sur différents instruments doit être considérée comme un atavisme, conceptuellement supporté à ce stade du développement de la plateforme.

Puis-je écrire Recount[Nombre] =false après avoir décrit le tableau static int Recount [] dans le programme
 
fvdtrejder:

Je n'ai pas trouvé dans le programme où les expressions booléennes sont converties en 1 ou 0, ou est-ce que je comprends mal quelque chose ?

Et merci pour le reste.

L'idée est de convertir automatiquement, vrai est 1, faux est 0.
Raison: