Überprüfung des Mythos: Der gesamte Handelstag hängt davon ab, wie in der Session in Asien gehandelt wird

Игорь | 29 April, 2016

Einleitung

Hallo! Als ein Mann, der etwas Erfahrung mit Forex und mehrere Einzahlungen verloren hat, denke ich, dass ich das Recht dazu habe, dieses Thema zu diskutieren.

Es ist ein Geheimnis, dass die gesamte technische Analyse, wenn wir das Geschwätz weglassen, sich darauf beschränkt, Muster zu finden. Wenn wir zum Beispiel eine Wahrscheinlichkeit von 95% gefunden haben, dass bei Neumond um Mitternacht der Dollar generell fällt, bevor die ersten Hähne krähen, dann werden Sie natürlich anhand dieser Information zu diesem Zeitpunkt handeln.

Als ich viele Forex-Foren nach Körnern von Informationen durchsucht habe, die für den Handel nützlich sein können, habe ich viele verschiedene Erklärungen gefunden, die als die universelle Wahrheit präsentiert wurden. Es gibt ein Programm namens "MythBusters" auf MTV, dessen Autoren die sogenannte universelle Wahrheit in der Praxis testen und so zeigen, ob sie richtig ist oder nicht.

Ich nahm mir daran ein Beispiel und entschied mich ebenfalls dazu, einige Aussagen zu überprüfen, die von sogenannten Forex-Gurus als die Wahrheit präsentiert wurden. Heute werden wir folgenden überprüfen:



"Der gesamte Handelstag hängt davon ab, wie in der Session in Asien gehandelt wird".

Einstein hat argumentiert, dass alles relativ ist und sobald wir die Details einer beliebigen Aussage betrachten, erkennen wir sofort , dass er Recht hatte. Zum Beispiel gibt es die Frage über die Handelszeit der asiatischen Session. Schauen wir uns die folgende Tabelle an, in der die Handelsstunden einer jeden Session darstellt werden.

Region Stadt Winterzeit
Eröffnung
Winterzeit
Schließung
Sommerzeit
Eröffnung
Sommerzeit
Schließung
ASIEN Tokyo
Hong Kong
Singapur
03:00
04:00
04:00
11:00
12:00
12:00
04:00
05:00
04:00
12:00
13:00
12:00
EUROPA Frankfurt
Zürich
Paris
London
9:00
9:00
9:00
10:00
17:00
17:00
17:00
18:00
09:00
09:00
09:00
10:00
17:00
17:00
17:00
18:00
AMERIKA New York
Chicago
16:00
17:00
24:00
01:00
16:00
17:00
24:00
01:00
PAZIFIK Wellington
Sydney
00:00
01:00
08:00
09:00
00:00
01:00
08:00
09:00

Tabelle 1. Forex Handelssitzungen

Wie wir sehen, findet in der asiatischen Session der Handel im Winter von 3:00 bis 12:00 Uhr und im Sommer von 4:00 bis 13:00 Uhr statt. In Europa beginnt der Handel aber ab 9:00 Uhr. Daher stellt sich folgende Frage über die asiatische Session - dauert sie von 3:00 bis 9:00 Uhr oder von 3:00 bis 13:00 Uhr? Eine andere Frage ist die Serverzeit, da verschiedene Broker eine andere Serverzeit haben. Es muss also nicht unbedingt Moskauer Zeit sein. Die nächste Frage, die sich stellt, ist hinsichtlich der Umstellung von Winterzeit auf Sommerzeit - manche Broker stellen die Zeit nicht um. Wir müssen diese Dinge also in unserer Studie berücksichtigen. Was genau bedeutet "..der gesamte Handelstag hängt davon ab"? Wenn die asiatische Session bullish war, wird der Kurs in der nächsten Session dann ebenfalls steigen?

