Aprender y escribir juntos en MQL5 - página 40

 
El indicador entra en el proceso general independiente de recálculo de los indicadores, que transcurre en paralelo a los expertos.
 
Dimka-novitsek: ... Pero, ¿qué hará que el mango del indicador se redibuje con nuevos ticks o al menos barras, si se crea en OnInit?

No es el asa del indicador la que se redibuja, sino las construcciones gráficas del propio indicador. El mango es sólo un valor entero.

Dimka-novitsek:
De alguna manera es poco realista escribir en su interior.

Permítanme explicarlo en términos sencillos. El indicador puede ejecutarse de dos maneras: manualmente y mediante programación. En ambos casos, el terminal crea y soporta los mismos procesos de cálculo. Después del arranque suave, como en el manual, sólo hay que arrancar el indicador una vez, todo lo demás se calculará de acuerdo con el código. Para el inicio del programa del indicador se utiliza la función iCustom() y sus funciones análogas. Una vez que iCustom() con el conjunto correcto de parámetros se inicia con éxito, los procesos de cálculo apropiados funcionarán de la misma manera, como lo hacen en el inicio manual.

Se pueden lanzar varios indicadores de forma programada al mismo tiempo. Un "handle" no es más que un identificador que permite dirigirse a un determinado proceso computacional. Mediante un asa, se pueden copiar los datos calculados de un determinado indicador lanzado de forma programada.

Por lo tanto, para iniciar el indicador de forma programada y obtener su mango, en general, basta con hacerlo en OnInit(). No se inicia el indicador manualmente con cada tick para "redibujarlo".

 
¡¡¡¡Gracias!!!!
 
Gracias. Básicamente lo tengo. Y así he estado sentado aquí pensando durante dos horas. Bueno, no estoy contento con el anuncio de hendle en el init. Se trata de un robot multidivisa en el que aparecen una veintena de pares de divisas. En diferentes lugares del robot hay llamadas a las funciones especificadas, se establecen diferentes plazos... El robot no es realista al declarar tantos asideros antes de los cálculos, es decir, puede ser real, pero es una tontería... En el 4 funcionó y ¡¡¡se crujió!!! Estoy sentada aquí y realmente estoy luchando...
int OnInit()
  {
//---
  if(Digits() == 3 || Digits() == 5) slip=slip *10; 
  //рисовка места под дашборд   
   time1 = 0;
   initGraph();
   ArrayInitialize(avg_,1);
//---
 ATR_handle=iATR(symbol,periodd(timeframe),period);
   return(0);
  }
//+------------------------------------------------------------------+
 
En realidad ERR_MARKET_NOT_SELECTED 4302 No se ha seleccionado ningún símbolo en MarketWatch - tratar el tema más a fondo, como dónde está la raíz del problema.

¿Cómo no se selecciona? ¿Qué no se selecciona? ¿Qué es MarketWatch? ¿Qué es el símbolo? ¿Par de divisas? ¡Así que no, tengo un par de divisas en mi código como entrada de la función muy bien!
 
Incluso lo comprobaré, y creo que sé cómo. Pero no puedo encontrar MarketWatch en google o Yandex, excepto una línea que se fija en la nueva versión.
 
Dimka-novitsek:
En realidad, ERR_MARKET_NOT_SELECTED 4302 Símbolo no seleccionado en MarketWatch - tratar el tema más a fondo, como dónde está la raíz del problema.

¿Cómo no se selecciona? ¿Qué no se selecciona? ¿Qué es MarketWatch? ¿Qué es el símbolo? ¿Par de divisas? ¡Así que no, tengo un par de divisas en mi código como entrada de la función muy bien!

Mira la función SymbolSelect(). MarketWatch es la ventana de vigilancia del mercado. Antes de hacer una pregunta, intente encontrar la respuesta utilizando la búsqueda del foro en la esquina superior derecha.

P.D. No hace falta que escribas un agradecimiento en cada post. :)

 

Sí.

Comprobado-insertado la huella, así.

 double iATRf (string symbol, int timeframe, int period, int shift  ){
  
  Print("symbol");Print(symbol); Print("timeframe");Print(timeframe); Print( "period");Print( period);Print("shift");Print(shift);  
  
    ATR_handle=iATR(symbol,periodd(timeframe),period);
   CopyBuffer(ATR_handle,0,0,100,ATR);
    ArraySetAsSeries(ATR,true); 
    return( ATR[shift]); }  

Y ya sabes, la comprobación mostró que la función toma parámetros normales y sanos. Ahí lo tienes. ¡Y voy a revisar los enlaces para entender mejor la pregunta ! Gracias.

 
Dimka-novitsek:
Incluso lo comprobaré, y creo que sé cómo. Pero MarketWatch no se encontró en Google y Yandex, salvo una línea que se arregló en la nueva versión.
Bueno, Dimon Vladimirovich, eres un tipo divertido :)
 

¡¡¡Gracias!!!

¿Significa esto que la plataforma no admite este par? 2012.09.21 16:23:17 No se ha podido crear un indicador iMA para CADJPY/PERIOD_D1, código de error 4302

Документация по MQL5: Технические индикаторы / iMA
Документация по MQL5: Технические индикаторы / iMA
  • www.mql5.com
Технические индикаторы / iMA - Документация по MQL5