Comment obtenir le "Pourcentage de la marge" de manière programmatique ? - page 3

 
ir0407:
Eh bien... Il s'agit d'une question simple et vous lancez une polémique... :) Je comprends que tout le monde ici est intelligent et un génie à sa façon. Mais...
J'ai fait une capture d'écran de MT5 ou créé un sujet dans la section qui n'est pas destinée à MT4. Je ne suis pas venu ici pour vous surprendre, mais pour obtenir une réponse simple à une question simple. Comment tirer la bonne valeur de la formule, j'en suis bien conscient. Nous sommes bons en maths. La question n'était pas de savoir comment calculer, mais comment l'obtenir à partir du terminal.

MQL5 encore...

Laissez-moi essayer de reformuler la question... Je n'ai pas besoin de calculer cette valeur, je n'ai pas besoin d'une formule pour la calculer. J'ai besoin du nom de la constante(ou de sa valeur numérique), que je peux utiliser dans la requête SymbolInfoDouble() pour obtenir la valeur dont j'ai besoin dans le terminal. C'est ça ! :)

Allez, allez ))))

Votre question était claire dès le début.

Mais la marge est un sujet intéressant et, comme vous pouvez le constater, la question est controversée.

 
Alexey Viktorov:

Je ne comprends pas pourquoi ça ne marche pas pour vous. Ici, vous avez 3 ordres ouverts et la marge est de 100 pour cent, conformément aux calculs.



Quels calculs ? Peut-être que je regarde mal, mais je ne vois pas de comparaisons dans votre capture d'écran.

Et puis, la question était aussi de savoir comment calculer la marge purement sur l'or sans la valeur "pourcentage de marge", en tenant compte de tous les ordres ouverts sur celui-ci....

Et oui... en tenant compte des positions couvertes bien sûr.

 
Alexey Viktorov:
Dans ce cas, la réponse est sans équivoque. JE NE PEUX PAS ! !!
Eh bien, je répondrai par une citation de Stanislavski : "Je n'y crois pas !

Alexey Viktorov:

Et personne ne le fera. C'est une approche étrange, cependant. J'en ai besoin et les développeurs le font pour moi. Tout simplement parce que je le veux.

Eh bien le terminal connaît cette valeur... Il le sait et l'affiche dans les "spécifications du contrat"... Pensez-vous vraiment que le terminal calcule lui-même cette valeur et l'affiche dans le tableau ? C'est la valeur de base ! Le terminal l'utilise ensuite pour calculer la marge correcte pour des types de caractères spécifiques.

Et pourquoi cette approche vous paraît-elle étrange ? Est-ce que vous obtenez toutes les autres valeurs du "cahier des charges" par "calcul" également ? Par des données indirectes ou expérimentales ? :)

Alexey Viktorov: J'ai sincèrement essayé d'aider... Mais hélas, pas de chance...

Merci, bien sûr, mais vous avez pris mon thème dans une direction inutile.

 
K-2SO:


Quels calculs ? Peut-être que je ne regarde pas attentivement, mais je ne vois pas de comparaison dans votre capture d'écran.

Et puis, la question était aussi de savoir comment calculer la marge purement sur l'or sans la valeur "pourcentage de marge", en tenant compte de tous les ordres ouverts sur celui-ci....

Et oui... y compris les positions couvertes, bien sûr.

La façon de calculer le "pourcentage de marge" a déjà été expliquée, mâchée et mise en bouche. Tout ce qu'il reste à avaler... C'est vous qui décidez.

Vous pouvez utiliser les positions couvertes.

MarketInfo(_Symbol, MODE_MARGINHEDGED);
C'est le montant remboursé, pas le % de la garantie. Le calcul du % n'est pas difficile du tout.
 
Alexey Viktorov:

La façon de calculer le "pourcentage de marge" a déjà été racontée, mâchée et mise en bouche. Tout ce qu'il reste à avaler... C'est vous qui décidez.

Avec la prise en compte des positions couvertes, utiliser

le montant restitué, et non le % de la garantie. Le calcul du % n'est pas difficile du tout.

Dégagez de mon chemin. Je vous ai montré et essayé de prouver que lors du calcul de la garantie sur toutes les positions ouvertes pour l'or, MARGINREQUIRED est inutile. Je ne suis peut-être pas capable d'avaler quelque chose, mais vous ne semblez même pas vouloir mâcher.
 
