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

 
Alexey Viktorov:

El array se escribe sólo en un archivo .bin y para abrirlo para leerlo a ojo... No conozco una aplicación de este tipo, es poco probable que exista. Para poder leer lo que se escribe, debe escribirse en formato .csv o .txt, respectivamente, con otras funciones en un bucle, no con FileWriteArray().

Gracias.
 
¿cómo corregir el error?
Archivos adjuntos:
 
¿cómo corregir el error?
Archivos adjuntos:
Screenshot_6.png  106 kb
 
02031986dima:
¿cómo corregir el error?

Haz esto.

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   
  }
//+------------------------------------------------------------------+

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 07.10.2006                                                     |
//|  Описание : Возвращает экстремум ЗигЗага по его номеру.                    |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (NULL или "" - текущий символ)          |
//|    tf - таймфрейм                  (      0     - текущий ТФ)              |
//|    ne - номер экстремума           (      0     - последний)               |
//|    dp - ExtDepth                                                           |
//|    dv - ExtDeviation                                                       |
//|    bs - ExtBackstep                                                        |
//+----------------------------------------------------------------------------+
double GetExtremumZZPrice(string sy="", int tf=0, int ne=0, int dp=12, int dv=5, int bs=3) {
  if (sy=="" || sy=="0") sy=Symbol();
  double zz;
  int    i, k=iBars(sy, tf), ke=0;

  for (i=0; i<k; i++) {
    zz=iCustom(sy, tf, "ZigZag", dp, dv, bs, 0, i);
    if (zz!=0) {
      ke++;
      if (ke>ne) return(zz);
    }
  }
  Print("GetExtremumZZPrice(): Экстремум ЗигЗага номер ",ne," не найден");
  return(0);
}
 

Hola.

Pregunta: En MT4, ¿es posible hacer coincidir el color del buffer EZ con el gráfico, siempre que el color del indicador en el gráfico haya cambiado?

En el código

#property indicators_color1 clrYellow

***

***

ObjectCreate(.......);

ObjectSetInteger(... indicators_color1);


Problema; al cambiar de color en el indicador, cambia el color de la línea del buffer, pero en el gráfico es el mismo que en #property. Necesita ser emparejado.

Hasta ahora resuelto a través del color de entrada , PERO son dos entradas en el código, dos cambios en la configuración, y me gustaría un ajuste a través del buffer.


Gracias por los comentarios.

Lo diagramé desde un smartphone.


 
kopeyka2:

Hola.

Pregunta: En MT4, ¿es posible hacer coincidir el color del buffer EZ con el gráfico, siempre que el color del indicador en el gráfico haya cambiado?

En el código

#property indicators_color1 clrYellow

***

***

ObjectCreate(.......);

ObjectSetInteger(... indicators_color1);


Problema; al cambiar de color en el indicador, cambia el color de la línea del buffer, pero en el gráfico es el mismo que en #property. Necesita ser emparejado.

Hasta ahora resuelto a través del color de entrada , PERO son dos entradas en el código, dos cambios en la configuración, y me gustaría un ajuste a través del buffer.


Gracias por los comentarios.

Lo diagramé desde un smartphone.

Debería funcionar. ¿Borras el objeto en OnDeinit() para crear uno nuevo cuando cambies los parámetros de entrada, con el color que quieras?

 
Taras Slobodyanik:

Si se sabe cómo crear un nombre de objeto exacto, no tiene sentido recorrer todos los objetos del gráfico.
Basta con repasar estos nombres (supuestos).

Gracias.

 

@Vitaly Muzichenko


Color diferente

El código es Magenta.

Los puntos son un amortiguador. La línea es un gráfico. Éste es el problema. ¡¡¡¡El color de la variable global a la líneaObjectSetInteger(...indicators_color1) NO SE CONVIERTE al cambiar!!!! Creo que la#propiedad indicadores_color1 clrMagenta cambia en el gráfico adjunto se refiere SOLO al buffer... El resto del valor se utiliza en el código como variable global....


Corregir si se equivoca. SPS

 
Vitaly Muzichenko:

Debería funcionar. ¿Estás borrando un objeto en OnDeinit() para crear uno nuevo cuando se cambien los parámetros de entrada, con el color que quieres?

Borro DOS veces; 1)OnDeinit 2) una vez en el cuerpo del código.
 
kopeyka2:

Hola.

Pregunta: En MT4, ¿es posible coordinar el color del buffer con el gráfico, si se cambia el color del indicador en el gráfico?


NO, NO PUEDE...

es curioso, pero NO se puede obtener lo que el usuario seleccionó en la pestaña "Colores" dentro del indicador