Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools
Zurück   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 4 > Programmierung MQL4

Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4.

Login
Benutzername:
Kennwort:


Statistik
Themen: 4982
Beiträge: 43280
Benutzer: 7.231
Aktive Benutzer: 69
Links: 84
Wir begrüßen unseren neuesten Benutzer: JinjianYu
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor 4 Tagen
- JinjianYu
vor 6 Tagen
- ben007
vor 6 Tagen
- sirius 888
vor einer Woche
- BessieGove
vor einer Woche
- RoKo

Onlineuser
'Wer ist online' anzeigen Benutzer: 0
Gäste: 102
Gesamt: 102
Team: 0
Team:  
Benutzer:  
Freunde anzeigen

Empfehlungen

Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 05.02.24
Neues Mitglied
 
Registriert seit: Jul 2019
Beiträge: 16
Alex60 befindet sich auf einem aufstrebenden Ast
Standard 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;
}
  #2 (permalink)  
Alt 05.02.24
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.738
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

for (int i = OrdersHistoryTotal() - 1; i >= 0; i--) {

ersetzen durch

for (int i = OrdersTotal() - 1; i >= 0; i--) {

"Setze die Variable auf true, um am nächsten Tag einen neuen Trade zu ermöglichen"

Da 08:50 geschlossen wurde und die Variable canOpenTrade = true; ist, würde am selben Tag um 17:30 wieder ein Trade geöffnet werden.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #3 (permalink)  
Alt 08.02.24
Neues Mitglied
 
Registriert seit: Jul 2019
Beiträge: 16
Alex60 befindet sich auf einem aufstrebenden Ast
Standard

Super Danke dir
Thema geschlossen

Lesezeichen

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus




Alle Zeitangaben in WEZ +2. Es ist jetzt 16:29 Uhr.





Suchmaschine - Reisen - Wavesnode - Facebook Forum - Spam Firewall
-----------------------------------------------------------------------------------------------------------------------------
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
SEO by vBSEO 3.6.1
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum
MetaTrader bzw. MetaTrader 4 und MetaTrader 5 sind eingetragene Marken der MetaQuotes Software Corp.
-----------------------------------------------------------------------------------------------------------------------------