ir0407:
Alors je citerai Stanislavsky : "Je n'y crois pas !"

Eh bien le terminal connaît cette valeur... Il le sait et l'affiche dans le cahier des charges... Et vous pensez vraiment que le terminal se tortille dans ses calculs juste pour obtenir cette valeur et nous la montrer dans la feuille de calcul ? C'est la valeur de base ! Le terminal l'utilise ensuite pour calculer la marge correcte pour des types de caractères spécifiques.

Et pourquoi cette approche vous paraît-elle étrange ? Est-ce que vous obtenez toutes les autres valeurs du "cahier des charges" par "calcul" également ? Par des données indirectes ou expérimentales ? :)

Merci, bien sûr, mais vous avez pris mon sujet dans une direction inutile.

Le terminal sait beaucoup de choses et ne le dit à personne. Par exemple, j'ai essayé une fois de déterminer quel ordre avait été clôturé par quel guichet. Il s'insère dans le commentaire, mais on ne peut l'obtenir qu'à partir de là... Où est la logique ? Eh bien, nous n'avons pas ce dont nous avons besoin et nous ne l'aurons pas. Nous devons écrire nos propres calculs. Heureusement, ils ne sont pas si compliqués. Et d'ailleurs, la devise de la marge doit également être calculée et corrigée en fonction du taux de change au moment de l'ouverture de l'ordre. Et il n'y a pas de CopyTicks dans mql4. Par conséquent, nous concluons que, quelle que soit la façon dont vous calculez le pourcentage de marge, il y aura toujours une inconnue de plus, et il y aura de toute façon des imprécisions dans les calculs.
 
Alexey Viktorov:
Le terminal sait beaucoup de choses et n'en parle à personne. Par exemple, j'ai essayé de déterminer quel ordre a été clôturé par quel compteur. Tout tient dans le commentaire mais c'est la seule façon de l'obtenir... Où est la logique ? Je ne l'ai pas et je ne l'aurai pas.

Les dieux ne brûlent pas les pots. Les codeurs de méta-citations sont également humains et peuvent aussi faire des erreurs ou oublier de faire quelque chose. Par exemple, pour entrer certaines valeurs dans l'aide. Je vais donc essayer d'entrer par la "porte arrière" et je vous ferai part des résultats un peu plus tard.

Alexey Viktorov:
D'où la conclusion : quelle que soit la façon dont vous obtenez le pourcentage de marge, il y aura une inconnue de plus et une imprécision dans les calculs.

Je veux éviter ces inexactitudes. Et avec le moins de sang possible. :)

 
K-2SO:

S'en sortir. Je vous ai montré et essayé de vous prouver que lors du calcul de la garantie pour toutes les positions ouvertes pour l'or, MARGINREQUIRED est inutile. Je ne suis peut-être pas capable d'avaler quelque chose, mais vous ne semblez même pas vouloir mâcher.
Mon cher, essayez de lire ces connaissances. Je pense que ça pourrait vous aider. :)
 
K-2SO:

S'en sortir. Je vous ai montré et essayé de prouver que MARGINREQUIRED est inutile pour calculer la garantie de toutes les positions ouvertes pour l'or. Je ne suis peut-être pas capable d'avaler quelque chose, mais vous ne semblez même pas vouloir mâcher.

Ecoutez, je suis étonné par des déclarations comme celle-là.

Voici le code.

  Comment("", MarketInfo(_Symbol, MODE_MARGINREQUIRED), "\n"
        , "", MarketInfo(_Symbol, MODE_MARGINHEDGED), "\n"
         );

voici les lectures. 842,13 pour le courant. et 50 pour les positions couvertes.


Voici le tableau Excell avec les formules et les prix de l'instantané dans le post précédent. Étudier...


La différence de 3 kopecks due au manque de taux de change EURUSD au moment de l'ouverture de la position pour l'or et cette connerie dans la deuxième ligne... Qu'y a-t-il d'autre à expliquer ?

 
ir0407:
Cher Monsieur, essayez de lire ces connaissances. Je pense que ça va vous aider. :)


Je l'ai fait, ça ne m'aide pas, j'ai besoin de plus de détails !

Calculer d'abord le pourcentage de marge à partir de MARGINREQUIRED et l'appliquer ensuite lors du calcul de la marge d'une commande déjà passée ?

Jusqu'à présent, je ne peux que le voir de cette façon... Avec toutes les inexactitudes bien sûr.

Raison: