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

 
lil_lil:

La verdad es que no, aunque me vendrá bien para la prueba. Quiero que el indicador se adjunte al gráfico online después de adjuntar el EA. ¿Es posible?

No lo he probado. En teoría, es poco probable que funcione. Tal vez esa sea la razón por la que aún no lo he probado. Se verá así: cada vez que se cargue el EA, se aplicará la plantilla, sobre la que se lanza de nuevo el EA. Y todo se repite, se aplica la plantilla, se lanza una nueva copia del EA y así sucesivamente.

Sería mejor, si lo quieres tanto que te duelen los dientes, hacer un script que aplique la plantilla con el EA y los indicadores.

 
Gracias a todos por su participación. Intentaré llamar a Chart ApplyTemplate () en la terminal global y asignar un valor de variable, pero antes de llamar a ChartApplyTemplate() comprobaré su valor.
 

Hola,

¿Cómo puedo crear barras utilizando 30 ticks de cada PERIOD_M1?

Quiero crear un nuevo personaje para mi análisis.

 
Hola! Por favor, ayúdame a resolver un problema, estoy teniendo problemas. Necesito prescribir en el código del EA, que trabaja en el gráfico activo del símbolo 1, que dibuje líneas horizontales en otro gráfico NO activo del símbolo 2. Significa que el gráfico del símbolo 2 está abierto en la pantalla. Por ejemplo, para el segundo símbolo SUI30 hice esto:
double SUop0 = iOpen("SUI30",PERIOD_H1,0);
double lp = SUop0-67;
double hp = SUop0+67; 

   Fun_New_Bar();
      if(New_Bar)      
         {
   ObjectCreate("SUI30","lineForBuy",OBJ_HLINE,0,0,lp);
   ObjectCreate("SUI30","lineForSell",OBJ_HLINE,0,0,hp);
         }
pero el meta-editor da un mensaje de conversión implícita de 'cadena' a 'número'. ¿Qué estoy haciendo mal y cómo lo resuelvo? Gracias.

 
novichok2018:
Hola! Por favor, ayúdame a resolver un problema, no puedo hacerlo. En el código del Asesor Experto, trabajando en el gráfico activo del símbolo 1, prescribe el trazado de líneas horizontales en el otro gráfico NO activo del símbolo 2. Significa que el gráfico del símbolo 2 está abierto en la pantalla. Por ejemplo, para el segundo símbolo SUI30, hice esto: pero el meta-editor da un mensaje de conversión implícita de 'cadena' a 'número'. ¿Qué estoy haciendo mal y cómo lo resuelvo? Gracias.

Tenemos que utilizar otra sobrecarga de la función

bool  ObjectCreate( 
   long          chart_id,      // идентификатор графика 
   string        object_name,   // имя объекта 
   ENUM_OBJECT   object_type,   // тип объекта 
   int           sub_window,    // индекс окна 
   datetime      time1,         // время первой точки привязки 
   double        price1,        // цена первой точки привязки 
   ... 
   datetime      timeN=0,       // время N-точки привязки 
   double        priceN=0       // цена N-точки привязки 
   );

Y este identificador de gráfico debería encontrarse al intentar enumerar los gráficos desde ChartFirst();

long  ChartNext( 
   long  chart_id      // идентификатор графика
   );

Ejemplo de la documentación

//--- переменные для идентификаторов графиков 
   long currChart,prevChart=ChartFirst(); 
   int i=0,limit=100; 
   Print("ChartFirst = ",ChartSymbol(prevChart)," ID = ",prevChart); 
   while(i<limit)// у нас наверняка не больше 100 открытых графиков 
     { 
      currChart=ChartNext(prevChart); // на основании предыдущего получим новый график 
      if(currChart<0) break;          // достигли конца списка графиков 
      Print(i,ChartSymbol(currChart)," ID =",currChart); 
      prevChart=currChart;// запомним идентификатор текущего графика для ChartNext() 
      i++;// не забудем увеличить счетчик 
     }
 
Alexey Viktorov:

Tenemos que utilizar una sobrecarga de función diferente

Gracias, estoy tratando de entenderlo.

 
Alexey Viktorov:

Tenemos que utilizar otra sobrecarga de la función

Y este identificador de gráfico debería encontrarse al intentar enumerar los gráficos desde ChartFirst();

Un ejemplo de la documentación

Desgraciadamente, mis intentos de salir no condujeron a nada. Simplemente añadí los errores relacionados conChartNext() a los mensajes existentes. No entiendo el punto.

 
novichok2018:

Desgraciadamente para mí, tratar de entenderlo no me llevó a nada. Acabo de añadir los errores relacionados con la aplicación ChartNext() a los mensajes existentes. No entiendo el punto.

Bueno, puedes usar un ID de gráfico constante para hacerlo más fácil. Escribir un guión

Print(ChartID());

Ejecútalo en el gráfico en el que quieras dibujar estas líneas. A continuación, escriba este valor en la función como el ID del gráfico.

Y por el lado bueno, el ejemplo de la documentación, no es una función ya hecha, como para tomarla y usarla. Es necesario comprobar el símbolo y el periodo en el bucle. Si se encuentra el correcto, se sale del bucle y se utiliza el identificador obtenido.

 

hay una constante en la línea cl_ de OPENCL y es igual a #define CL_DBL_MAX 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368.0 al comprobar el grado de dos en 1024 obtuvo. 2^1024 = 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137216 Y luego debajo de eso está el número de pi

después de

#define CL_M_PI 3.141592653589893115998

3.141592653589793238462643383279502884197169

explique por qué ????

 
Alexey Viktorov:

Pues bien, puedes utilizar un ID de gráfico constante para facilitar la tarea. Escribir un guión

Ejecútalo en el gráfico en el que quieras dibujar estas líneas. A continuación, escriba este valor en la función como el ID del gráfico.

Y por el lado bueno, el ejemplo de la documentación no es una función ya hecha, sólo hay que tomarla y usarla. Es necesario en el bucle comprobar el símbolo y el punto. Si se encuentra el correcto, se sale del bucle y se utiliza el identificador obtenido.

Gracias. Todo ha funcionado con el guión, dibuja las líneas.