Investigación de recurrencia estadística de direcciones de la vela

Игорь | 7 marzo, 2016

Introducción

Hola,

Me gustaría llamar su atención sobre el siguiente pensamiento. ¿Es posible predecir el comportamiento del mercado durante un período próximo corto de tiempo, basado en las tendencias recurrentes de direcciones de la vela en momentos específicos durante todo el día? Es decir, si tal suceso se encuentra en primer lugar.

Básicamente, si se encuentra en los últimos días, en un momento específico, si las velas siempre tenían la misma dirección, entonces esto sería interesante. Después de todo, cualquier análisis técnico esencialmente se reduce a la búsqueda de relaciones estadísticamente significativa.

Un cambio repetitivo en la dirección de velas indica un cambio en la tendencia

Pongámonos primero de acuerdo en algunos términos. Aunque estos términos se usan comunmente, vamos a cumplirlos una vez más para evitar malentendidos. Si el precio de apertura de la vela es menor que el precio de cierre - entonces se llama una vela alcista (en los ejemplos propuestos están pintadas en blanco), si por el contrario, el precio es un precio de oso, entonces son (pintado de negro). Si el precio de apertura es igual al precio de cierre, estas velas se llamarán igual (mi propio término). Si el precio de cotización disminuye durante un periodo de tiempo, tenemos una tendencia bajista durante este período, por el contrario, tenemos una tendencia alcista.

Veamos el gráfico:

Figura 1. Gráfico de velas de 4 horas de time frame para el USDJPY, con 20.11.2009 en 08.12.2008

Como se ve en la figura 1, si la tendencia es bajista, entonces las velas que forman parte de esta tendencia son en su mayoría bajistas, y si es alcista, las velas también están alcistas. Si es lateral, entonces las velas también cambian constantemente su dirección.

En realidad, nuestro problema - es determinar si existe alguna recurrencia en las velas, y cómo cambia con respecto a los cambios en la tendencia .

Por supuesto, todo esto puede hacerse manualmente, por ejemplo, podemos tomar un gráfico por horas o cualquier otro tipo de gráfico, escriba las direcciones de la vela en un trozo de papel y compararlos entre sí por una cierta hora. Esto es mucho trabajo, pero se puede hacer. Pero tenemos la herramienta maravillosa del Lenguaje de programación MQL4, con el que podemos fácilmente crear un asesor experto, que a calcular todo lo mismo y nos dice todo acerca de los resultados de los cálculos.

Así que lo que necesitamos:

  • En primer lugar, debemos ser capaces de especificar un período de tiempo que nos interese. Es poco probable que haya velas de 15 minutos, que, con una probabilidad de 100% bajistas a las 7:15 todos los días, para los últimos dos años. Aunque debemos tener la capacidad de probar esto, por lo menos durante los últimos seis meses, ya que todavía hay una pequeña posibilidad de esto.
  • En segundo lugar, sería bueno saber cuántas velas, durante el período examinado, fueron alcistas y cuántas eran bajistas. Usted debe estar de acuerdo si durante los últimos 10 días, las velas de hora que abren a las 18:00 - fueron alcistas 6 veces y bajistas 4 veces, pues entonces es poco probable que esta información se nos presente como algo importante. Ahora, si fueran bajistas 9 veces de 10, esta información debería tenerse en cuenta, por ejemplo, para decidir en qué dirección abre hacia hoy a las 18:00.
  • En tercer lugar, también sería bueno saber la distancia media entre la apertura y cierre de precios de las velas, así como su altura media sobre el período de tiempo determinado.
  • En cuarto lugar, debemos ser capaces de realizar nuestros cálculos en diferentes timeframes.

Todo esto se puede definir en las variables externas de la escritura de la propuesta - script_Statistics_candles .

Echemos un vistazo a la siguiente imagen.

Figura 2. Parámetros de entrada del script

La figura 2 muestra los parámetros de entrada que se pueden cambiar en el script.

Open_session - Inicio de la sesión a estudiar

Close_session - Tiempo del final de la sesión a estudiar

Period_time - Timeframe en que el script considera la probabilidad de recurrencia de la vela. Puede tomar uno de los siguientes valores - 5, 15, 30, 60, 240. Por favor recuerde que estos y no otros, son los valores permitidos. En consecuencia, estos valores corresponden a períodos de gráficos - 5, 15, 30 minutos, 1 hora y 4 horas.

Abajo está el código del script. Añadir que una cantidad máxima de comentario del código, porque yo mismo estoy estudiando un libro de texto en MQL4 y varias veces he recurrido a asesores expertos, presentado en este sitio y más frecuentemente que con comentarios detallados. No es ningún secreto que cualquier artículo, presentado en este sitio, tiene, aparte de otras cosas, un valor de enseñanza, para quienes están dando sus primeros pasos en el uso de MQL4.

//+------------------------------------------------------------------+
//|                                 script_Statistics_candles_V2.mq4 |
//|                              Copyright © 2009, Igor Aleksandrov  |
//|                                                sydiya@rambler.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, Igor Aleksandrov"
#property link      "sydiya@rambler.ru"
#propiedades del show_inputs
// --- Parámetros de entrada

extern string  Open_session ="2009.11.20";   //Fecha de la apertura de la sesión a estudiar 
extern string  Close_session = "2009.11.26"; //DFecha del cierre de la sesión a estudiar
extern int     Period_time = 60;             //Periodo del gráfico en el que el asesor experto va a trabajar,
                                             //puede tomar el valor 5; 15; 30; 60; 240
//-----------------------------------------------------------------
int 
    Day_bars_i;                      //Númbero para i barras en la sesión
doble
    Mas_vira_maina[24,60]={0,0 0,0}, //Declare una matriz para las barras con un precio igual de apertura-cierre
    Mas_vira[24,60]={0,0 0,0},       //Declare una matriz para el cálculo de barras alcistas
    Mas_maina[24,60]={0,0 0,0},      //Declare una matriz para el cálculo de barras bajistas
    Mas_kol_vo[24,60]={0,0 0,0},     //Declare una matriz para calcular el número de barras contabilizadas
    Mas_profit[24,60]={0,0 0.0},     //Declare una matriz de cálculo del beneficio por apertura-cierre
    Mas_H_L[24,60]={0,0 0.0};        //Declare una matriz de cálculo de la ganancia por alto-bajo

string Symb;                         //Nombre de la financiera. instrumento en que se ejecuta el script
bool New_day = false;                //Flag del nuevo día
//--------------------------------------------------------------------

//----------------------------Comienzo--------------------------------

