Skripte: BuySell + SL + TP - Seite 2

 
emmapeel #:

Danke für Ihr nützliches Tool. Nur ein Problem: ich kann die LOTS nicht ändern (double Lots = 0.01; // Lots (in Pips)).

Ich erhalte immer 0,01, wenn ich eine Position eröffne. Ich bin kein Programmierer.

Vielen Dank für Ihre Zeit.

"Skripte können, wie andere Programme auch,Eingabevariablen haben. Bei Skripten wird jedoch der Parameter-Eingabe-Dialog standardmäßig nicht angezeigt, selbst wenn das SkriptEingabendefiniert.Um sicherzustellen, dass der Eigenschaftsdialog vor der Ausführung des Skripts geöffnet wird,sollte die Direktive #property script_show_inputsangewendet werden. Sie hat Vorrang vorscript_show_confirm, d.h. die Ausgabe des Dialogs deaktiviert die Bestätigungsaufforderung (da der Dialog selbst eine ähnliche Funktion hat). Die Direktive ruft einen Dialog auf, auch wenn keine Eingabevariablen vorhanden sind. Sie kann verwendet werden, umdem Benutzer die Produktbeschreibung und die Version anzuzeigen (sie werden auf der Registerkarte Allgemein angezeigt)." (Skripte - Erstellen von Anwendungsprogrammen - MQL5-Programmierung für Trader).

Ersetzen:

double Lots = 0.01;

mit:

#property script_show_inputs

input double Lots = 0.20;
Damit erhalten Sie eine anpassbare Einstellung, wenn Sie das Skript an ein Diagramm anhängen.
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...
 
Verwenden Sie dieCODE-Taste (Alt-S), wenn Sie Code einfügen.

Ein Moderator hat die Formatierung dieses Mal korrigiert. Bitte formatieren Sie den Code in Zukunft richtig; Beiträge mit unsachgemäß formatiertem Code können entfernt werden.

Vielen Dank für Ihre Antwort.

Ich habe den Code geändert:

#property script_show_inputs

input double Lots = 0.20;      // Lose (in Pips)
double StopLoss = 200;   // Stop Loss (in Pips)
double TakeProfit = 400; // Gewinnmitnahme (in Pips)

aber

Fehler: 'Lots' - Konstante kann nicht geändert werden buy+sl+tp --------.mq5 53 4

Dateien:
 
emmapeel #:

Vielen Dank für Ihre Antwort.

Ich habe den Code geändert:

aber

Fehler: 'Lots' - Konstante kann nicht geändert werden buy+sl+tp --------.mq5 53 4

Der Code des Auftraggebers ist mit GlobalVariablen (GVs) verschachtelt. Mit der Direktive show inputs besteht keine Notwendigkeit für GV's. Außerdem gibt es keinen Punktmultiplikator, um Punkte in Pips umzuwandeln. In dem an diesen Beitrag angehängten Code habe ich SL- und TP-Eingänge hinzugefügt, die SL- und TP-Eingänge zu Punkten umkommentiert und die GVs gelöscht. Dieser Code lässt sich kompilieren, ist aber nicht getestet.

Dateien: