Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 188

 
Vitalie Postolache:

La commission n'a donc rien à voir avec les prix. Elle est facturée sur l'ordre, quel que soit le nombre de pips que le prix a franchi pendant la durée de vie de cet ordre. Oui, nous pouvons le convertir en points, mais il sera un peu plus grand que l'écart. Alors, j'ai demandé, quelle en est l'utilité ? Peut-être, les Pipsatters dont les cibles sont inférieures à l'écart ?
Vous avez peut-être raison. Si je transfère la commission + le swap ( !) alors cela a plus de sens, et si je suis sur le marché pendant une longue période, le coût peut atteindre 25 points et si je n'ajoute pas ces points à la traîne ou au seuil de rentabilité, je finirai avec une perte.
 
Vitaly Muzichenko:
Vous avez peut-être raison. Je transfère la commission + le swap( !), et alors cela a beaucoup de sens, et si nous sommes sur le marché pendant longtemps, le coût peut aller jusqu'à 25pp, et si nous n'ajoutons pas ces points au chalut ou au breakeven, nous finissons par clôturer dans une position négative
Quant au swap, je suis tout à fait d'accord, il évolue avec le temps, surtout lorsque le swap est positif et qu'une grosse commande est suspendue pendant une semaine ou deux. Et la commission augmente-t-elle avec le temps ? Il semble s'agir d'une somme forfaitaire.
 
Vitalie Postolache:
Je suis tout à fait d'accord avec le swap, il change au fil du temps, particulièrement agréable quand le swap est positif et qu'une grosse commande traîne pendant une semaine ou deux. La commission augmente-t-elle avec le temps ? Il semble s'agir d'une somme forfaitaire.
La commission est d'environ 1pp et ne change pas avec le temps, mais c'est toujours agréable quand elle est prise en compte lors du déplacement des Breakeven et Trailing stops, vous n'avez pas besoin d'ajouter quoi que ce soit manuellement, le programme fera tout).
 
Vitaly Muzichenko:
La commission est d'environ 1pp et ne change pas avec le temps, mais il est quand même agréable qu'elle soit prise en compte lors du déplacement des stops Breakeven et Trawl, pas besoin d'ajouter quoi que ce soit manuellement, le programme fera tout)


Il y a un problème dans votre code :

tv=SymbolInfoDouble(Symbol(),SYMBOL_TRADE_TICK_VALUE);

(OrderCommission()/(tv*OrderLots()))*Point()

Peut-être que c'est mieux ?

double tv=SymbolInfoDouble(Symbol(),SYMBOL_TRADE_TICK_VALUE);
int comissionpoints=int(OrderCommission()/tv/OrderLots());
Mais si la commission est inférieure à 1, le code renverra 0. Ou des points en format double à représenter ?
 
Vitalie Postolache:


Il y a un problème avec votre code :

Est-ce que ce serait mieux ?

Ce n'est pas comment c'est mieux, c'est comment c'est bien. Le code a été tiré d'un fil de discussion voisin, et il est probablement correct).
 
Vitaly Muzichenko:
Ce n'est pas la bonne façon, c'est la bonne façon. J'ai tiré le code d'une branche proche et c'est probablement correct)


Eh bien, il semble plus correct de ne pas multiplier par Point.

Si le prix d'un ordre de 1 lot varie de 1 pip, son bénéfice sera modifié de : OnePipCharge = Tickvalue * 1Lot * 1Point. Nous en déduisons le nombre de pips, si le montant dans la devise de base est connu : Pips = Frais/Lots/Valeur du pic.

Ce n'est pas comme ça ?

 

Revenons à mon sujet, de loin le plus délicat : la modification de l'EA, en particulier sur les comptes ndd.

1. S'il y a déjà des ordres ouverts sur la paire et qu'un nouvel ordre est ouvert, alors tout est modifié immédiatement (moyennage).

2. S'il n'y a pas d'ordre et qu'un nouvel ordre est ouvert, c'est-à-dire qu'un ordre apparaît, il n'est pas modifié (alors que dans la même société de courtage sur un compte simple tout est modifié comme il se doit et depuis plusieurs mois déjà). L'ordre est modifié lors de la prochaine ouverture du terminal. Dans les journaux généraux, il n'y a rien à ce sujet et dans les journaux de MQL4, il y a une erreur 130 (arrêts erronés), après qu'un ordre ait été ouvert.

