Research hinsichtlich der wiederkehrenden Richtungstendenzen von Candlesticks

Игорь | 29 April, 2016

Einleitung

Hallo,

Ich möchte Ihre Aufmerksamkeit auf den folgenden Gedanken richten. Ist es möglich, das Marktverhalten für einen kurzen zukünftigen Zeitraum vorherzusagen, indem man wiederkehrende Richtungstendenzen von Candlesticks berücksichtigt, die immer zu bestimmten Zeiten während des Tages auftreten? Es ist, wenn ein solches Ereignis wirklich gefunden werden kann.

Grundsätzlich kann man sagen, dass wenn in den letzten Tagen jeweils zu einer bestimmten Zeit, die Candlesticks die gleiche Richtung gezeigt haben, dies alleine schon interessant ist. Denn schließlich dient jede technische Analyse dazu, statistisch signifikante Zusammenhänge zu finden.

Eine sich wiederholende Richtungsänderung bei Candlesticks lässt auf eine Trendänderung schließen

Lassen Sie uns zuerst einige Begriffe definieren. Obwohl diese Begriffe häufig verwendet werden, lassen Sie uns diese noch einmal erklären, um Missverständnisse zu vermeiden. Wenn der Eröffnungskurs des Candlesticks niedriger als der Schlusskurs ist, dann spricht man von einem bullischen Candlestick (auf den Abbildungen in weiß dargestellt). Wenn andersrum der Candlestick bearish ist, dann wird er in schwarz abgebildet. Wenn der Eröffnungskurs dem Schlusskurz entspricht, dann werden diese Neutral bezeichnet (mein eigener Begriff). Wenn der Kurs über einen bestimmten Zeitraum gefallen ist, dann haben wir einen bearishen Trend für diesen Zeitraum und andersrum haben wir einen bullischen Trend.

Lassen Sie uns einen Blick auf den Chart werfen:

Abbildung 1. USDJPY Candlestick-Chart mit 4-Stunden-Zeitrahmen vom 20.11.2009 bis 08.12.2009

Wie in Abbildung 1 zu sehen ist, sind bei einem bearishen Trend die Candlesticks, die diesen Trend ausmachen, meist bearish. Im Falle eines bullischen Trends sind die Candlesticks ebenfalls bullisch. Wenn sich der Markt seitwärts bewegt, ändern auch die Candlesticks ständig ihre Richtung.

Eigentlich ist unser Problem - zu bestimmen, ob bei Candlesticks Wiederholungen auftreten und welche Trendänderungen diese zur Folge haben.

Natürlich kann all dies manuell durchgeführt werden. Zum Beispiel können wir einen stündlichen Chart oder einen anderen beliebigen Chart nehmen, die Richtungen der Candlesticks auf einem Stück Papier aufschreiben, und diese für einige Zeit miteinander vergleichen. Das ist eine Menge Arbeit, aber kann getan werden. Allerdings haben wir das wunderbare Werkzeug der MQL4-Programmiersprache, mit der wir ganz einfach einen Expert Advisor kreieren können, der alles selbst berechnet und uns alle Ergebnisse der Berechnungen mitteilt.

Was brauchen wir also:

  • Erstens müssen wir in der Lage sein, einen Zeitraum zu bestimmen, der uns interessiert. Es ist unwahrscheinlich, dass es 15-Minuten-Candlesticks gibt, die mit einer Wahrscheinlichkeit von 100%, jeden Tag um 7:15 Uhr bearish sind, und das die letzten paar Jahre lang. Obwohl wir die Fähigkeit haben müssen, dies zu testen - zumindest für den Zeitraum der letzten sechs Monate - gibt es immer noch eine kleine Chance, dass so ein Fall auftritt.
  • Zweitens wäre es schön zu wissen, wie viele Candlesticks im Beobachtungszeitraum bullisch und wie viele bearish waren. Sie werden wohl zustimmen, dass wenn während der letzten 10 Tage, die stündlichen Candlesticks, die um 18:00 Uhr eröffnen, 6 mal bullisch und 4 mal bearish sind, es unwahrscheinlich ist, dass diese Information uns etwas Bedeutsames mitteilt. Wenn es 9 von 10 mal jedoch bearish wären, dann sollte diese Information berücksichtigt werden, zum Beispiel um zu entscheiden, welche Position heute um 18:00 Uhr eröffnet werden soll.
  • Drittens wäre es auch schön, den durchschnittlichen Abstand zwischen den Eröffnungs- und Schlusskursen der Candlesticks sowie deren durchschnittliche Höhe über den angegebenen Zeitraum zu wissen.
  • Viertens sollten wir in der Lage sein, unsere Berechnungen für verschiedene Zeiträume durchzuführen.

All dies kann in den externen Variablen des vorgeschlagenen Skripts - script_Statistics_candles definiert werden.

Sehen wir uns das folgende Bild an.


Abbildung 2. Eingabeparameter des Skrips

Die Abbildung 2 zeigt die Eingabeparameter, die im Skript geändert werden können.

Open_session - Startzeitpunkt der studierten Session

Close_session - Endzeitpunkt der studierten Session

Period_time - Der Zeitrahmen, für welchen das Skript die Wahrscheinlichkeit einer Wiederholung von Candlesticks berücksichtigt. Die folgenden Werte können genommen werden - 5, 15, 30, 60, 240. Bitte denken Sie daran, dass nur diese und keine anderen, zulässige Werte sind. Demnach entsprechen diese Werte den Chartzeiträumen - 5, 15, 30 Minuten, 1 Stunde und 4 Stunden.

Unterhalb ist der Code des Skripts. Ich füge dem Code eine Menge Kommentare hinzu, da ich selbst gerade das Lehrbuch über MQL4 studiere. Außerdem werde ich immer wieder auf Expert Advisors eingehen und ausführliche Kommentare auf dieser Seite anführen. Es ist kein Geheimnis, dass jeder Gegenstand auf dieser Seite, neben vielen anderen Dingen auch einen Lehrwert für diejenigen beinhaltet, die ihre ersten Schritte im Umgang mit MQL4 machen.

//+------------------------------------------------------------------+
//|                                 script_Statistics_candles_V2.mq4 |
//|                              Copyright © 2009, Igor Aleksandrov  |
//|                                                sydiya@rambler.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, Igor Aleksandrov"
#property link      "sydiya@rambler.ru"
#property show_inputs
//---- Input parameters

extern string  Open_session ="2009.11.20";   //Date of the opening of the studied session 
extern string  Close_session = "2009.11.26"; //Date of the closing of the studied session
extern int     Period_time = 60;             //Period of the graph on which the Expert Advisor will be working,
                                             //can take the value of 5;15;30;60;240
//-----------------------------------------------------------------
int 
    Day_bars_i;                      //Number for i bar in session
double
    Mas_vira_maina[24,60]={0,0 0,0}, //Declare an array for bars with an equal opening-closing price
    Mas_vira[24,60]={0,0 0,0},       //Declare an array for calculating bullish bars
    Mas_maina[24,60]={0,0 0,0},      //Declare an array for calculating bearish bars
    Mas_kol_vo[24,60]={0,0 0,0},     //Declare an array for calculating the number of the counted bars
    Mas_profit[24,60]={0,0 0.0},     //Declare an array of the calculation of profit by open-close
    Mas_H_L[24,60]={0,0 0.0};        //Declare an array of calculating the profit by high-low

string Symb;                         //Name of the financial. instrument on which the script is executed
bool New_day = false;                //Flag of the new day
//--------------------------------------------------------------------

//----------------------------Starting--------------------------------

int start()
  {                                  //-general opening bracket
  
  Print("----------------------------------------------------------------------");
  Print("  Results of the script's work- Statistics_candles- ",TimeToStr(TimeCurrent()) );
  Print("  Calculations completed from ",Open_session," to ",Close_session);

//------------------------Declare the variables ----------------------
  int  
       Hour_open_bars,                  //Number of the hour of opening the i bar in session
       Minute_open_bars,                //Number of the minute of opening  i bar in session
       Shift_open,                      //Number of bar with opening time Open_session               
       Shift_close,                     //Number of bar with opening time Close_session
       Shift_open_close,                //Number of bars in session
       Total_day=0;                     //Counter of counted days     
                    
  double Open_bars_price,               //Price of opening i bar of the session
         Close_bars_price,              //Price of closing the i bar of the session
         Low_bars_price,                //Minimum price of the i bar of the session
         High_bars_price,               //Maximum price of the i bar of the session
         Total_bars=0;                  //Number of studied bars at the start of the script
         
  datetime Time_open_session,           //Opening time of the first bar of the studied session 
                                        //in datatime format          
           Time_close_session,          //Opening time of the last bar of the studying 
                                        //session in datatime format 
           Time_open_bars;              //Opening time of bars in datatime format 
                       
  bool  Session_vira=false,             //Flag of the bullish session
        Session_maina=false;            //Flag of the bearish session 
//-----------------------End of the variables declaration ------------------
                   
  Symb=Symbol();                        //Name of the financial instrument
  
  //Request the starting time of the studied session in datatime format
  Time_open_session= StrToTime(Open_session); 

  //Request the closing time of the studied session in datatime format
  Time_close_session= StrToTime(Close_session); 

  //Request the number of the bar, opening the session
  Shift_open=iBarShift( Symb,Period_time, Time_open_session,false);

  //Request the number of the bar, which closes the session 
  Shift_close=iBarShift( Symb,Period_time, Time_close_session,false);

//---------------------------------------------------------------------  
for(int i = Shift_open; i>=Shift_close; i --)        //Cycle of bar searching in the session
{ //Opening bracket of the search cycle of bars
    Total_bars++;                                    //Counter of the number of studied bars
    static int New_day_shift=0;                      //Number of the day of starting the Expert Advisor

    //Request the opening of the i bar in session
    Time_open_bars=iTime( Symb,Period_time,Shift_open-Total_bars);

    //Request the opening hour of the i bar in session
    Hour_open_bars=TimeHour(Time_open_bars); 

    //Request the opening minute of the i bar in session 
    Minute_open_bars=TimeMinute(Time_open_bars);

    //Request the day number for the i bar in session
    Day_bars_i=TimeDayOfYear( Time_open_bars);
    
    //If the number for the first bar in session is not equal to the i-th bar of the day,then
    if(New_day_shift!=Day_bars_i)  
      {                                    
         New_day = true;               //flag for the new day is true
         New_day_shift=Day_bars_i;     //and assign the number for the number of the i bar
         Total_day++;                  //Increase the day counter by one
      }  
      else                             //otherwise,
      {
      New_day = false;                 //Flag for the new day is false
      }      
       //Request the opening price of the i-th bar
       Open_bars_price= iOpen( Symb, Period_time,i);

       //Request the closing price of the i-th bar
       Close_bars_price=iClose( Symb, Period_time,i);

       //Request the minimum price of the i-th bar
       Low_bars_price=iLow( Symb, Period_time,i);

       //Request the maximum price of the i-th bar
       High_bars_price=iHigh( Symb, Period_time,i);
        
       //If the opening price of the bar is lower than the closing price, then the session is bullish
       if(Open_bars_price<Close_bars_price) 
          {                                      
          //Increase by one the values of the corrsponding element
          Mas_vira[Hour_open_bars,Minute_open_bars]=Mas_vira[Hour_open_bars,Minute_open_bars]+1;

          //Increase by one the values of the corrsponding element
          Mas_kol_vo[Hour_open_bars,Minute_open_bars]=Mas_kol_vo[Hour_open_bars,Minute_open_bars]+1; 

          //Save the difference between the opening and closing price in points
          Mas_profit[Hour_open_bars,Minute_open_bars]=
          Mas_profit[Hour_open_bars,Minute_open_bars]+(Close_bars_price-Open_bars_price)/Point;

          //Save the difference between the maximum and minimum price in points
          Mas_H_L[Hour_open_bars,Minute_open_bars]=
          Mas_H_L[Hour_open_bars,Minute_open_bars]+(High_bars_price-Low_bars_price)/Point;
          }          

       //If the opening price of the bar is higher than the closing price, then the session is bearish
       if(Open_bars_price>Close_bars_price)
          {
           //Increase by one the values of the corrsponding element
           Mas_maina[Hour_open_bars,Minute_open_bars]=Mas_maina[Hour_open_bars,Minute_open_bars]+1;

           //Increase by one the values of the corrsponding element
           Mas_kol_vo[Hour_open_bars,Minute_open_bars]=Mas_kol_vo[Hour_open_bars,Minute_open_bars]+1; 

          //Save the difference between the opening and closing price in points
           Mas_profit[Hour_open_bars,Minute_open_bars]=
           Mas_profit[Hour_open_bars,Minute_open_bars]+(Open_bars_price-Close_bars_price)/Point;

          //Save the difference between the maximum and minimum price in points
           Mas_H_L[Hour_open_bars,Minute_open_bars]=
           Mas_H_L[Hour_open_bars,Minute_open_bars]+(High_bars_price-Low_bars_price)/Point;
          }

        //If the opening price is equal to the closing price, then session is undefined
        if(Open_bars_price==Close_bars_price)
          {
           ///Increase by one the corresponding array elements
           Mas_vira_maina[Hour_open_bars,Minute_open_bars]=Mas_vira_maina[Hour_open_bars,Minute_open_bars]+1;

           //Increase by one the corresponding array elements
           Mas_kol_vo[Hour_open_bars,Minute_open_bars]=Mas_kol_vo[Hour_open_bars,Minute_open_bars]+1; 
           
           //Leave the value of the array as is
           Mas_profit[Hour_open_bars,Minute_open_bars]=
           Mas_profit[Hour_open_bars,Minute_open_bars]+0;

           //Save the difference between maximum and minimum bar prices in points
           Mas_H_L[Hour_open_bars,Minute_open_bars]=
           Mas_H_L[Hour_open_bars,Minute_open_bars]+(High_bars_price-Low_bars_price)/Point;
          }                                                                          
      
} //Closing bracket of the bar search cycle
//--------------------------Print the information to the Expert Advisor Journal-------------------

Print("Processed - ",Total_day," days; ",Total_bars," bars, period ",Period_time," minutes");

for (int h=0; h<=23; h++) //Hours cycle
{
  for (int m=0; m<=60; m++) //Minutes cycle
   {
    if (Mas_kol_vo[h,m]!=0) //If the value of array is not equal to zero, then we continue counting
    {     
  Print("For the period there are ",Mas_kol_vo[h,m],
       " bars with the time of the opening ",h,":",m,
       " .Bullish- ",Mas_vira[h,m],
       ".Bearish- ",Mas_maina[h,m],
       ".Equal - ",Mas_vira_maina[h,m]);
  Print("For the bars with the opening time ",h,":",m,
       " ,average distance between the Open-Close prices - ",Mas_profit[h,m]/Mas_kol_vo[h,m],
       " points. Between the High-Low prices - ",Mas_H_L[h,m]/Mas_kol_vo[h,m]," points.");   
     }
           Mas_vira_maina[h,m]=0;  //set to zero
           Mas_vira[h,m]=0;        //set to zero
           Mas_maina[h,m]=0;       //set to zero
           Mas_kol_vo[h,m]=0;      //set to zero
           Mas_profit[h,m]=0;      //set to zero
           Mas_H_L[h,m]=0;         //set to zero
   } //End of the minute cycle
} //End of the hour cycle
             
Print("-------------- Script completed the work --------------------");

   return(0);    
  }                                        //-general closing bracket

Wie Sie sehen können, kündige ich sechs Annordnungen auf globaler Ebene in Rahmen der Berechnung an.

double    
Mas_vira_maina[24,60]={0,0 0,0}, //Declare the bar array with an equal price of opening-closing
Mas_vira[24,60]={0,0 0,0},       //Declare the array for calculating the bullish bars
Mas_maina[24,60]={0,0 0,0},      //Declare the array for calculating the bearish bars
Mas_kol_vo[24,60]={0,0 0,0},     //Declare the array for calculating the number of counted bars
Mas_profit[24,60]={0,0 0.0},     //Declare the array for calculating the profit for open-close
Mas_H_L[24,60]={0,0 0.0};        //Declare the array for calculating the profit for high-low

Im Puffer Mas_kol_vo werden wir die Anzahl der gezählten Balken aufzeichnen. Warum ist dies notwendig? Es scheint, dass die Werte der Zellenanordnungen für Eröffnung-Schließung und für Hoch-Tief auf die Anzahl der gezählten Tage aufgeteilt werden könnten, zumal es einen Zähler im Code gibt.- Total_day . Aber ich habe festgestellt, dass im Arbeitsprozess des Skripts einige Balken in der Historie fehlen, so dass die Ergebnisse interessanter aussahen, als sie in Wirklichkeit gewesen sind. Zum Beispiel war die Höhe einiger Balken komplett unrealistisch.