Zunächst einmal wollen wir einen Blick auf Abb. 1 werfen. Die Sessions sind mit verschiedenen Farben markiert, wobei der Indikator "i-Sessions" von Igor Kim verwendet wird. Der Zeitraum von 3:00 bis 13:00 Uhr ist mit dunkler Farbe ausgefüllt ("Asien"). Die europäische Session (von 9:00 bis 18:00 Uhr) hat eine etwas hellere Farbe und die amerikanische Session (von 16:00 bis 24:00 Uhr) hat die hellste Farbe.

Abb. 1 Chart von NZDUSD mit den einzelnen Sessions

Außerdem werde ich alle Einzelheiten beschreiben, um Neulingen zu helfen, alles zu verstehen.

Mein Expert Advisor "1-Session" ist so konzipiert, dass sie folgende Aufgaben löst:

Er muss die Eröffnungs- und Schlusskurse der Session berechnen, die von uns festgelegt wurde. Nehmen wir an, dass der Eröffnungskurs der Session höher ist als der Schlusskurs. In diesem Fall wäre die Session bearish. Genau umgekehrt verhält es sich bei einer bullischen Session.

Wenn der Eröffnungskurs gleich wie der Schlusskurs ist, so spricht man von einer neutralen Session.

Ich habe versucht, den gesamten Code des Expert Advisor zu kommentieren, um es für Neulinge einfacher zu machen (ich bin einer von ihnen).

//+------------------------------------------------------------------+
//|                                                    1-Session.mq4 |
//|                                Copyright © 2009, Igor Alexandrov |
//|                                                sydiya@rambler.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, Igor Alexandrov"
#property link      "sydiya@rambler.ru"

//---- Input parameters
extern string  Open_session =  "01:00"; //Opening time of the session to study
extern string  Close_session = "10:00"; //Closing time of the session to study
extern int Day_kol_vo = 50;             //Number of days to study
extern int Hour_kol_vo = 15;            //Number of hours to study after the session
extern int Profit = 20;                 //Take Profit value to verify

//----------------------------------------------------------------------------
string Symb;                            //Trade symbol of the expert attached
//----------------------------Starting----------------------------------------

int start()
  { //the main bracket begins
   int  Shift_open_H1,       //Number of hourly bar with the same opening time as daily bar
   Shift_open_bars_session,  //Number of hourly bar, that opens the session     
   Shift_close_bars_session, //Number of hourly bar, that closes the session
   STOP_LEVER=0;             //Minimal distance for TP and SL

   double Open_bars_session, //Opening price of the first bar of the session
   Close_bars_session,       //Closing price of the last bar of the session
   Vira_session,             //Maximal price of the session
   Total_TP=0,               //Counter of Take Profit executions
   Total_SL=0,               //Counter of Stop Loss executions
   Total_day=0,              //Number of days to study
   Total_SL_TP=0,            //Counter of neutral sessions
   Maina_session;            //Minimal price of the session

   datetime Time_open_day,   //Opening time of the i-th daily bar
   Time_open_session,        //Opening time of the session (datetime format)
   Time_close_session;       //Closing time of the session (datetime format)

   string String_open_H1;    //Opening time of the first hourly bar of the day to study
                             //as string format "yyyy.mm.dd"
   bool   Session_buy=false, //Bullish session flag
   Session_sell=false;       //Bearish session flag
   Symb=Symbol();            //Symbol name

   //Minimal distance for TP and SL
   STOP_LEVER=MarketInfo(Symb,MODE_STOPLEVEL);

   // daily bars cycle
   for(int i=Day_kol_vo;i>0;i --)
     { //bracket for daily bars cycle

      //Counter for days studied
      Total_day++;

      //opening time of the i-th daily bar
      Time_open_day=iTime(Symb,PERIOD_D1,i);

      //number of hourly bar with the same opening time as daily bar
      Shift_open_H1=iBarShift(Symb,PERIOD_H1,Time_open_day,false);

      //convert opening time of the first hourly bar to the string like "yyyy.mm.dd"
      String_open_H1=TimeToStr(Time_open_day,TIME_DATE);

      //opening time for the session to study (in the datetime format)
      Time_open_session=StrToTime(String_open_H1+" "+Open_session);

      //number of hourly bar from which session begins
      Shift_open_bars_session=iBarShift(Symb,PERIOD_H1,Time_open_session,false);

      //closing time of the session to study (in datetime format)
      Time_close_session=StrToTime(String_open_H1+" "+Close_session);

      //number of last hourly bar of the session
      Shift_close_bars_session=iBarShift(Symb,PERIOD_H1,Time_close_session,false);

      //opening price of the first bar of the session
      Open_bars_session=iOpen(Symb,PERIOD_H1,Shift_open_bars_session);

      //closing price of the last bar of the session
      Close_bars_session=iClose(Symb,PERIOD_H1,Shift_close_bars_session);

      //finding the maximal price of the session
      Vira_session=iHigh(Symb,PERIOD_H1,iHighest(Symb,PERIOD_H1,MODE_HIGH,
      (Shift_open_bars_session-Shift_close_bars_session),Shift_close_bars_session));

      //finding the minimal price of the session
      Maina_session=iLow(Symb,PERIOD_H1,iLowest(Symb,PERIOD_H1,MODE_LOW,
      (Shift_open_bars_session-Shift_close_bars_session),Shift_close_bars_session));

      // the opening price is greater than closing price, session is Bearish
      if(Open_bars_session>Close_bars_session)
        {
         Session_buy=false;
         Session_sell=true;
        }

      //The opening price is lower than closing price, session is bullish      
      if(Open_bars_session<Close_bars_session)
        {
         Session_buy=true;
         Session_sell=false;
        }

      //The opening price is equal to closing price, session is Neutral
      if(Open_bars_session==Close_bars_session)
        {
         Session_buy=false;
         Session_sell=false;
        }
      // hours counter for checking
      int PEREBOR=0;

      //Cycle for hourly bars in the i-th day
      for(int j=Shift_close_bars_session;j>Shift_close_bars_session-Hour_kol_vo;j --)
        {//Opening bracket for the hourly bars cycle

         //hours counter (for checking)
         PEREBOR++;

         //if session is bullish
         if(Session_buy==true && Session_sell==false)
           {
            //if maximal price of the hourly bar
            //is greater than (closing price of the session+Profit+Minimal distance)
            if(iHigh(Symb,PERIOD_H1,j-PEREBOR)>(Close_bars_session+(Profit+STOP_LEVER)*Point))
              {
               Total_TP++;     //Take Profit executed
               break;          //break the cycle(hourly bars)
              }
            //if minimal price of the hourly bar
            //is lower than minimal price of the session
            if(iLow(Symb,PERIOD_H1,j-PEREBOR)<Maina_session)
              {
               Total_SL++;     //Stop Loss executed
               break;          //break the cycle(hourly bars)
              }
           }
         //if session is bearish
         if(Session_buy==false && Session_sell==true)
           {
            //if maximal price of the hourly bar 
            //is greater than maximal price of the session
            if(iHigh(Symb,PERIOD_H1,j-PEREBOR)>Vira_session)
              {
               Total_SL++;      //Stop Loss executed
               break;           //break the cycle(hourly bars)
              }
            //if minimal price of the hourly bar 
            //is lower than (closing price of the session-(Profit + Minimal distance))
            if(iLow(Symb,PERIOD_H1,j-PEREBOR)<(Close_bars_session-(Profit+STOP_LEVER)*Point))
              {
               Total_TP++;      //Take Profit executed              
               break;           //break the cycle(hourly bars)
              }
           }
         //if session is neutral
         if(Session_buy==false && Session_sell==false)
           {
            Total_SL_TP++;      //Increase the counter
            break;              //break the cycle(hourly bars)
           }

        } // closing bracket for the hourly bars cycle

      double Pro_Total_TP=(Total_TP/Total_day)*100, //Probabiility of TP execution
      Pro_Total_SL=(Total_SL/Total_day)*100,        //Probability of SL execution
      Pro_Total_SL_TP=(Total_SL_TP/Total_day)*100;  //Probability of neutral sessions
      int Total_no=Total_day-Total_SL-Total_TP-Total_SL_TP; //TP and SL hasn't executed
      double Pro_Total_no =(Total_no/Total_day)*100;        //Probability that TP and SL will not executed
      Comment("Checked ",Total_day," days","\n",
              "Session Opening time  ",Open_session," Session Closing time ",
              Close_session," Number of hours to check after the session ",Hour_kol_vo," Profit ",Profit,"\n",
              "Take profit has executed ",Total_TP," times","\n",
              "Stop Loss has executed ",Total_SL," times","\n",
              "The neutral sessions was ",Total_SL_TP," times","\n",
              "Neither SL/TP executed ",Total_no," times","\n",
              "Probability for Take Profit execution ",Pro_Total_TP," %","\n",
              "Probability for Stop Loss execution ",Pro_Total_SL," %","\n",
              "Probability for neutral sessions ",Pro_Total_SL_TP," %","\n",
              "Probability that SL and TP will not executed ",Pro_Total_no," %");

     } //Closing bracket for the daily bars

   return(0);

  } //-the main bracket ends 

