Questions des débutants MQL5 MT5 MetaTrader 5 - page 409

 
mefos:
Nous avons besoin d'un conseiller simple
Et en règle générale, ces demandes de freelance contiennent toujours le mot "simple".
 
Artyom Trishkin:
Vous devez comparer le nombre de positions suivies sur le dernier tick avec le nombre sur le tick actuel. Si la valeur actuelle est inférieure, enregistrez (mémorisez) la valeur actuelle des positions suivies comme "passée" et traitez le fait de fermer.
Merci. Je sais comment faire le suivi par moi-même. Je pensais juste qu'il pourrait y avoir un gestionnaire d'événement.
 
Leanid Aladzyeu:

Je ne comprends pas. Quelle valeur voulez-vous obtenir ?

Et ce que vous avez écrit, je l'ai lu comme ceci

{

Ouverture d'une commande ;

Si l'ordre s'ouvre, alors

TotalOrder = TotalOrder+1 ;

}

) par défaut totalOrder = 0, mais après chaque ouverture d'un ordre la valeur augmentera, après 10 ouvertures (la valeur sera exactement 10) le compteur de toutes les positions ouvertes (pas de vérification par type, par Magik et par symbole = il ajoutera absolument tous les ordres ouverts)

Et la condition suivante ressemble à ceci

si TotalOrder n'est pas égal àOrdersTotal {}

C'est à peu près ce que j'ai écrit)
 

Bonjour, est-il possible de sélectionner des instruments à partir d'une liste d'instruments dans une variable externe dans un indicateur ou un Expert Advisor ?

Je dois les saisir manuellement.

chaîne d'entrée instr_1 = "ED-9.15" ;

chaîne d'entrée instr_2 = "Si-9.15" ;

chaîne d'entrée instr_3 = "BR-8.15" ;

Sincèrement Alexey.

 
twiling1983:

Bonjour, est-il possible de sélectionner des instruments à partir d'une liste d'instruments dans une variable externe dans un indicateur ou un Expert Advisor ?

Je dois les taper manuellement.

chaîne d'entrée instr_1 = "ED-9.15" ;

chaîne d'entrée instr_2 = "Si-9.15" ;

chaîne d'entrée instr_3 = "BR-8.15" ;

Sincèrement Alexey.

Bonjour. Directement - pas sûr, mais vous pouvez, par exemple, comme ceci :

enum ENUM_USED_SYMBOL
        {
         EURUSD = 0,
         GBPUSD,
         USDCHF,
         USDJPY
        };

const string symbols[ 4 ] = { "EURUSD", "GBPUSD", "USDCHF", "USDJPY" };
input ENUM_USED_SYMBOL = EURUSD;
string usedSymbol = "";		// Используемый символ
switch( inpSymbol )		// Всю эту конструкцию лучше обернуть в функцию, т.к. повторяться будет несколько раз
        {
         case EURUSD: usedSymbol = symbols[ 0 ]; break;
         case GBPUSD: usedSymbol = symbols[ 1 ]; break;
         case USDCHF: usedSymbol = symbols[ 2 ]; break;
         case USDJPY: usedSymbol = symbols[ 3 ]; break;
         default: Print( "Неизвестный символ!" );
        }
 
Tapochun:

Bonjour. Je ne suis pas sûr directement, mais vous pourriez, par exemple, faire ceci :

Merci mais alors il est plus facile pour moi de recompiler le fichier tous les 3 mois et de spécifier de nouveaux futurs =)
 
twiling1983:
Merci mais alors il est plus facile pour moi de recompiler le fichier tous les 3 mois et de spécifier de nouveaux futurs =)
Oui, ça ressemble à des béquilles, mais... comme option...
 

Bonjour. Comment faire pour que la fenêtre d'un indicateur affiche de force des valeurs jusqu'à 10 000 décimales, elle n'affiche que des valeurs jusqu'aux dixièmes, bien qu'il n'y ait pas de normalisation dans le code.

http://i.shotnes.com/u/441/0813/1vyds1z0.15y.png

Salutations Alexey.

UPD a trouvé la réponse.

IndicatorSetInteger(INDICATOR_DIGITS,5) ;

 
twiling1983:

Bonjour. Comment faire pour que la fenêtre d'un indicateur affiche de force des valeurs jusqu'à 10 000 décimales, elle n'affiche que des valeurs jusqu'aux dixièmes, bien qu'il n'y ait pas de normalisation dans le code.

http://i.shotnes.com/u/441/0813/1vyds1z0.15y.png

Salutations Alexey.

Veuillez utiliser les outils intégrés au forum pour coller des images :Forum : Comment coller une image?
 

Dites-moi, s'il vous plaît, si vous utilisez la bibliothèque standard, lorsque vous obtenez Ask et Bid, est-il nécessaire de faire mysymbol.RefreshRates() ;

Par exemple, dois-je rafraîchir les données ou, pour les données de la bibliothèque, ne dois-je pas les rafraîchir ?

mysymbol.RefreshRates();
 double ask =mysymbol.Ask();
 double bid =mysymbol.Bid();

ou
 double ask =mysymbol.Ask();
 double bid =mysymbol.Bid();