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

 
sebegolov:

Aidez-moi à comprendre pourquoi l'indicateur ne s'affiche pas. Je veux créer un jour quelque chose comme ZigZag.

Veuillez insérer le code correctement :


Je l'ai déjà fait pour vous dans votre post.

 
Artyom Trishkin:

Veuillez insérer le code correctement :


Je l'ai déjà fait pour vous dans votre poste.

Désolé, c'est la première fois que j'écris sur ce forum, je le ferai bien la prochaine fois.
 

Bonne journée !

Où puis-je trouver un robot pour MT4 permettant de définir le SL et le TP après l'ouverture d'une position?

 
churkin:

Bonne journée !

Où puis-je trouver un robot pour MT4 permettant de définir le SL et le TP après l'ouverture d'une position?

Ici.
 

Pouvez-vous me dire comment déterminer dans le code si cet instrument a un swap à la fin de la journée ?

 
Ivan Katsko:

Pouvez-vous me dire comment déterminer dans le code si cet instrument a un swap à la fin de la journée ?

Pour regarder les swaps à la fin de la journée...

SymbolInfoDouble(Symbol(),SYMBOL_SWAP_SHORT) - échanger des positions courtes

SymbolInfoDouble(Symbol(),SYMBOL_SWAP_LONG) - échange de positions longues

SymbolInfoDouble(Symbol(),SYMBOL_SWAP_MODE) - modèle de calcul du swap

SymbolInfoDouble(Symbol(),SYMBOL_SWAP_ROLLOVER3DAY)- jour de la semaine pour le calcul du triple swap

 
Artyom Trishkin:

Pour regarder les échanges à la fin de la journée...

SymbolInfoDouble(Symbol(),SYMBOL_SWAP_SHORT) - échanger des positions courtes

SymbolInfoDouble(Symbol(),SYMBOL_SWAP_LONG) - échange de positions longues

SymbolInfoDouble(Symbol(),SYMBOL_SWAP_MODE) - modèle de calcul du swap

SymbolInfoDouble(Symbol(),SYMBOL_SWAP_ROLLOVER3DAY)- jour de la semaine pour le calcul du triple swap

Par référence SYMBOL_SWAP_MODE Pour la fonction SymbolInfoInteger(). Dans les variables globales, définir int ssm = SymbolInfoInteger(Symbol(),SYMBOL_SWAP_MODE) ; Dans le code : Print("ssm = ",ssm) ; Le résultat aussi bien sur FC sans swap que sur FC avec swap = 0 (voilà la question). Je veux savoir s'il y aura un échange ou non, afin de pouvoir prendre une décision en conséquence.



 
Ivan Katsko:

Par référence SYMBOL_SWAP_MODE Pour la fonction SymbolInfoInteger(). Dans le jeu de variables globales int ssm = SymbolInfoInteger(Symbol(),SYMBOL_SWAP_MODE) ; Dans le code : Print("ssm = ",ssm) ; Le résultat à la fois sur le DC sans swap et sur le DC avec swap = 0 (voici la question). Je voudrais savoir s'il y aura un échange ou non, afin de pouvoir prendre une décision appropriée.

Certaines variables de l'environnement de marché, similaires à celles de MT5, ne sont pas toujours correctement renseignées dans MT4. Par conséquent, nous devons utiliser MarketInfo dans MT4. Et le type de calcul des swaps pour MT4 est, dans l'écrasante majorité des cas, des points. C'est pourquoi nous obtenons 0. Donc, si vous demandez des informations par MarketInfo (nous devons utiliser cette ancienne méthode plus souvent dans MT4), vous obtiendrez la valeur correspondant à la référence :

MODE_SWAPTYPE

26

Méthode de calcul des swaps. 0 - en points; 1 - en monnaie de base de l'instrument ; 2 - en pourcentages ; 3 - en monnaie de garantie.

 
Ihor Herasko:

Certaines variables de l'environnement de marché, similaires à celles de MT5, ne sont pas toujours correctement renseignées dans MT4. C'est pourquoi nous devons utiliser MarketInfo dans MT4 à l'ancienne. Et le type de calcul des swaps pour MT4 est, dans l'écrasante majorité des cas, des points. C'est pourquoi nous obtenons 0. Donc, si nous demandons des informations par MarketInfo (nous devons utiliser cette ancienne méthode plus souvent dans MT4), nous obtiendrons juste la valeur correspondant à la référence :

MODE_SWAPTYPE

26

Méthode de calcul des swaps. 0 - en points; 1 - en monnaie de base de l'instrument ; 2 - en pourcentage ; 3 - en monnaie de garantie.

Le SWAP - tel que je le comprends, est une procédure du centre de négociation qui consiste en ce qui suit : s'il y a des ordres ouverts à la fin de la journée, ils sont fermés et de nouveaux ordres sont ouverts à la place. Dans le cas contraire, le dealing desk ne ferme/ouvre pas les ordres mais facture le SWAP (+/-). J'essaie de déterminer : le SWAP sera-t-il facturé, ou les commandes seront-elles fermées/ouvertes ? Appliqué :

double ssm_l = MarketInfo(Symbol(), MODE_SWAPLONG ) ;

double ssm_s = MarketInfo(Symbol(), MODE_SWAPSHORT) ;

Print("ssm_l = ",ssm_l) ;

Print("ssm_s = ",ssm_s) ;

et il s'est avéré qu'il existe certaines valeurs numériques en CA, où le SWAP est facturé, et en CA, où le SWAP n'est pas facturé. Il est donc impossible de déterminer si SWAP est chargé ou non.


 
Ivan Katsko:

SWAP - si je comprends bien, la procédure du centre de négociation est la suivante : si à la fin de la journée il y a des ordres ouverts, ils sont fermés et de nouveaux ordres sont ouverts à la place. Sinon, le centre de négociation ne ferme/ouvre pas les ordres, mais facture le SWAP (+/-). J'essaie de déterminer : le SWAP sera-t-il facturé, ou les commandes seront-elles fermées/ouvertes ?

Cette méthode de calcul du swap est appelée rollover. Dans MT4, il n'y a aucun moyen de le savoir de manière programmatique. Ce n'est qu'indirectement, après que le service de minuit avec les commandes du marché du travail a eu lieu. Il y a beaucoup de petits problèmes de ce genre, mais plutôt désagréables, dans MT4. Dans MT5, il y en a un peu moins, mais ils existent toujours.

Appliqué :

double ssm_l = MarketInfo(Symbol(), MODE_SWAPLONG ) ;

double ssm_s = MarketInfo(Symbol(), MODE_SWAPSHORT) ;

Print("ssm_l = ",ssm_l) ;

Print("ssm_s = ",ssm_s) ;

et il s'est avéré qu'il existe certaines valeurs numériques en CA, où le SWAP est facturé, et en CA, où le SWAP n'est pas facturé. Nous ne pouvons donc pas décider si SWAP est facturé ou non aux sociétés de courtage.


Il s'agit de valeurs de swap en pips. Vous devrez les convertir dans la devise de dépôt en procédant à partir du volume d'ordre du marché. Nous aurons alors la taille réelle de l'échange.

Raison: