![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Nein, um zu überprüfen, ob es sich um ein Demokonto oder ein Live-Konto handelt, wird der Wettbewerb selten verwendet.
Lot max kann sehr einfach sein.
Danke für die prompte Antwort.
Ich muss nur Losgröße max nur Demo-Konto anwenden.
(aber natürlich tatsächlich Live-Konto - das ist nur für den Test - ich will versuchen, wenn Demo-Konto, wenn Losgröße besser dann Losgröße max wird nicht öffnen Verkauf und Kauf-Aufträge - aber wenn Live-Konto oder Wettbewerb-Konto - so dass diese Losgröße max wird nicht gelten beide (live oder Wettbewerb) )
Könnte ich Switch Operator verwenden?
Vielen Dank.
( Ich werde es später versuchen. )
// calculate lotsize here
//---
// check if lotsize is not too high
if(lotsize>lotsize_max)
{
lotsize=losize_max;
}
Ich möchte fragen - Sie wollen sagen - wenn " lotsize > lotsize_max " sollte die Losgröße für das Demokonto" lotsize = lotsize_max " sein? Verstehe ich Sie richtig, bitte?
Danke vielmals.
( Ich arbeite daran )
Ich möchte fragen - Sie wollen sagen - wenn " lotsize > lotsize_max " sollte die Losgröße für das Demokonto" lotsize = lotsize_max " sein? Verstehe ich Sie richtig, bitte?
Vielen Dank!
( Ich arbeite daran )
Versuchen Sie
Sehr schön! Vielen Dank dafür.
----
Funktion mich fragen sollte - Ja oder Nein- ich denke, das könnte besser sein für jetzt. ( Ich brauche nur Erfahrung für diese Funktion, wie es für mich auf Demo (natürlich live) Konto funktioniert - ich werde diese Funktion am Montag testen - wenn ich diesen Teil des Codes fertigstellen kann )
( jetzt weiß ich nicht genug über diese Funktion - ich hoffe, ich kann bis morgen tun )
Jeder gute Kommentar wäre eine große Hilfe für mich.
Vielen Dank im Voraus.
Ja, natürlich geht es auch ohne den Lotsmax und wenn Sie dann später Ihre Strategie verfeinern wollen oder das Risiko begrenzen wollen, können Sie ihn verwenden, so dass er im Moment keine Notwendigkeit ist.
Sie können es einfach eliminieren, ich wollte Ihnen nur einige Zeilen meines Sicherheitsmechanismus zeigen.
Wenn Sie eine Bestätigung wünschen, können Sie eine
https://docs.mql4.com/common/messagebox
int result=MessageBox(" This is a Messagbox, Do you want to proceed?","Warning",MB_YESNO);
if(result==IDYES)
{
// Yes Pressed
Print("OK");
}
if(result==IDNO)
{
// No Pressed
}
Hier sind die wichtigsten Flags, die Sie in der Messagebox-Funktion nach der Nachricht setzen:
Konstante
Wert
Beschreibung
MB_OK
0x00000000
Nachrichtenfenster enthält nur eine Schaltfläche: OK. Voreinstellung
MB_OKCANCEL
0x00000001
Das Meldungsfenster enthält zwei Schaltflächen: OK und Abbrechen
MB_ABORTRETRYIGNORE
0x00000002
Das Meldungsfenster enthält drei Schaltflächen: Abbrechen, Wiederholen und Ignorieren
MB_YESNOCANCEL
0x00000003
Das Meldungsfenster enthält drei Schaltflächen: Ja, Nein und Abbrechen
MB_YESNO
0x00000004
Das Meldungsfenster enthält zwei Schaltflächen: Ja und Nein
MB_RETRYCANCEL
0x00000005
Das Meldungsfenster enthält zwei Schaltflächen: Wiederholen und Abbrechen
MB_CANCELTRYCONTINUE
0x00000006
Das Meldungsfenster enthält drei Schaltflächen: Abbrechen, Erneut versuchen, Fortsetzen
Und hier die Rückgabewerte:
Konstante
Wert
Beschreibung
IDOK
1
Schaltfläche "OK" wurde gedrückt
IDCANCEL
2
Die Taste "Abbrechen" wurde gedrückt
IDABBRUCH
3
Die Taste "Abbruch" wurde gedrückt
IDRETRY
4
Die Taste "Wiederholung" wurde gedrückt
IDIGNORE
5
Die Schaltfläche "Ignorieren" wurde gedrückt
IDYES
6
Die Schaltfläche "Ja" wurde gedrückt
IDNO
7
Die Taste "Nein" wurde gedrückt
IDTRYAGAIN
10
Schaltfläche "Nochmal versuchen" wurde gedrückt
IDCONTINUE
11
Schaltfläche "Weiter" wurde gedrückt
Messagebox() funktioniert nicht in der Testversion.
Ja natürlich geht es auch ohne den Lotsmax und wenn man dann später seine Strategie verfeinern will oder das Risiko begrenzen will, kann man es verwenden, es ist also im Moment keine Notwendigkeit.
Sie können es einfach eliminieren, ich wollte Ihnen nur einige Zeilen meines Sicherheitsmechanismus zeigen.
Vielen Dank für Ihre großartige Hilfe.
Also, ich habe gerade versucht, wie unten Methode, bin ich richtig machen, bitte?
(Ich musste fragen, bevor ich sie in meine Haupt-.mq4-Datei einfüge - ich arbeite daran)
Vielen Dank im Voraus.
{
result_message=MessageBox("Do you want to proceed?","Warning",MB_YESNO);
if(result_message==IDYES)
{
ordersell(); // Send Order function here
Print("Clicked YES"," Sell Order Applied");
}
if(result_message==IDNO)
{
Print("Clicked NO"," Sell Order Canceled");
}
ObjectSetInteger(0,sparam,OBJPROP_STATE,false);
}
Nur ein Stil-Tipp, der Ihren Code (sehr, sehr geringfügig) effizienter machen wird... aber hey, es summiert sich alles!
Sie haben ein Nachrichtenfeld mit 2 Schaltflächen. Wenn es nicht IDYES ist, muss es IDNO sein (oder die Funktion wurde nicht erfolgreich abgeschlossen).
Es ist also nicht nötig, result_message zweimal zu testen.
{
result_message=MessageBox("Do you want to proceed?","Warning",MB_YESNO);
if(result_message==IDYES)
{
ordersell(); // Send Order function here
Print("Clicked YES"," Sell Order Applied");
}
else
{
Print("Clicked NO"," Sell Order Canceled");
}
ObjectSetInteger(0,sparam,OBJPROP_STATE,false);
}
Wenn Sie es lieber schriftlich sehen möchten, verwenden Sie eine 'else if'-Anweisung:
{
result_message=MessageBox("Do you want to proceed?","Warning",MB_YESNO);
if(result_message==IDYES)
{
ordersell(); // Send Order function here
Print("Clicked YES"," Sell Order Applied");
}
else if(result_message==IDNO)
{
Print("Clicked NO"," Sell Order Canceled");
}
ObjectSetInteger(0,sparam,OBJPROP_STATE,false);
}
Nur ein Stil-Tipp, der Ihren Code (sehr, sehr geringfügig) effizienter machen wird... aber hey, es summiert sich alles!
Sie haben ein Nachrichtenfeld mit 2 Schaltflächen. Wenn es nicht IDYES ist, muss es IDNO sein (oder die Funktion wurde nicht erfolgreich abgeschlossen).
Es ist also nicht nötig, result_message zweimal zu testen.
Nochmals vielen Dank für alles.
Jetzt kann ich sie in Haupt-EA's einbauen.
( auch ich brauche Erfahrung für MessageBox() )
Nochmals vielen Dank für alles.
Jetzt kann ich sie in Haupt-EA's einbauen.
( auch ich brauche Erfahrung für MessageBox() )