Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 1180

 
Alexey Belyakov:

¡Buenas tardes!

Ayúdame a resolver un problema sencillo.

Contador de huecos. Quiero contar los huecos de más de 10 puntos.

La variable "gap" se pone a cero. No entiendo por qué. Ya lo he intentado todo. He probado los bucles y la estática, pero no funciona. Sospecho que escribí mal los bucles.

#property strict
#property script_show_inputs

input int GapInPips   =  100;
input int GapCount    =  10;
//+------------------------------------------------------------------+
void OnStart()
{
   int i = 1, gap = 0;
   while(i < Bars && gap < GapCount && !IsStopped())
   {
      int r = (int)(MathAbs(Close[i + 1] - Open[i]) / Point);
      if (r >= GapInPips)
      {
         gap++;
         Print("ГЭП!========: ", gap, " , ВЕЛИЧИНА ГЭПА==: ", r, ", время гэпа = ", Time[i]);
      }
      i++;
   }
}
//+------------------------------------------------------------------+

0 09:36:28.169 t EURUSD,H1: ¡GAP!========: 1 , GAP EXPECTATION==: 182, gap time = 2020.06.15 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 2 , GAP VALUE==: 112, gap time = 2020.06.01 00:00:00

0 09:36:28.169 t EURUSD,H1: ¡GAP!========: 3 , GAP VALUE==: 134, gap time = 2020.05.11 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 4 , GAP VALUE==: 225, gap time = 2020.04.13 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 5 , GAP VALUE==: 192, gap time = 2020.03.30 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 6 , GAP VALUE==: 100, gap time = 2020.03.24 23:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 7 , GAP VALUE==: 926, gap time = 2020.03.16 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 8 , GAP VALUE==: 602, gap time = 2020.03.09 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 9 , GAP VALUE==: 136, gap time = 2020.03.02 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 10 , GAP VALUE==: 242, gap time = 2020.02.24 00:00:00

 

No puedo entender por qué i+1 inicia el script en un bucle infinito? Advertencia en la parte inferior - la expresión no tiene efecto, pero hay un efecto)

string com=""; // объявление глобальной переменной для хранения информации для отладки
//---
void OnStart(void)
  {
   for(int i=0; i<10; i+1)
     {
      myfunc();
     }
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void myfunc()
  {
//--- объявление статического счетчика
   static int cnt=0;
//--- сохранение информации для отладки в глобальную переменную
   com=(__FUNCSIG__+" cnt="+(string)cnt+"\n")+com;
   Comment(com); // вывод информации для отладки
//---
   cnt++;
//---
  }
 
awsomdino:

No puedo entender por qué i+1 inicia el script en un bucle infinito? Advertencia en la parte inferior - la expresión no tiene efecto, pero hay un efecto)

Como i+1 no aumenta el valor de i

Debería ser i++ o i+=1

 
Hola a todos. ¿Cómo puedo calcular las lecturas del indicador (media móvil diaria) al cierre del último día? Gracias
Moving Average of Oscillator (OsMA)
Moving Average of Oscillator (OsMA)
  • www.mql5.com
On Balance Volume (OBV) Индикатор Балансового Объема (On Balance Volume, OBV) связывает объем и изменение цены, сопровождавшее данный объем. Momentum Индикатор движущей силы рынка (Momentum) измеряет величину изменения цены финансового инструмента за определенный...
 
Carcass77:
Hola a todos. ¿Cómo calcular las lecturas del indicador (media móvil diaria) al cierre del último día? Gracias

¿Calcular o recibir? ¿MQL5 o 4?

 
Artyom Trishkin:

¿Calcular o recibir? ¿MQL5 o 4?

MQL4 obtener

 
Carcass77:

MQL4 obtener

Una media móvil simple con periodo 14, desplazamiento 0, calculada a partir de los precios de cierre en el gráfico diario del símbolo actual. Toma el valor de la primera barra (el cero es el día actual):

double ma_day1=iMA(Symbol(),PERIOD_D1,14,0,MODE_SMA,PRICE_CLOSE,1);
 
Artyom Trishkin:

Una media móvil simple con período 14, desplazamiento 0, calculada a partir de los precios de cierre en el gráfico diario del símbolo actual. Tomamos el valor de la primera barra (el cero es el día actual):

Gracias

 
Igor Makanu:

0 09:36:28.169 t EURUSD,H1: ¡GAP!========: 1 , GAP VALUE==: 182, gap time = 2020.06.15 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 2 , GAP VALUE==: 112, gap time = 2020.06.01 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 3 , GAP VALUE==: 134, gap time = 2020.05.11 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 4 , GAP VALUE==: 225, gap time = 2020.04.13 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 5 , GAP VALUE==: 192, gap time = 2020.03.30 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 6 , GAP VALUE==: 100, gap time = 2020.03.24 23:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 7 , GAP VALUE==: 926, gap time = 2020.03.16 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 8 , GAP VALUE==: 602, gap time = 2020.03.09 00:00:00

0 09:36:28.169 t EURUSD,H1: GAP!========: 9 , GAP VALUE==: 136, gap time = 2020.03.02 00:00:00

0 09:36:28.169 t EURUSD,H1: ¡GAP!========: 10 , GAP VALUE==: 242, GAP Time = 2020.02.24 00:00:00

¿Tal vez era una variante equivocada? Lo he copiado. Nada, no hay resultados en el registro.

 
Alexey Belyakov:

¿tal vez enviaste la versión equivocada? Lo he copiado. Nada, no hay resultados en el registro.

Ese es el único.

lo único que queda por hacer es averiguar en qué revista están los resultados de la impresión, ver la ficha de los expertos