Lassen Sie uns jetzt einen sorgfältigen Blick auf den Code werfen, um das Prüfverfahren zu verstehen, das eingebaut wurde. Wenn eine Session zum Beispiel bearish ist, wollen wir den Take Profit bei einem Kursniveau unter dem Schlusskurs der Session simulieren: (Profit+STOP_LEVER), wobei Profit (kann geändert werden) in Punkten dargestellt wird. Es wird angenommen, dass wenn der Kurs gefallen ist, er weiter fallen wird. Das gleiche (aber umgekehrt) gilt für die bullische Session.

STOP_LEVER ist der Mindestabstand vom aktuellen Kurs, der vom Broker erlaubt ist. Es ist nicht notwendig, ihn zu definieren, denn er wird automatisch berechnet.

Das eigentliche Take Profit Niveau, das von Ihnen im Parameter-Fenster des Expert Advisor (Parameter Profit) definiert wurde, wird um den Wert STOP_LEVER etwas weiter entfernt vom aktuellen Kurs sein. Der Wert ist bei verschiedenen Brokern und Währungspaaren unterschiedlich. Der Code soll helfen, reale Ergebnisse in unserer Simulation zu erzielen. Wenn Sie zum Beispiel versuchen im Echtgeldhandel eine Order für GOLD zu platzieren, die nur 5 Punkte vom aktuellen Kurs entfernt ist, dann werden Sie dies nicht tun können, denn die geringste Mindestentfernung zum aktuellen Kurs, die ich gesehen habe, war 50 Punkte.

Lassen Sie uns jetzt Stop Losses in Betracht ziehen. Im Allgemeinen können Sie die Wahrscheinlichkeit, einen Take Profit zu erreichen berechnen, der in der Kursrichtung platziert wurde, die für die Session definiert wurde. But it looks incomplete. Aber dies sieht irgendwie unvollständig aus. Es ist interessant und vielleicht auch viel wichtiger, nicht nur die profitablen Orders zu zählen, sondern auch die Orders mit Verlusten.

Lassen Sie uns noch einmal einen Blick auf die Abb. 1 werfen. Wir können folgendes sehen. Wenn die asiatische Session im Allgemeinen bullisch war, dann wird der Kurs nicht unter den niedrigsten Kurs der Session fallen. In der Abb. 1 wird die Session vom 23. November 2009, von 3.00 bis 13.00 Uhr mit vertikalen Linien umrissen. Man kann sehen, dass die Session im Allgemeinen bullisch ist, denn der Eröffnungskurs ist niedriger als der Schlusskurs. Wir gehen davon aus, dass das Stop Loss Nivau beim niedrigsten Kurs der Session liegen sollte. Wie Sie wohl bereits richtig vermutet haben, sollte bei einer bearishen Session das Stop Loss Niveau beim höchsten Kurs der Session liegen.

Die Idee hinter unserer Überprüfung ist, unsere virtuellen Take Profit und berechneten Stop Loss Niveaus zu berücksichtigen und mit Hilfe der Historie, die einzelnen Ausführungen von beiden zu zählen.

Die Eingabeparameter des Expert Advisor (die gleichen, die wir auf der Registerkarte "Eingaben" ändern können) sind die folgenden:


Abb. 2. Eingabeparameter des Expert Advisor


Open session – Zeitpunkt, an dem die Session eröffnet wird,

Close_session – Zeitpunkt, an dem die Session beendet wird,

Day_kol_vo – Anzahl der Tage in der Historie (zum Beispiel bedeutet ein Wert von 50, dass der Expert Advisor die letzten 50 in seinen Berechnungen verwenden wird. Ich empfehle hier keine großen Werte zu verwenden),

Hour_kol_vo – Anzahl der Stunden. Dieser Parameter definiert die Anzahl der Stunden, die nach dem Ende der Session vergehen (der Expert Advisor wird den Wert in seinen Berechnungen verwenden). In den beigefügten Daten habe ich die Anzahl der Stunden bis zur nächsten Session verwendet. Wenn wir die Zeit von 3.00 bis 13.00 Uhr studieren, ist der Wert bis zur nächsten Session gleich 14.

Profit ist der Abstand vom Schlusskurs der Session in Punkten. Tatsächlich ist es das Niveau unseres virtuellen Take-Profit.

Die Berechnung der Wahrscheinlichkeiten ist einfach - für Take Profits ist es die Anzahl der Ausführungen in den analysierten Tagen, geteilt durch die Anzahl dieser Tage und multipliziert mit 100, um den Wert in Prozent darzustellen.

Dementsprechend ist es für die Stop Losses die Anzahl der Ausführungen in den analysierten Tagen, geteilt durch die Anzahl dieser Tagen, multipliziert mit 100.

Das gleiche gilt für die neutralen Sessions.

Einige Details über die Arbeit des Expert Advisor und dessen Installation. Zunächst kopieren wir wir üblich den Expert Advisor in den Ordner "Experts" und kompilieren ihn. Danach hängen wir ihn an einen beliebigen Zeitrahmen an (der stündliche wird empfohlen), stellen die von uns benötigte Zeit sowie andere Parameter, die oben beschrieben wurden, ein und erlauben ihm zu handeln. Er handelt nicht, denn er hat keine Handelsfunktionen. Stattdessen zeigt er die Information in der linken unteren Ecke des Charts an (die Anzahl der berechneten Tage, seine Parameter, die Anzahl der Ausführungen von Take Profit und Stop Loss, die Anzahl der neutralen Sessions und die Wahrscheinlichkeiten von TP und SL Ausführungen).

Erinnern wir uns - es ist nicht notwendig, ihn im History Tester zu testen. Hängen Sie ihn einfach an, warten Sie auf einen Tick, sehen Sie sich die Ergebnisse an, ändern Sie falls erforderlich seine Parameter, warten Sie auf einen neuen Tick, speichern Sie die Ergebnisse irgendwo und entfernen Sie ihn wieder. Vielleicht sollte er als Indikator entwickelt werden, aber zum gegenwärtigen Zeitpunkt möchte ich ihn nicht ändern. Möglicherweise wird dies in Zukunft einmal getan.

Wenn die Ticks zu häufig sind, können Sie den Expert Advisor deaktivieren, indem Sie die Schaltfläche "Expert Advisor" im Kundenterminal verwenden.

Nun wollen wir das Thema diskutieren. Schauen wir uns die folgende Tabelle an. Sie wurde mit Daten gefüllt, die vor einigen Tagen vom Expert Advisor berechnet wurden, am 10. November. Ich habe keine tiefere Historie verwendet - die letzten 50 Tage wurden herangezogen. Als Zeit für den "Handel" (zu kaufen oder zu verkaufen) wurde von 3.00 bis 13.00 Uhr (die komplette asiatische Session), von 3.00 bis 9.00 Uhr (die reine asiatische Session ohne die europäische Session) und von 9.00 bis 13.00 Uhr (sowohl asiatische als auch europäische Session) gewählt.