Wofür die übrigen Anordnungen nötig sind, geht aus den Kommentaren hervor.

Und nun überprüfen wir tatsächlich die Wiederholung von Balken mit verschiedenen Richtungen in einem Trend. Nehmen wir den stündlichen USDJPY Chart, dargestellt in Abbildung 1, um dies zu tun. Wie wir sehen können, zeigt der Chart vom 20.11.2009 bis 26.11.2009 eine bearishe Richtung, vom 26.11.2009 bis 02.12.2009 eine Seitwärtsbewegung und vom 02.12.2009 bis 12.08.2009 einen Aufwärtstrend.

Lassen Sie uns überprüfen, ob es während diesem Zeitraum sich wiederholende Candlesticks gibt. Sollte es welche geben, müssen wir ihre Richtungsänderungen herausfinden.

Richten Sie das Skript für den stündlichen Chart ein. Für diejenigen, die nicht wissen, wie dies getan wird, stelle ich eine genauere Beschreibung zur Verfügung. Das Skript -script_Statistics_candles_V2.mq4, wird in den Ordner \Program Files\TerminalName\expert\scripts heruntergeladen. Das Skript wird in der linken unteren Ecke des Fensters "Navigator" erscheinen. Es sieht wie folgt aus:


Abbildung 3. Navigator Fenster

Wenn Sie das Skript mit der Maus von diesem Fenster auf das Terminal-Fenster ziehen, werden Sie ein Eigenschaftsfenster sehen - Abb. 2. Geben Sie das Start- und Enddatum für die Berechnung an.

Um die Logik unserer Handlungen zu verstehen, berücksichtigen Sie bitte folgendes. Stellen Sie sich vor, dass das erste, was Sie am Morgen nach dem Aufstehen tun, das Ausführen des Skripts ist. Als nächstes tragen Sie die Ergebnisse in eine Tabelle ein, wie zum Beispiel in jene, die unterhalb als Tabelle 1 abgebildet ist. Ihre Aufgabe ist es, anhand der Skriptergebnisse versuchen zu verstehen, was in den nächsten ein oder zwei Tagen auf dem Markt passieren wird.

Sagen wir also, dass heute der 26. November 2009 ist. Sie führen das Skript aus und interessieren sich für die Statistiken der Candlesticks der letzten 6 Kalendertage. Sie legen folgende Eigenschaften des Skripts fest: Open_session - 2009.11.20 (vor sechs Tagen) Close_session - 2009.11.26 (heute), jeder Zeitrahmen ann für die Berechnung verwendet werden, ich nehme den stündlichen Chart, d.h. Period_time = 60. Wir werden dies auf einer täglichen Basis durchführen, wobei wir das Start- und Enddatum beim Skript jedes Mal un einen Tag erhöhen.

Wir werden dies, basierend auf historischen Daten tun.

Klicken Sie in den Eigenschaften auf die Schaltfläche "OK". Sehen Sie folgenden Eintrag in der Log-Datei im Ordner Expert Advisors:

15:33:52 script_Statistics_candles_V2 EURUSD,H1: erfolgreich geladen
15:33:53 script_Statistics_candles_V2 EURUSD,H1 inputs: Open_session="2009.11.20"; Close_session="2009.11.26"; Period_time=60;
15:33:53 script_Statistics_candles_V2 EURUSD,H1: ----------------------------------------------------------------------
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Ergebnisse der Skriptarbeit- Statistics_candles- 14:32
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Berechnung abgeschlossen vom 2009.11.20 bis 2009.11.26
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Verarbeitet - 5 Tage; 95 Balken, Zeitraum 60 Minuten
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 3 Balken mit dem Eröffnungszeitpunkt 0:0 .Bullisch- 1.Bearish- 2.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 0:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 5,6667 Punkte. Zwischen den Hoch/Tiefs - 12 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 5 Balken mit dem Eröffnungszeitpunkt 1:0 .Bullisch- 2.Bearish- 2.Neutral - 1
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 1:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 4,2 Punkte. Zwischen Hoch/Tiefs - 11,8 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 2:0 .Bullisch- 2.Bearish- 2.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 2:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 7 Punkte. Zwischen Hoch/Tiefs - 16,25 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 3:0 .Bullisch- 2.Bearish- 2.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 3:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 11,5 Punkte. Zwischen Hoch/Tiefs - 25,25 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 4:0 .Bullisch- 2.Bearish- 2.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 4:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 12,25 Punkte. Zwischen Hoch/Tiefs - 21 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 5:0 .Bullisch- 3.Bearish- 1.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 5:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 9,25 Punkte. Zwischen Hoch/Tiefs - 17,75 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 6:0 .Bullisch- 3.Bearish- 1.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 6:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 13,5 Punkte. Zwischen Hoch/Tiefs - 22 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 7:0 .Bullisch- 4.Bearish- 0.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 7:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 5,75 Punkte. Zwischen Hoch/Tiefs - 15,25 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 8:0 .Bullisch- 1.Bearish- 3.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 8:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 8,25 Punkte. Zwischen Hoch/Tiefs - 22,75 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 9:0 .Bullisch- 1.Bearish- 3.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 9:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 10,75 Punkte. Zwischen Hoch/Tiefs - 22 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 10:0 .Bullisch- 2.Bearish- 2.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 10:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 12,75 Punkte. Zwischen Hoch/Tiefs - 34 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 11:0 .Bullisch- 3.Bearish- 1.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 11:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 11,5 Punkte. Zwischen Hoch/Tiefs - 26,75 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 12:0 .Bullisch- 3.Bearish- 1.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 12:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 20,75 Punkte. Zwischen Hoch/Tiefs - 24,5 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 13:0 .Bullisch- 3.Bearish- 1.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 13:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 7 Punkte. Zwischen Hoch/Tiefs - 18,5 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 14:0 .Bullisch- 2.Bearish- 2.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 14:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 18,25 Punkte. Zwischen Hoch/Tiefs - 31,75 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 15:0 .Bullisch- 3.Bearish- 1.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 15:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 21,25 Punkte. Zwischen Hoch/Tiefs - 34,25 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 16:0 .Bullisch- 2.Bearish- 2.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 16:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 7 Punkte. Zwischen Hoch/Tiefs - 23,75 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 17:0 .Bullisch- 2.Bearish- 2.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 17:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 12,25 Punkte. Zwischen Hoch/Tiefs - 31,75 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 18:0 .Bullisch- 0.Bearish- 4.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 18:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 6,75 Punkte. Zwischen Hoch/Tiefs - 31,75 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 19:0 .Bullisch- 2.Bearish- 2.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 19:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 19,25 Punkte. Zwischen Hoch/Tiefs - 28,25 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 20:0 .Bullisch- 2.Bearish- 2.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 20:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 11,75 Punkte. Zwischen Hoch/Tiefs - 21,75 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 21:0 .Bullisch- 3.Bearish- 1.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 21:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 14 Punkte. Zwischen Hoch/Tiefs - 20,75 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 4 Balken mit dem Eröffnungszeitpunkt 22:0 .Bullisch- 3.Bearish- 1.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 22:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 13,25 Punkte. Zwischen Hoch/Tiefs - 26 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für den Zeitraum gibt es 3 Balken mit dem Eröffnungszeitpunkt 23:0 .Bullisch- 1.Bearish- 2.Neutral - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Für die Balken mit dem Eröffnungszeitpunkt 23:0,durchschnittlicher Abstand zwischen den Eröffnungs-/Schlusskursen - 7,6667 Punkte. Zwischen Hoch/Tiefs - 15,6667 Punkte.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: -------------- Skript hat die Arbeit abgeschlossen --------------------
15:33:53 script_Statistics_candles_V2 EURUSD,H1: uninitialisierter Grund 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: entfernt

Geben Sie die Arbeitsergebnisse in die Tabelle ein. Tragen Sie die Anzahl der bullischen Balken in die Spalte "B", die Anzahl der bearishen Balken in die Spalte "M", und nicht die Anzahl der "no" Balken in die Tabelle ein.

Eröffnungsstunde 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23
Balkentyp
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
M
B
11.20-11.26
3 1 2 1 2 2 2 2 4 0 2 2 2 1 3 1 2 2 3 0 2 2 1 3 3 1 2 2 2 1 2 2 3 0 1 3 2 2 2 2 2 2 3 1 3 1 2 1
11.21-11.27
4 1 2 1 1 3 2 2 3 1 2 2 3 0 3 1 2 2 2 1 3 1 1 3 4 0 2 2 2 1 3 1 4 0 2 2 2 2 2 2 2 2 4 0 3 1 2 1
11.22-11.28
5 1 2 1 2 3 2 3 4 1 3 2 3 1 3 2 3 2 3 1 3 2 1 4 4 1 3 2 2 2 4 1 4 1 2 3 3 2 2
3 2 5 0 3 2 3 1
11.23-11.29
4 1 2 1 2 3 2 3 4 1 3 2 3 1 3 2 3 2 3 1 3 2 1 4 4 1 3 2 2 2 4 1 4 1 2 3 3 2 2 3 3 2 5 0 3 2 3 1
11.24-11.30
3 1 2 1 2 2 2 2 3 1 2 2 2 1 2 2 2 2 3 1 2 2 1 3 3 1 2 2 2 2 4 0 3 1 2 2 3 1 2 2 2 2 4 0 2 2 2 1
11.25-12.01
3 1 2 0 1 3 1 3 3 1 3 1 3 1 2 2 2 2 3 1 2 2 2 2 2 2 3 1 1 3 3 1 2 2 2 2 3 1 3 1 1 3 4 0 2 2 2 2
11.26-12.02
3 0 2 1 2 2 0 4 2 2 3 1 2 2 2 2 3 1 3 1 2 2 2 2 2 2 4 0 0 4 2 2 2 2 2 2 4 0 3 1 2 2 3 0 3 1 3 1
11.27-12.03
3 0 2 2 3 1 0 4 2 2 2 2 1 3 2 2 4 0 3 1 2 2 2 2 1 3 3 1 1 3 1 3 2 2 1 3 3 1 3 1 2 2 2 0 0 4 2 2
11.28-12.04
3 1 1 3 2 2 0 4 1 3 1 3 2 2 3 1 3 1 3 1 2 2 2 2 1 1 3 1 2 2 0 4 2 2 1 3 3 1 3 1 1 2 1 1 1 3 2 2
11.29-12.05
3 2 1 3 3 2 1 4 1 4 1 4 3 2 4 1 3 2 4 1 3 2 2 3 1 4 3 2 2 3 1 4 2 3 1 4 3 2 4 1 1 3 1 2 1 4 3 2
11.30-12.06
2 2 1 3 3 2 1 4 1 4 1 4 3 2 4 1 3 2 4 1 3 2 2 3 4 1 3 2 2 3 1 4 2 3 1 4 3 2 4 1 1 3 1 2 1 4 3 2
12.01-12.07
2 1 4 0 1 3 3 1 4 0 4 0 2 2 3 1 2 2 3 1 2 2 1 3 1 3 2 2 2 2 1 3 2 2 1 3 2 2 3 1 1 2 0 2 1 3 3 1
12.02-12.08
2 2 1 4 3 1 1 3 1 3 1 3 3 1 3 1 1 3 3 1 3 1 0 4 0 4 2 2 2 2 1 3 2 2 1 3 2 2 3 1 1 2 1 2 1 3 3 1

Tabelle 1. Die Arbeitsergebnisse des Expert Advisor

Lassen Sie uns nun einen Blick auf die Ergebnisse werfen. Zunächst einmal hat sich gezeigt, dass einige Balken im selben Zeitraum die gleiche Richtung hatten, was besonders interessant ist. Beachten Sie, dass die Zellen verschiedene Farben haben. Ich habe die Zellen, die in den letzten 6 Tagen nur bearishe Balken enthalten haben, gelb gefärbt. Jene, die nur bullische Balken enthalten haben, habe ich rosa gefärbt.