3. Aujourd'hui, j'ai observé - un ordre a été ouvert, un sur la paire, mais il n'a pas été modifié, les cotations pour la paire arrivaient (je suppose une telle variante). Me souvenant des variantes précédentes, j'ai redémarré le terminal, mais l'ordre n'a pas été modifié. Lorsque j'ai exécuté le terminal le matin (j'ai des graphiques quotidiens), l'ordre a été modifié.

Qu'est-ce que ça peut être ? Mon avis. Peut-être devrions-nous définir directement le TP requis dans la fonction d'ouverture ? Eh bien, l'ouverture de l'ordre doit être faite selon les règles des comptes nd, puis les TP et SL doivent être fixés.

 
Youri Lazurenko:

Revenons à mon sujet, de loin le plus délicat : la modification de l'EA, en particulier sur les comptes ndd.

1. S'il y a déjà des ordres ouverts sur la paire et qu'un nouvel ordre est ouvert, alors tout est modifié immédiatement (moyennage).

2. S'il n'y a pas d'ordre et qu'un nouvel ordre est ouvert, c'est-à-dire qu'un ordre apparaît, il n'est pas modifié (alors que dans la même société de courtage sur un compte simple tout est modifié comme il se doit et depuis plusieurs mois déjà). L'ordre est modifié lors de la prochaine ouverture du terminal. Dans les journaux généraux, il n'y a rien à ce sujet et dans les journaux de MQL4, il y a une erreur 130 (arrêts erronés), après qu'un ordre ait été ouvert.

3. Aujourd'hui, j'ai observé - un ordre a été ouvert, un sur la paire, mais il n'a pas été modifié, les cotations pour la paire arrivaient (je suppose une telle variante). Me souvenant des variantes précédentes, j'ai redémarré le terminal, mais l'ordre n'a pas été modifié. Lorsque j'ai exécuté le terminal le matin (j'ai des graphiques quotidiens), l'ordre a été modifié.

Qu'est-ce que ça peut être ? Mon avis. Peut-être devrions-nous définir directement le TP requis dans la fonction d'ouverture ? Eh bien, les règles de nd-accounts semblent être : d'abord nous ouvrons un ordre et ensuite nous fixons TP et SL.

Ouvrez-vous une position avec un TP et un SL non nuls en même temps ?

Essayez d'abord d'ouvrir une position avec un stop et une prise égaux à zéro, vérifiez que la position est ouverte, et modifiez le stop et la prise aux valeurs requises.

 
Artyom Trishkin:

Ouvrez-vous une position avec un stop et un take non nuls ?

Essayez d'abord d'ouvrir une position avec un stop et une prise égaux à zéro, vérifiez que la position est ouverte et modifiez son stop et sa prise aux bonnes valeurs.


C'est ainsi que cela fonctionne pour moi - ouvrir un ordre avec un TP et un SL nuls, puis modifier (l'ordre) avec les bons paramètres TP et SL. J'ai déjà écrit, tout fonctionne et fonctionnait bien sur d'autres comptes, seulement sur ndd une telle chose. Je n'ai jamais travaillé avec quelqu'un d'autre avec des comptes similaires auparavant, je ne peux pas comparer. Peut-être que c'est seulement le bip de forex4u, ou peut-être tous les comptes ndd. J'aimerais le savoir pour une référence future.
 
Vitalie Postolache:


Eh bien, il semble plus correct de ne pas multiplier par Point.

Si le prix d'un ordre de 1 lot évolue de 1 pip, son bénéfice se transformera en : OnePipCharge = Tickvalue * 1Lot * 1Point. De là, déduisez le nombre de pips si le montant dans la devise de base est connu : Pips = Frais/Lots/Valeur du pic.

N'est-ce pas ?

Quelle est la différence ?

Pips = Charge/Lots/Valeur du tick en nombres spécifiques 8/2/4 = 1

ou

Pips = Charge/(Lots*Tickvalue) en termes concrets 8/(2*4) = 8/8 = 1

Les nombres fractionnaires peuvent aussi être utilisés...

Raison: