Qu'est-ce que ça veut dire, ce pourcentage de marge ?
Désolé pour la question incomplète, j'aurais dû demander plus explicitement.
Quel est l'objectif de la question ? Pour vérifier si la marge est calculée correctement/anormalement ? Sinon, il peut être calculé à partir de la formule figurant dans la description. Et ensuite, qu'est-ce que vous en faites ?
Désolé pour la question incomplète, j'aurais dû demander plus explicitement.
Quel est le but ? Pour vérifier si la marge est calculée correctement ou non ?
Avec l'imagination nécessaire, vous pouvez imaginer de nombreux objectifs. :) Et pas du tout pour vérifier le "bien/mal".
Sinon, il peut être calculé à partir de la formule figurant dans la description.
Comment ? Eh bien, c'est à ça que sert ce "pourcentage de marge". Vous suggérez que nous le tapions à la main ?) Le code doit pouvoir l'obtenir de manière programmatique.
Et ensuite, qu'en faire ?
voirSymbolInfoDouble
SymbolInfoDouble(symbol, SYMBOL_MARGIN_INITIAL); SymbolInfoDouble(symbol, SYMBOL_MARGIN_MAINTENANCE);
C'est bon ?
double procentMgn; procentMgn=AccountBalance()*100/MarketInfo("GOLD",MODE_MARGINREQUIRED);
Est-ce que ça va ?
Non, ça ne le sera pas.
1. La fonction MarketInfo() est obsolète.
2. MODE_MARGINREQUIRED renvoie le bon résultat uniquement pour les positions longues, ce n'est pas vrai pour les positions courtes.
3. MODE_MARGINREQUIRED renvoie le résultat déjà dans la monnaie de dépôt, ce dont je n'ai pas besoin.
4. Je n'ai pas besoin du pourcentage du dépôt. J'ai juste besoin de la valeur du paramètre "pourcentage de marge" pour le symbole. Et je peux calculer moi-même ce dont j'ai besoin.
Non, ça ne le sera pas.
1. La fonction MarketInfo() est obsolète.
2. MODE_MARGINREQUIRED renvoie le bon résultat uniquement pour les positions longues, pour les positions courtes il est faux.
3. MODE_MARGINREQUIRED renvoie les résultats dans la devise du dépôt, ce dont je n'ai pas besoin.
4. Je n'ai pas besoin d'un pourcentage du dépôt. J'ai juste besoin de la valeur du "Pourcentage de la marge" pour le symbole. Et je peux le calculer moi-même.
Si vous en avez besoin sur MT5, allez dans une autre section du forum.
Vous n'êtes pas surpris par vos connaissances communes, ou pire :
1. il ne s'agit pas de la fonction MarketInfo(), mais d'une expression, dont le résultat du calcul sera un pourcentage de
2. vous n'avez pas au moins 4 décimales, donc le % de marge pour le long et le court sera le même.
3. multiplier simplement
procentMgn
Vous pouvez utiliser 0,01, et vous serez heureux.
Avec une bonne imagination, vous pouvez imaginer de nombreuses cibles. :) Et pas du tout pour le test du bon/mauvais.
Comment cela fonctionne-t-il ? Vous avez besoin de ce même "pourcentage de marge". Vous voulez que je le tape à la main ?) Le code devrait pouvoir l'obtenir de manière programmatique.
Ouais, eh bien... Le fantasme est tout... Je ne comprends pas pourquoi les gens qui essaient de vous aider devraient fantasmer sur ce sur quoi vous fantasmez ? De toute façon, ce n'est pas la question.
Comment obtenir ce dont vous avez besoin à partir de cette formule ?
La formule elle-même est Marge = Lots *Taille du contrat*Prix du marché*Pourcentage/100
Donc pourcentage = marge/(lots *taille du contrat*prix du marché/100)
1. La fonction MarketInfo() est obsolète.
Elle ne figure pas encore dans la liste des fonctions dépréciées. Par conséquent, il produit la valeur manquante pour déterminer le pourcentage de marge.
MarketInfo(_Symbol, MODE_MARGINREQUIRED);
Après avoir obtenu toutes les données au moment actuel, au prix actuel, il est facile de recalculer la marge qui a été retenue lors de l'ouverture de l'ordre, au prix d'ouverture de l'ordre.
Si vous en avez besoin pour mql5, vous devez utiliser
bool SymbolInfoMarginRate( string name, // символ ENUM_ORDER_TYPE order_type, // тип ордера double& initial_margin_rate, // коэффициент взимания начальной маржи double& maintenance_margin_rate // коэффициент взимания поддерживающей маржи );
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Vous acceptez la politique du site Web et les conditions d'utilisation
Dans la fenêtre "Spécifications du contrat" du terminal, il y a un élément "Pourcentage de la marge". Il est censé être retourné par SymbolInfoDouble(), mais je n'ai pas trouvé de valeur parmi ses spécificateurs qui permette de connaître ce "Pourcentage de Marge". Comment l'obtenir par voie programmatique ?