Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools
Zurück   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 5 > Programmierung MQL5

Programmierung MQL5 Hier gehts rund ums Programmieren in MQL5.

Login
Benutzername:
Kennwort:


Statistik
Themen: 4973
Beiträge: 43249
Benutzer: 7.221
Aktive Benutzer: 81
Links: 84
Wir begrüßen unseren neuesten Benutzer: Thomas75
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor 2 Stunden
- Thomas75
vor 16 Stunden
- JosephTK
vor 2 Tagen
- Hopfen&Mal...
vor 3 Tagen
- frankmicha...
vor einer Woche
- DFeck

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

Empfehlungen

Like Tree3Likes
  • 2 Post By TraderMike
  • 1 Post By Ca
Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 16.06.22
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.733
traderdoc befindet sich auf einem aufstrebenden Ast
Standard Ende der Session

Ich suche in den Untiefen des MQL5 eine Funktion, die das Ende der Handelszeit eines Handelsinstrumentes am Tag zurückgibt.
Klar Forex von Montag bis Donnerstag gibt es kein "Ende", aber sehr wohl am Freitag.
Noch bedeutender ist das bei z.B. Indices, Rohstoffen oder allgemein CFDs.

Hat jemand auf die Schnelle einen Tipp?

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #2 (permalink)  
Alt 16.06.22
Mitglied
 
Registriert seit: Jun 2022
Beiträge: 42
TraderMike befindet sich auf einem aufstrebenden Ast
Standard

SymbolInfoSessionQuote()

https://www.mql5.com/en/docs/marketi...fosessionquote

meinst du das?

Mike
traderdoc and Ca$hDigger like this.
  #3 (permalink)  
Alt 17.06.22
Premium Mitglied
 
Registriert seit: Jun 2013
Beiträge: 364
Ca$hDigger befindet sich auf einem aufstrebenden Ast
Standard

Oder alternativ SymbolInfoSessionTrade. Für mich wäre neben der Kursstellung noch entscheidender, kann ich im Zielzeitraum eine Order öffnen oder nicht.
https://www.mql5.com/en/docs/marketi...fosessiontrade

ps: genau genommen gibt es bei FX auch täglich "ein Ende", jede Nacht eine kleine Pause.
traderdoc likes this.
  #4 (permalink)  
Alt 17.06.22
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.733
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Danke, ich werde beide Funktionen mal implementieren.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #5 (permalink)  
Alt 17.06.22
Benutzerbild von Indikator-Trading
Premium Mitglied
 
Registriert seit: May 2020
Ort: Bielefeld
Beiträge: 345
Indikator-Trading befindet sich auf einem aufstrebenden Ast
Standard

du musst beachten, das dir die o.g. Funktionen nur die Start und Endzeiten der angegebenen Session zurück geben. Manche Symbole haben aber mehrere Sessions. In meiner Implementierung habe ich dreifach Arrays genommen, wovon nur das erste Element dynamisch ist. Eleganter wäre eine Struct als dynamisches Array (für die Symbole) in dem die Zeitarrays ebenfalls dynamisch wären. Den Umweg mit der Struct muss man nur machen, da MT4/5 ja leider für ein mehrfaches Array nur einen Teil dynamisch zulässt. Ich entwickle immer nur EAs, welche Multisymbol fähig sein. Für einfache EAs, welche nur auf einem Symbol laufen sollen, kannst du ja den Code simpler gestalten.

Das Anpassen der Variablen ist ja kein Problem für dich, daher hier mein Code für dich:
Code:
bool SetupTradeTimeSessionArrays()
{
  for(int i = 0 ; i < NumberOfTradeableSymbols ; i++)
  {
    for(int Day = 0 ; Day <= 6 ; Day++)
    {
      TradeTimeStart_Session[i][Day][0] = -1;
      TradeTimeEnd_Session[i][Day][0] = -1;
      TradeTimeStart_Session[i][Day][1] = -1;
      TradeTimeEnd_Session[i][Day][1] = -1;
      TradeTimeStart_Session[i][Day][2] = -1;
      TradeTimeEnd_Session[i][Day][2] = -1;
      TradeTimeStart_Session[i][Day][3] = -1;
      TradeTimeEnd_Session[i][Day][3] = -1;
      TradeTimeStart_Session[i][Day][4] = -1;
      TradeTimeEnd_Session[i][Day][4] = -1;
      switch(GetNumberOfSessionsOfSymbol(i, (ENUM_DAY_OF_WEEK)Day,true))
      {
      case 5:
        SymbolInfoSessionTrade(SymbolArray[i], (ENUM_DAY_OF_WEEK)Day, 4, TradeTimeStart_Session[i][Day][4], TradeTimeEnd_Session[i][Day][4]);
      case 4:
        SymbolInfoSessionTrade(SymbolArray[i], (ENUM_DAY_OF_WEEK)Day, 3, TradeTimeStart_Session[i][Day][3], TradeTimeEnd_Session[i][Day][3]);
      case 3:
        SymbolInfoSessionTrade(SymbolArray[i], (ENUM_DAY_OF_WEEK)Day, 2, TradeTimeStart_Session[i][Day][2], TradeTimeEnd_Session[i][Day][2]);
      case 2:
        SymbolInfoSessionTrade(SymbolArray[i], (ENUM_DAY_OF_WEEK)Day, 1, TradeTimeStart_Session[i][Day][1], TradeTimeEnd_Session[i][Day][1]);
      case 1:
        SymbolInfoSessionTrade(SymbolArray[i], (ENUM_DAY_OF_WEEK)Day, 0, TradeTimeStart_Session[i][Day][0], TradeTimeEnd_Session[i][Day][0]);
        break;

      case 0:
        Print("Symbol ", SymbolArray[i], " has got no Sessions for ", DayToString((ENUM_DAY_OF_WEEK)Day), "! ");
        if(((ENUM_DAY_OF_WEEK)Day != SUNDAY) && ((ENUM_DAY_OF_WEEK)Day != SATURDAY))
          return false;
        break;
      default:
        Print("Symbol ", SymbolArray[i], " has got ", GetNumberOfSessionsOfSymbol(i, (ENUM_DAY_OF_WEEK)Day,false), " as the Number of Sessions for ", DayToString((ENUM_DAY_OF_WEEK)Day), "! ");
        return false;
      }
    }
  }
  return  true;
}
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 +1. Es ist jetzt 14:27 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.
-----------------------------------------------------------------------------------------------------------------------------