Zeitraum

3.00-13.00

3.00-13.00

3.00-13.00

3.00-9.00

3.00-9.00

3.00-9.00

9.00-13.00

9.00-13.00

9.00-13.00

Währungspaar
Beschreibung

Profit-5

Profit-15
Profit-25
Profit-5
Profit-15
Profit-25
Profit-5
Profit-15
Profit-25
USDJPY Take Profit ausgeführt %
74
58
50
78
64
52
70
52
44
USDJPY Stop Loss ausgeführt %
24
36
44
22
36
48
30
48
56
USDJPY Session ist neutral %
2
2
2
0
0
0
0
0
0
USDJPY Nichts ausgeführt %
0
4
4
0
0
0
0
0
0
EURUSD Take Profit ausgeführt %
100
72
64
68
62
54
76
66
62
EURUSD Stop Loss ausgeführt %
0
28
36
32
38
46
24
34
38
EURUSD Session ist neutral %
0
0
0
0
0
0
0
0
0
EURUSD Nichts ausgeführt %
0
0
0
0
0
0
0
0
0
GBPJPY Take Profit ausgeführt %
72
62
54
72
66
50
78
64
56
GBPJPY Stop Loss ausgeführt %
28
34
42
28
34
50
22
34
42
GBPJPY Session ist neutral %
0
0
0
0
0
0
0
0
0
GBPJPY Nichts ausgeführt %
0
4
4
0
0
0
0
2
2
NZDUSD Take Profit ausgeführt %
80
66
56
74
58
50
68
58
46
NZDUSD Stop Loss ausgeführt %
20
34
42
24
40
48
30
40
52
NZDUSD Session ist neutral %
0
0
0
2
2
2
2
2
2
NZDUSD Nichts ausgeführt %
0
0
0
0
0
0
0
0
0

Tabelle 2. Die endgültigen Wahrscheinlichkeiten (%).

Wie wir sehen, habe ich keine großen Take Profits verwendet - die Werte waren 5, 15 und 25 Punkte.



Fazit

Man kann aus der Tabelle 2 erkennen, dass die Behauptung "Der gesamte Handelstag hängt davon ab, wie in der Session in Asien gehandelt wird" falsch ist, zumindest bei diesen 4 Währungspaaren für die letzten 50 Tage.

Die Wahrscheinlichkeit, dass ein Take Profit mit 5 Punkten ausgeführt wird, liegt etwa bei 60-70%. Solch eine Wahrscheinlichkeit kann man auch mit einem Münzwurf vergleichen. Meiner bescheidenen Meinung nach.

Für EURUSD liegt die Wahrscheinlichkeit eines Take Profit mit 5 Punkten bei 100%. Das heißt, wenn ich um 13.00 Uhr je nach Trend der asiatischen Session, in den letzten 50 Tagen mit kleinen Take Profits von 5 Punkten gehandelt hätte, ich immer erfolgreich gehandelt hätte. Was soll ich sagen - es ist schade, dass ich darüber nichts gewusst habe. Pip-Jäger können die Ergebnisse als zusätzliche Information verwenden. Eine Studie mit einer tieferen Historie (100 Tage und mehr) liefert weniger eindeutige Ergebnisse.

Der Wert des präsentierten Expert Advisor ist nicht nur die Tatsache, dass seine Ergebnisse das Nichtvorhandensein eines Zusammenhangs zwischen der asiatischen und anderen Sessions im Laufe des Tages bestätigen. Einige Leute versuchen Zusammenhänge zwischen dem Markt und bestimmten Handelsstunden herauszufinden. Dies kann nun ohne mühsame manuelle Berechnungen durchgeführt werden.

Der Indikator TradeSession.mq4 (vielleicht möchte ihn jemand im Kundenterminal verwenden) und Expert Advisor 1-Session.mq4 sind beigefügt.