Am 26. November sehen wir, dass in den letzten 6 Tagen während der Eröffnungsstunden 4,9 and 16, alle Balken bearish waren. Wir können davon ausgehen, dass die Bären heute stark sind und der Markt vielleicht auch sogar morgen bearish sein wird.

27. November. Unsere Prognose hat sich als richtig erwiesen. Die Skript-Ergebnisse zeigen, dass in den letzten 6 Tagen bei den Eröffnungsstunden 6, 12, 16 und 21, die Candlesticks nur bearish waren. Wir können daher davon ausgehen, dass der Markt auch weiterhin bearish sein wird.

28. November. Unsere Prognose hat sich als richtig erwiesen. Im Laufe der letzten 6 Tage ist die Zahl der bearishen Candlesticks gesunken und nur während der Eröffnungsstunde 21 waren sie völlig bearish. Wir können davon ausgehen, dass der bearishe Trend abgeflaut ist und sich in Kürze ändern wird.

29., 30. November, 1. und 2. Januar. Wir haben die gleiche Situation. Wir befinden uns in einem Seitwärtstrend. Interessant ist aber, dass ab dem 2. Januar nur mehr bullische Candlesticks erscheinen. Wir gehen davon aus, dass sich der Trend verschieben wird und später am Tag sehen wir, dass unsere Annahmen richtig waren.

Am 5. und 6. Dezember werden wir Zeuge einer interessanten Situation. Es gibt kein einziges Zeitintervall, in dem die Candlesticks in die gleiche Richtung zeigen. Etwas muss passiert sein. Aber wenn wir auf das Terminal schauen, dann erkennen wir mit Erleichterung, dass diese seltsamen Tage auf ein Wochenende gefallen sind.

Am 7. Dezember haben wir wieder Candlesticks in mehrere Richtungen und wir warten erneut auf Änderungen im Trend.

Am 8. Dezember haben wir bei den Eröffnungsstunden 11 und 12 nur bullische Candlesticks. In Abbildung 1 scheint der Trend bearish zu sein. Wenn wir aber auf das Terminal sehen, werden wir überrascht sein zu sehen, dass um etwa 12 Uhr der Trend ein Seitwärtstrend wird. Und ab 9. Dezember wird dieser sich in einen bullischen Trend verwandeln.

Nun, wie wir sehen können, kann uns diese Methode keine 100% Garantie dafür geben, und es gibt noch kein Tool, das dies kann. Aber sie kann sehr wertvoll sein und in Verbindung mit anderen Methoden der technischen Analyse kann sie eine große Hilfe beim Vorhersagen des Marktverhaltens für die nächsten 1-2 Tage sein.



Fazit

Beim Schreiben dieses Artikels, habe ich drei Ziele vor meinen Augen:

  • Erstens, die Notwendigkeit zeigen, die Sprache von MQL4 zu lernen, durch die Ihre Fähigkeit, den Handel zu analysieren, enorm gesteigert wird. Und denjenigen, die interessiert sind, möchte ich ein Tool zur unabhängigen Analyse der erneut auftretenden Candlesticks für verschiedene Zeitintervalle und Währungspaare bieten.
  • Zweitens, zu überprüfen, ob es in verschiedenen Abständen in der Historie wiederkehrende Candlesticks gegeben hat. Es war erstaunlich für mich, dass im Laufe von einigen Tagen, einige Candlesticks zur gleichen Eröffnungszeit die gleiche Richtung hatten.
  • Und drittens, zu schauen, ob eine Richtungsänderung bei Candlesticks als Tool zur Vorhersage der Veränderungen von Trendrichtungen dienen kann.

Es ist offensichtlich, dass ich keine tiefe Analyse über das Verhalten von Candlesticks auf verschiedenen Zeitdiagrammen durchführen konnte. Ich wollte dies in erster Linie auch nicht tun, denn der Artikel wäre dann auch viel zu lang geworden. Jeder kann jene Paare und Zeitrahmen erforschen und analysieren, die ihn besonders interessieren. Das Skript ist in der angehängten Datei.

Vielen Dank.