//+------------------------------------------------------------------+
//| SimpleEA.mq5|
//| Copyright 2024, MetaTrader 5 |
//| Autor: Dein Name |
//+------------------------------------------------------------------+
#property strict
// Parameter für die Order
input double LotSize = 0.1; // Lotgröße, kleiner Wert für Tests
input int StopLossPoints = 40; // Stop Loss in Punkten (Pips)
input int TakeProfitPoints = 150; // Take Profit in Punkten (Pips)
//+------------------------------------------------------------------+
//| Expert Tick Funktion |
//+------------------------------------------------------------------+
void OnTick()
{
// Aktuelle Zeit abrufen und in eine Struktur umwandeln
datetime currentTime = TimeCurrent();
MqlDateTime timeStruct;
TimeToStruct(currentTime, timeStruct);
// Stunden und Minuten abrufen
int currentHour = timeStruct.hour;
int currentMinute = timeStruct.min;
// Prüfen, ob es 15:29 Uhr ist
if(currentHour == 15 && currentMinute == 29)
{
// Überprüfen, ob keine offene Position vorhanden ist
if (PositionsTotal() == 0)
{
// Preis für SL und TP berechnen
double point = SymbolInfoDouble(_Symbol, SYMBOL_POINT); // Punktwert des Symbols
double price = SymbolInfoDouble(_Symbol, SYMBOL_ASK); // Kaufpreis (Ask)
double sl = price - StopLossPoints * point; // Stop Loss
double tp = price + TakeProfitPoints * point; // Take Profit
// MQL5 OrderSend-Struktur verwenden
MqlTradeRequest request;
MqlTradeResult result;
// Struktur zurücksetzen
ZeroMemory(request);
ZeroMemory(result);
// Order konfigurieren
request.action = TRADE_ACTION_DEAL; // Ordertyp: Marktausführung
request.symbol = _Symbol; // Symbol
request.volume = LotSize; // Lotgröße
request.type = ORDER_TYPE_BUY; // Kauf-Order
request.price = price; // Kaufpreis (Ask)
request.sl = sl; // Stop Loss
request.tp = tp; // Take Profit
request.deviation = 10; // Slippage (Erhöht für bessere Ausführung)
request.magic = 123456; // Magic Number
// Order senden
if (OrderSend(request, result))
{
if (result.retcode == TRADE_RETCODE_DONE)
{
Print("Order erfolgreich gesendet. Ergebniscode: ", result.retcode);
}
else
{
Print("OrderSend fehlgeschlagen mit Code: ", result.retcode, " - ", GetLastError());
}
}
else
{
Print("OrderSend fehlgeschlagen: ", result.retcode, " - ", GetLastError());
}
}
else
{
Print("Es sind bereits Positionen offen.");
}
}
else
{
Print("Aktuelle Zeit: ", currentHour, ":", currentMinute, " - Keine Order ausgeführt.");
}
}
//+------------------------------------------------------------------+
- Handelskonstanten - Typen der Handelsoperationen
- Datenstrukturen - Struktur der Handelsanforderung
- Handelsfunktionen - OrderSend
- Bitte hier nicht schreien (Großbuchstaben), ist unhöflich.
- Wen ein EA (Programm) nicht macht, was es soll, lässt man ihn im Debugger laufen:
https://www.metatrader5.com/de/metaeditor/help/development/debug
Zur Fehlerbehebung von MQL5-Programmen (Debugging) : https://www.mql5.com/de/articles/654
Einführung in MQL5: Schreiben eines einfachen Expert Advisor und benutzerdefinierten Indikators, Siehe Ende: Starten und Debuggen https://www.mql5.com/de/articles/35
Die Fehlerverarbeitung und Protokollierung in MQL5: https://www.mql5.com/de/articles/2041
https://www.mql5.com/de/articles/272
Fehler finden und Protokollierung https://www.mql5.com/de/articles/150 - Hier noch Tipps für Anfänger:
Quickstart for newbies: https://www.mql5.com/de/articles/496
und: https://www.mql5.com/de/articles/100
(Schrittweiser Leitfaden für Anfänger zum Schreiben eines Expert Advisors in MQL5)
Kochbücher: https://www.mql5.com/de/search#!keyword=kochbuch
https://www.mql5.com/en/forum/447439
https://www.mql5.com/en/forum/9950
Bedenke, es gibt fast nichts, was nicht schon für MT4/MT5 programmiert wurde => Suchen ist unsere AI: https://www.mql5.com/de/search
Code-Debugging - Programme entwickeln - MetaEditor Hilfe
- www.metatrader5.com
MetaEditor hat einen eingebauten Debugger, mit dem Sie die Programmausführung Schritt für Schritt (durch einzelne Funktionen) ü...
Sie können den EA komplimentieren im MQL Writer, öffnen sie dazu einfach den Source Code und es wird sich automatisch öffnen im Startbildschirm ihres Computers. (Auf Komplimentieren klicken) Dann die Fehler ausbessern Im Journal lesen und gegebenenfalls im Internet den Fehlercode Nachschlagen. (Neues Schreiben anstelle des falschen Codes). Meistens sind die Fehler schon bekannt und sie können es schnell ausbessern.
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