int start()
  {                                  //-soporte general de apertura
  
  Print("----------------------------------------------------------------------");
  Print("  Resultados del trabajo del script- Statistics_candles- ",TimeToStr(TimeCurrent()) );
  Print("  Cáculos completados de ",Open_session," to ",Close_session);

//--------------------------Declarar variables -----------------------
  int  
       Hour_open_bars,                  //Número de horas de la apertura de la barra i en la sesión
       Minute_open_bars,                //Número de minutos de la aperura de la  barra i en la sesión
       Shift_open,                      //Númbero de barras con tiempo de apertura Open_session               
       Shift_close,                     //Númbero de barrascon tiempode apertura Close_session
       Shift_open_close,                //Númbero de barras por sesión
       Total_day=0;                     //Cuenta de los días contados     
                    
  double Open_bars_price,               //Price de apertura de la barra i en la sesión
         Close_bars_price,              //Price de cierre de la barra i en la sesión
         Low_bars_price,                //Price mínimo de la barra i en la sesión
         High_bars_price,               //Price máximo de la barra i en la sesión
         Total_bars=0;                  //Númbero de las barras estudiadas al inicio del script
         
  datetime Time_open_session,           //Hora de aperuta del primer compás de la sesión a estudiar 
                                        //en formato datatime          
           Time_close_session,          //Hora de apertura de la última barra del estudio 
                                        //sesión en formato datatime 
           Time_open_bars;              //Hora de apertura de las barras en formato datatime 
                       
  bool  Session_vira=false,             //Flag de la sesión alcista
        Session_maina=false;            //Flag de la sesión bajista 
//---------------------Final de la declaración de variables ----------------
                   
  Symb=Symbol();                        ///Nombre del instrumento financiero
  
  //Solicitar la hora de inicio del período de sesiones estudiado en formato datatime
  Time_open_session= StrToTime(Open_session); 

  //Solicitar la hora de cierre del período de sesiones estudiado en formato datatime
  Time_close_session= StrToTime(Close_session); 

  //Solicitar el número de barra, abriendo la sesión
  Shift_open=iBarShift( Symb,Period_time, Time_open_session,false);

  //Solicitar el número de barra, cierre la sesión 
  Shift_close=iBarShift( Symb,Period_time, Time_close_session,false);

//---------------------------------------------------------------------  
for(int i = Shift_open; i>=Shift_close; i --)        //Cycle de la barra buscando en la sesión
{ //Soporte de apertura del ciclo de búsqueda de barras
    Total_bars++;                                    //Cuenta del número de barras estudiadas
    static int New_day_shift=0;                      //Númbero de días del inicio del EA

    //Solicitar la apertura de la primera barra en la sesión
    Time_open_bars=iTime( Symb,Period_time,Shift_open-Total_bars);

    //Solicitar la hora de apertura de la primera barra en la sesión
    Hour_open_bars=TimeHour(Time_open_bars); 

    //Pedir el minuto de apertura de la primera barra en la sesión 
    Minute_open_bars=TimeMinute(Time_open_bars);

    //Solicitar el número de días para la barra i en la sesión
    Day_bars_i=TimeDayOfYear( Time_open_bars);
    
    //Si el número de la primera barra en la sesiónno no es igual a la barra i-ésima del dia, entonces
    if(New_day_shift!=Day_bars_i)  
      {                                    
         New_day = true;               //Flag para el nuevo día<
         New_day_shift=Day_bars_i;     //y asignar el número para el número de la primera barra i
         Total_day++;                  //Incrementar el contador de días en uno
      }  
      else                             //de otra manera,
      {
      New_day = false;                 //Flag para el nuevo día es falso
      }      
       //Solicitar el precio de apertura de la barra i-ésima
       Open_bars_price= iOpen( Symb, Period_time,i);

       //Solicitar el precio de cierre de la barra i-ésima
       Close_bars_price=iClose( Symb, Period_time,i);

       //Solicitar el precio mínimo de la barra i-ésima
       Low_bars_price=iLow( Symb, Period_time,i);

       //Solicitar el precio máximo de la barra i-ésima
       High_bars_price=iHigh( Symb, Period_time,i);
        
       //Si el precio de apertura de la barra es inferior al precio de cierre, entonces la sesión es alcista
       if(Open_bars_price<Close_bars_price) 
          {                                      
          //Aumentar en uno los valores de los elementos correspondiente
          Mas_vira[Hour_open_bars,Minute_open_bars]=Mas_vira[Hour_open_bars,Minute_open_bars]+1;

          //Aumentar en uno los valores de los elementos correspondiente
          Mas_kol_vo[Hour_open_bars,Minute_open_bars]=Mas_kol_vo[Hour_open_bars,Minute_open_bars]+1; 

          //Guardar la diferencia entre la apertura y el precio de cierre en los puntos
          Mas_profit[Hour_open_bars,Minute_open_bars]=
          Mas_profit[Hour_open_bars,Minute_open_bars]+(Close_bars_price-Open_bars_price)/Point;

          //Guardarr la diferencia entre el precio máximo y mínimo en los puntos
          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;
          }          

       //Si el precio de apertura de la barra es mayor que el precio de cierre, entonces la sesión es bajista
       if(Open_bars_price>Close_bars_price)
          {
           //Aumentar en uno los valores de los elementos correspondiente
           Mas_maina[Hour_open_bars,Minute_open_bars]=Mas_maina[Hour_open_bars,Minute_open_bars]+1;

           //Aumentar en uno los valores de los elementos correspondiente
           Mas_kol_vo[Hour_open_bars,Minute_open_bars]=Mas_kol_vo[Hour_open_bars,Minute_open_bars]+1; 

          //Guardar la diferencia entre la apertura y el precio de cierre en los puntos
           Mas_profit[Hour_open_bars,Minute_open_bars]=
           Mas_profit[Hour_open_bars,Minute_open_bars]+(Open_bars_price-Close_bars_price)/Point;

          //Guardarr la diferencia entre el precio máximo y mínimo en los puntos
           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;
          }

        //Si el precio de apertura es igual al precio de cierre, entonces la sesión es indefinida
        if(Open_bars_price==Close_bars_price)
          {
           ///Aumentar en uno los elementos de la matriz correspondiente
           Mas_vira_maina[Hour_open_bars,Minute_open_bars]=Mas_vira_maina[Hour_open_bars,Minute_open_bars]+1;

           //Aumentar en uno los elementos de la matriz correspondiente
           Mas_kol_vo[Hour_open_bars,Minute_open_bars]=Mas_kol_vo[Hour_open_bars,Minute_open_bars]+1; 
           
           //Deje el valor de la matriz como está
           Mas_profit[Hour_open_bars,Minute_open_bars]=
           Mas_profit[Hour_open_bars,Minute_open_bars]+0;

           //Guardar la diferencia entre los precios máximo y mínimo de la barra, en puntos
           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;
          }                                                                          
      
} //Soporte de cierre del ciclo de la barra búscada
//-------------------------Presentar la información para el diario del Experto Asesor-------------

Print("Procesar - ",Total_day," días; ",Total_bars," barras, periodo ",Period_time," minutos");

for (int h=0; h<=23; h++) //Ciclo de Horas
{
  for (int m=0; m<=60; m++) //Ciclo de minuros
   {
    if (Mas_kol_vo[h,m]!=0) //Si el valor de la matriz no es igual a cero, entonces continuamos contando
    {     
  Print("Para el período en que hay ",Mas_kol_vo[h,m],
       " barras con la hora de apertura ",h,":",m,
       " .Bullish- ",Mas_vira[h,m],
       ".Bearish- ",Mas_maina[h,m],
       ".Equal - ",Mas_vira_maina[h,m]);
  Print("Para las barras con hora de apertura ",h,":",m,
       " ,distancia promedio entre los precios de aperura-cierre - ",Mas_profit[h,m]/Mas_kol_vo[h,m],
       " puntos. Entre los precios máximos y mínimos - ",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;        //configurar a cero
           Mas_maina[h,m]=0;       //configurar a cero
           Mas_kol_vo[h,m]=0;      //configurar a cero
           Mas_profit[h,m]=0;      //configurar a cero
           Mas_H_L[h,m]=0;         //configurar a cero
   } //Final del cliclo minuto
} //Final del clicloo hora
             
Print("-------------- Script trabajo completado --------------------");

   return(0);    
  }                                        //-soporte general de cierre bracket

Como se puede ver, anuncio seis matrices en el nivel global bajo cálculo

doble    
Mas_vira_maina[24,60]={0,0 0,0}, //Declare la matriz de barras con un precio igual de apertura-cierre
Mas_vira[24,60]={0,0 0,0},       //Declare la matriz para el cálculo de las barras alcistas
Mas_maina[24,60]={0,0 0,0},      //Declare la matriz para el cálculo de las barras bajistas
Mas_kol_vo[24,60]={0,0 0,0},     //Declare la matriz de cálculo del número de barras contabilizadas
Mas_profit[24,60]={0,0 0.0},     //Declare la matriz de cálculo del beneficio de las aperturas-cierres
Mas_H_L[24,60]={0,0 0.0};        //Declare la matriz de caculo el beneficio de los latos-bajos

En el buffer de Mas_kol_vo registramos el número de barras contabilizadas. ¿Por qué esto es necesario? Al parecer, que los valores de las celdas de las matrices de las aperturas-cierres y Altos-Bajos, podría dividirse por el número de días contabilizados, especialmente desde que hay un contador en el código.- Total_day . Pero en el proceso de trabajo en el guión, me enfrenté con la falta de algunas barras en el historial, por lo que los resultados que fueron apareciendo fueron interesantemente tranquilos. Por ejemplo, la altura obtenida para algunos de las barras eran totalmente irreal.

Las matrices restantes que eran necesarias se desprende de los comentarios.

Y ahora en realidad, compobar la repetibilidad de las barras con diferentes direcciones de la tendencia. Para ello vamos a tomar el gráfico por hora del USDJPY, se muestra en la figura 1. Como podemos ver, desde 20.11.2009 a 26.11.2009, el gráfico tiene una dirección alcista del 26.11.2009 al 02.12.2009 tiene una tendencia hacia los lados y del 2.12.2009 al 12.08.2009 tiene una tendencia alcista.

Vamos a comprobar si hay velas repetitivas durante este período y si hay, entonces averiguaremos la dirección de sus cambios.

Establecer el script en el gráfico por hora. Para los que no saben cómo se hace, proporciono una descripción más detallada. The script -script_Statistics_candles_V2.mq4, se descarga en la carpeta \Program Files\TerminalName\expert\scripts. Copia. El script aparece en la esquina inferior izquierda de la ventana "Navegador". Este aspecto:

Figura 3. Ventana del navegador

Si arrastra la secuencia de comandos con el ratón en esta ventana a la ventana de terminal, usted verá una ventana de propiedades - Figura 2. Especificar la fecha de inicio y finalización para el cálculo.

Para entender la lógica de nuestras acciones, por favor considere lo siguiente. Imagino que lo primero que haces en la mañana, después de levantarse de la cama, es ejecutar este script. Después de entrar los resultados de su trabajo en un gráfico, un ejemplo de esto se proporciona bajo el número 1. Su tarea es tratar de entender, basándose en los resultados de la escritura, lo que va ocurriendo en el mercado en el proximo dia o dos días.

Así que vamos a decir hoy es 26 de noviembre de 2009. Ejecutar el script, y te interesas en las estadísticas de las velas diciendo, el pasado día 6. Establece las propiedades del script: Open_session - 2009.11.20 (hace 6 días) Close_session - 2009.11.26 (es decir hoy), cualquier plazo puede utilizarse para el cálculo, estará en la gráfica horaria, es decir Period_time = 60. Realizamos esto a diario, aumentar el inicio y el final del script cada vez por un día.

Lo que vamos a hacer esta basado en datos históricos.

Haga clic en el botón "OK" en las propiedades, en la carpeta Expert Advisors, en el archivo de registro, consulte la siguiente entrada:

15:33:52 script_Statistics_candles_V2 EURUSD, H1: cargado con éxito
15:33:53 script_Statistics_candles_V2 EURUSD, entradas H1: 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: resultados del trabajo del script- Statistics_candles- 14:32
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Cálculo completo desde el 2009.11.20 al 2009.11.26
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Procesar - 5 días; 95 barras, periodo de 60 minutos
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el período hay 3 barras con hora de la abertura 0:0. Alcista- 1.Bajista- 2.Igual - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las baras con hora de apertura 0:0, promedio de distancia entre los precios de Apertura-Cierre - 5.6667 puntoas. Entre los precios Alto-Bajo - 12 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el período existen 5 barras con hora de la apertura 1:0. Alcista- 2.Bajista- 2.Igual - 1
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las baras con hora de apertura 1:0, promedio de distancia entre los precios de Apertura-Cierre - 4.2 puntos. Entre los precios Bajo-Alto - 11,8 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 2:0 .Àlcista- 2.Bajista- 2.Igual - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: para las barras con hora de apertura 2:0, promedio d distancia entre los precios de Apertura-Cierre. Entre los precios Altos-Bajos - 16,25 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 3:0. Alcista- 2.Bajista- 2.Igual - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 3:0, promedio de distancia entre los precios Apertura-Cierre - 11.5 points. Entre los precios Alto-Bajo - 25,25 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 4:0. Alcista- 2.Bajista- 2.Igual -0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 4:0, promedio de distancia entre los precios Apertura-Cierre - 12.5 points. Entre los precios Alto-Bajo - 21 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 5:0. Alcista- 3.Bajista- 1.Igual -0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 5:0, promedio de distancia entre los precios Apertura-Cierre - 9.5 points. Entre los precios Alto-Bajo - 17,75 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 6:0. Alcista- 3.Bajista- 1.Igual -0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 6:0, promedio de distancia entre los precios Apertura-Cierre - 13.5 points. Entre los precios Alto-Bajo - 22 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 7:0. Alcista- 4.Bajista- 0.Igual -0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 7:0, promedio de distancia entre los precios Apertura-Cierre - 5.75 points. Entre los precios Alto-Bajo - 15,25 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 8:0. Alcista- 1.Bajista- 3.Igual -0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 8:0, promedio de distancia entre los precios Apertura-Cierre - 8.25 points. Entre los precios Alto-Bajo - 22,75 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 9:0. Alcista- 1.Bajista- 3.Igual -0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 9:0, promedio de distancia entre los precios Apertura-Cierre - 10.75 points. Entre los precios Alto-Bajo - 22 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 10:0. Alcista- 2.Bajista- 2.Igual -0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 10:0, promedio de distancia entre los precios Apertura-Cierre - 12.75 points. Entre los precios Alto-Bajo - puntos 34.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 11:0. Alcista- 3.Bajista- 1.Igual -0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 11:0, promedio de distancia entre los precios Apertura-Cierre - 11.5 points. Entre los precios Alto-Bajo - 26,75 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 12:0. Alcista- 3.Bajista- 1.Igual -0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 12:0, promedio de distancia entre los precios Apertura-Cierre - 20.75 points. Entre los precios Alto-Bajo - 24,5 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 13:0. Alcista- 3.Bajista- 1.Igual -0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 13:0, promedio de distancia entre los precios Apertura-Cierre - 7 points. Entre los precios Alto-Bajo - 18.5 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 14:0. Alcista- 2.Bajista- 2.Igual -0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 14:0, promedio de distancia entre los precios Apertura-Cierre - 18.25 points. Entre los precios Alto-Bajo - 31,75 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 15:0. Alcista- 3.Bajista- 1.Igual -0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: FPara las barras con hora de apertura 15:0, promedio de distancia entre los precios Apertura-Cierre - 21.25 points. Entre los precios Alto-Bajo - 34,25 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 15:0. Alcista- 2.Bajista- 2.Igual -0 15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 16:0, promedio de distancia entre los precios Apertura-Cierre - 7 points. Entre los precios Alto-Bajo - 23,75 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 17:0. Alcista- 2.Bajista- 2.Igual -0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 17:0, promedio de distancia entre los precios Apertura-Cierre - 12.25 points. Entre los precios Alto-Bajo - 31,75 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 18:0. Alcista- 0.Bajista- 4.Igual -1
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 18:0, promedio de distancia entre los precios Apertura-Cierre - 6.75 points. Entre los precios Alto-Bajo - 31,75 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 19:0. Alcista- 2.Bajista- 2.Igual -0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 19:0, promedio de distancia entre los precios Apertura-Cierre - 19.25 points. Entre los precios Alto-Bajo - 28,25 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 20:0. Alcista- 2.Bajista- 2.Igual - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 20:0, promedio de distancia entre los precios Apertura-Cierre - 11.75 points. Entre los precios Alto-Bajo - 21,75 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 21:0. Alcista- 3.Bajista- 1.Igual - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 21:0, promedio de distancia entre los precios Apertura-Cierre - 14 points. Entre los precios Alto-Bajo - 20,75 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 22:0. Alcista- 3.Bajista- 1.Igual - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 22:0, promedio de distancia entre los precios Apertura-Cierre - 13.25 points. Entre los precios Alto-Bajo - 26 puntos.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para el periodo hay 4 barras con hora de apertura 23:0. Alcista- 1.Bajista- 2.Igual - 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: Para las barras con hora de apertura 23:0, promedio de distancia entre los precios Apertura-Cierre - 7.6667 points. Entre los precios Alto-Bajo, puntos de 15.6667.
15:33:53 script_Statistics_candles_V2 EURUSD,H1: -------------- Script trabajo completado --------------------
15:33:53 script_Statistics_candles_V2 EURUSD,H1: razón unidad 0
15:33:53 script_Statistics_candles_V2 EURUSD,H1: eliminado

Entrada de los resultados del trabajo en la gráfica. Pongámonos de acuerdo para introducir el número de barras alcistas en columna "B", el número de barras bajistas en la columna "M" y no para introducir el número de "no" barras en la gráfica.

Hora de apertura 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23
Barra tipo
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

 

Tabla 1. Los resultados del trabajo del EA

Bien, ahora veamos los resultados. En primer lugar, resultó que algunas barras tienen la misma dirección en el mismo período de tiempo, que es particularmente interesante. Observe que las celdas están pintadas en diferentes colores. Marqué las barras bajistas que solo contenían de los últimos 6 días en amarillo y las que sólo contiene barras alcistas en rosa.

El 26 de noviembre vemos que durante los últimos 6 días, durante las horas de apertura de 4, 9 y 16, todas los barras eran bajistas. Podemos suponer que los osos son fuertes hoy, y tal vez incluso mañana el mercado sea bajista.

27 de noviembre. Nuestro pronóstico demostró ser correcto. Los resultados de la escritura muestran que en los últimos 6 días, en las horas 6, 12, 16, 21, las velas eran solamente bajistas y por lo tanto podemos asumir que el mercado seguirá siendo bajista.

28 de noviembre. Nuestro pronóstico demostró ser correcto. En los últimos 6 días, disminuyó el número de velas bajistas, y sólo durante las 21 horas estaban completamente bajistas. Podemos suponer que la tendencia oso murió abajo y pronto comenzará a cambiar.

29,30 de noviembre, 1 y 2 de enero, tenemos la misma situación. Estamos en una tendencia lateral. Pero curiosamente, desde el 2 de enero, comienzan a aparecer sólo velas alcistas, asumimos que la tendencia cambiará, y como el día sigue, vemos que nos eran correctas en nuestras suposiciones.

Somos testigos de una situación interesante en el 5 º y 6 de diciembre. Hay un intervalo de tiempo solo, en el que las velas se inclinan en la misma dirección. Algo debe suceder. Pero cuando nos fijamos en la terminal, nos damos cuenta con alivio que estos extraños días cayeron en un fin de semana.

El 7 de diciembre tenemos de nuevo velas multidireccionales y esperan otra vez cambios en la tendencia.

El 8 de diciembre tenemos velas puramente alcistas a las 11 y 12 horas. En la figura 1, ¿la tendencia parece ser bajista? Pero si nos fijamos en la terminal, se sorprenderá al ver que alrededor de las 12:00, la tendencia se convertirá en aperitivo, y desde el 9 de diciembre, se convertirá en una tendencia alcista.

Bien. Como podemos ver, este método no nos puede dar una garantía del 100% y no existe todavía ninguna herramienta que pueda. Pero puede ser muy valiosa, y en conjunto con otros métodos de análisis técnico, mucho puede ayudar en predecir el comportamiento del mercado para el día siguiente o dos.

Conclusión

Escribiendo este artículo, puse tres goles delante mio:

  • En primer lugar, para mostrar la necesidad de aprender el lenguaje MQL4, a través del cual su capacidad para analizar el comercio aumentó enormemente, y para ofrecer a los interesados una herramienta para el análisis independiente de la repetición de las velas para diferentes intervalos de tiempo y pares de divisas.
  • En segundo lugar comprobar si hay velas recurrentes a intervalos diferentes en el historial y fue un descubrimiento para mí que en el transcurso de unos días, unas velas, con el mismo horario, llevó a cabo la misma dirección.
  • Y en tercer lugar ver si un cambio en la dirección de las velas puede servir como una herramienta para la predicción de los cambios de direcciones de la tendencia.

Es obvio que no podía realizar un análisis profundo del comportamiento de las velas en gráficos de tiempo diferente, en un solo artículo, ni tenía planeado hacer esto en primer lugar. Todos a explorar y analizar los pares y timeframes, los que sean particularmente interesantes para él. El script está en el archivo adjunto.

Gracias.