Hilfe beim Zeitbasierten Handel

 

Hallo Leute,

ich bin dabei ein automatisches Handelssystem zu entwerfen und komme dabei leider nicht weiter.

Das System soll an jedem Monat den 26. ein BUY-Trade eröffnen ( außer Januar und Juli) und am folge Monat dem 5. den Trade wieder schließen.

Sollte die Eröffnung oder Schließung an einem Börsenfeiertag geschehen, so soll der nächste Tag für die Ausführung genommen werden.


Ich kenne mich mit MQL Programmiersprache leider nicht aus und würde mich freuen wenn ihr mir sagen könntet, wie man eine gewünschte Zeiteinheit in den Code implementiert.

#include<Trade\Trade.mqh>
#include <Trade\PositionInfo.mqh>
 
CTrade trade;
CPositionInfo  m_position;
 
void OnTick()
  {

double Ask=NormalizeDouble(SymbolInfoDouble(_Symbol,SYMBOL_ASK),_Digits);

MqlDateTime date;

datetime date1= D'2019.26.02';
datetime date2= D'2019.26.03';
datetime date3= D'2019.26.04';
datetime date4= D'2019.26.05';
datetime date5= D'2019.26.06';
datetime date6= D'2019.26.08';


datetime date8= D'2019.05.03';
datetime date9= D'2019.05.04';
datetime date10= D'2019.05.05';
datetime date11= D'2019.05.06';
datetime date12= D'2019.05.08';

datetime now = TimeCurrent();



if((PositionsTotal()==0) && now == date1 || date2 || date3 || date4 || date5 || date6 ) 

   {
   trade.Buy(0.10,NULL,Ask,0,0,NULL);
   }   

 if((PositionsTotal()==1) && now == date11 || date12 || date10 || date9 || date8 ) 

   {
    for (int i=0; i < PositionsTotal() ; i++) { 
         if(m_position.SelectByIndex(i)) {
            if (m_position.Symbol()==Symbol()) {
               if (m_position.PositionType() == POSITION_TYPE_SELL || m_position.PositionType() == POSITION_TYPE_BUY ) {
        
                  trade.PositionClose(m_position.Ticket());  // Close the selected position 
     
   }
  }
  }}}}
//+------------------------------------------------------------------+
 

Da sind grundsätzliche Programmierfehler in Deinem Code.

Studier erst einmal dies hier:

    https://www.mql5.com/de/articles/496      // Quickstart for newbies
    https://www.mql5.com/en/forum/212020      // Where Do I start from?
    https://www.mql5.com/en/forum/214904      // Help for beginners

oder nimm einen EA aus \Experts\Examples von Deiner Installatiuon des Terminals und ändere ab, wie Du es brauchst - geht schneller -

oder beauftrage jemand das zu tun, aber lies vorher:

https://www.mql5.com/de/articles/4368     // EA-freelancer Pflichtenheft

Schnelleinstieg oder Kurzanleitung für Anfänger
Schnelleinstieg oder Kurzanleitung für Anfänger
  • www.mql5.com
Liebe Leser, in diesem Artikel möchte ich Ihnen vermitteln und zeigen, wie man sich möglichst schnell und einfach die Grundlagen der Erstellung automatischer Handelssysteme, wie die Arbeit mit Indikatoren u. a., erschließt. Der Beitrag richtet sich an Neueinsteiger, in ihm kommen weder komplizierte noch schwer zu verstehende Beispiele zur...
 
Carl Schreiber:

Da sind grundsätzliche Programmierfehler in Deinem Code.

Studier erst einmal dies hier:

    https://www.mql5.com/de/articles/496      // Quickstart for newbies
    https://www.mql5.com/en/forum/212020      // Where Do I start from?
    https://www.mql5.com/en/forum/214904      // Help for beginners

oder nimm einen EA aus \Experts\Examples von Deiner Installatiuon des Terminals und ändere ab, wie Du es brauchst - geht schneller -

oder beauftrage jemand das zu tun, aber lies vorher:

https://www.mql5.com/de/articles/4368     // EA-freelancer Pflichtenheft

Danke für die schnelle Antwort!:)
 
Carl Schreiber:

Da sind grundsätzliche Programmierfehler in Deinem Code.

Studier erst einmal dies hier:

    https://www.mql5.com/de/articles/496      // Quickstart for newbies
    https://www.mql5.com/en/forum/212020      // Where Do I start from?
    https://www.mql5.com/en/forum/214904      // Help for beginners

oder nimm einen EA aus \Experts\Examples von Deiner Installatiuon des Terminals und ändere ab, wie Du es brauchst - geht schneller -

oder beauftrage jemand das zu tun, aber lies vorher:

https://www.mql5.com/de/articles/4368     // EA-freelancer Pflichtenheft


Ich habe noch kurze generelle Frage.

Wenn ich dieses automatische Handelssystem erfolgreich programmiert habe und es in den Metatrader5 aktiviere, so muss die Software stets geöffnet sein um Ausführungen durchzuführen?

Oder wird es auch automatisch ausgeführt auch wenn alles aus ist und offline

 
ralf fritz:

Ich habe noch kurze generelle Frage.

Wenn ich dieses automatische Handelssystem erfolgreich programmiert habe und es in den Metatrader5 aktiviere, so muss die Software stets geöffnet sein um Ausführungen durchzuführen?

Oder wird es auch automatisch ausgeführt auch wenn alles aus ist und offline

nein, der MT5 muss zu dem Zeitpunkt wo er Aktionen durchführen soll laufen