
05.02.24
|
Neues Mitglied
|
|
Registriert seit: Jul 2019
Beiträge: 16
|
|
Probleme mit Ausführung im Code
Hi,
ich habe einen Code geschrieben. Es soll jeden Tag um 17.30 ein trade eröffnet werden buy. Dieser soll am nächsten Tag um 8.50 Uhr geschlossen werden.
Im Backtest wird mir jedoch nur ein Trade eröffnet in nem Zeitraum von 2 Monaten und nicht geschlossen am nächsten Tag
Kann da mal wer über den Code schauen?
Code:
// Handelszeiten
input int openHour = 17;
input int openMinute = 30;
input int closeHour = 8;
input int closeMinute = 50;
// Globale Variable für die Handelsaktivität
bool canOpenTrade = true;
int start() {
// Überprüfe, ob es Zeit ist, einen Trade zu eröffnen
if (canOpenTrade && Hour() == openHour && Minute() == openMinute) {
// Eröffne einen Kauf-Trade
int ticket = OrderSend(Symbol(), OP_BUY, lotSize, Ask, 3, 0, 0, "Buy Order", 0, 0, Green);
if (ticket > 0) {
canOpenTrade = false; // Setze die Variable auf false, um weitere Trades zu verhindern
Print("Kauf-Trade erfolgreich eröffnet. Ticket: ", ticket);
} else {
Print("Fehler beim Öffnen des Kauf-Trades. Fehlercode: ", GetLastError());
}
}
// Überprüfe, ob es Zeit ist, den Trade zu schließen
if (!canOpenTrade && Hour() == closeHour && Minute() == closeMinute) {
// Schließe alle offenen Trades
for (int i = OrdersHistoryTotal() - 1; i >= 0; i--) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES) && OrderSymbol() == Symbol() && OrderMagicNumber() == 0) {
bool closed = OrderClose(OrderTicket(), OrderLots(), Bid, 3, Red);
if (closed) {
canOpenTrade = true; // Setze die Variable auf true, um am nächsten Tag einen neuen Trade zu ermöglichen
Print("Trade erfolgreich geschlossen.");
} else {
Print("Fehler beim Schließen des Trades. Fehlercode: ", GetLastError());
}
}
}
}
return 0;
}
|