Scripts: BuySell + SL + TP - page 2

 
emmapeel #:

merci pour cet outil très utile. juste un problème : je ne peux pas modifier les LOTS (double Lots = 0.01 ; // Lots (en pips)).

Je reçois toujours 0.01 lorsque j'ouvre une position. Je ne suis pas programmeur.

Merci pour votre temps.

"Les scripts, comme les autres programmes, peuvent avoir desvariables d'entrée. Cependant, pour les scripts, la boîte de dialogue d'entrée des paramètres n'est pas affichée par défaut, même si le script définit desentrées. Pour s'assurer que la boîte de dialogue des propriétés s'ouvre avant l'exécution du script, la directive #property script_show_inputsdoit être appliquée. Elle est prioritaire surscript_show_confirm, c'est-à-dire que la sortie de la boîte de dialogue désactive la demande de confirmation (puisque la boîte de dialogue elle-même joue un rôle similaire). La directive appelle une boîte de dialogue même s'il n'y a pas de variables d'entrée. Elle peut être utilisée pour montrerà l'utilisateur la description et la version du produit (elles sont affichées dans l' onglet Common)". (Scripts - Création de programmes d'application - Programmation MQL5 pour traders).

Remplacer :

double Lots = 0.01;

par :

#property script_show_inputs

input double Lots = 0.20;
Cela permet d'obtenir un paramètre ajustable lors de l'attachement du script à un graphique.
MQL5 Book: Input variables / Programming fundamentals
MQL5 Book: Input variables / Programming fundamentals
  • www.mql5.com
When launched, all programs in MQL5 can inquire parameters from the user. The only exception is libraries that are not executed independently, but...
 
Utilisez lebouton CODE (Alt-S) lorsque vous insérez du code.

Un modérateur a corrigé le formatage cette fois-ci. À l'avenir, veuillez formater le code correctement ; les messages contenant un code mal formaté pourraient être supprimés.

Merci pour votre réponse.

J'ai modifié le code :

#property script_show_inputs

input double Lots = 0.20;      // Lots (en pips)
double StopLoss = 200;   // stop loss (en pips)
double TakeProfit = 400; // take profit (en pips)

mais

error : 'Lots' - constant cannot be modified buy+sl+tp --------.mq5 53 4

Dossiers :
 
emmapeel #:

Merci de votre réponse.

J'ai modifié le code :

mais

error : 'Lots' - constant cannot be modified buy+sl+tp --------.mq5 53 4

Le code de l'OP est alambiqué avec des variables globales (GV). Avec la directive show inputs, il n'y a pas besoin de GV. De plus, il n'y a pas de multiplicateur de points pour convertir les points en pips. Dans le code joint à ce post, j'ai ajouté les entrées SL et TP, recommenté les entrées SL et TP en points, et supprimé les GV. Ce code se compile mais n'est pas testé.

Dossiers :