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

 
voron_026:

Si no te importa que lo diga. ¿Podría decirme exactamente en qué parte del código comienza el cálculo? Es difícil de entender.

Y si entiendo bien, entonces esta parte debe ser insertada en el código del EA como una función personalizada?

No puedo decirlo, porque no hay código. Lo que has presentado es un archivo ejecutable. El archivo de código tiene la extensión mq4.

 
Ihor Herasko:

No puedo decirlo, ya que no hay código. Lo que ha presentado es un archivo ejecutable. El archivo de código tiene una extensión mq4.

Lo tengo. Te muestro el código mql

Archivos adjuntos:
 
voron_026:

Lo tengo. Te envío el código mql.

Esto es lo que debe incluir en su EA. Excepto sin mostrar los objetos gráficos, si no piensas mostrarlos. Sin ninguna parte de este código, nada funcionará. No olvides incluir la biblioteca premium_mt4.dll. Sin ella, el programa no podrá recibir datos del sitio web de clusterdelta.

 
Ihor Herasko:

Esto es todo lo que hay que incluir en la EA.

¿Se puede hacer como una función separada?

¿Podemos especificar un buffer en el código del indicador y conectarnos a él a través de icustom?

 
voron_026:

¿Puede hacerse como una función separada? considerando que el contenido de la cabecera del indicador está escrito en la cabecera del EA

¿Se puede especificar un buffer en el código del indicador y conectarse a él a través de icustom?

La cabecera es un anuncio de la codificadora, no es necesario incluirla.

Sin mirar el código, puedo suponer que puedes establecer los buffers y leerlos desde el EA.

 
Alexey Viktorov:

Puedo suponer que es posible configurar los buffers y leerlos desde el EA.

¿Cómo hacerlo, si el indicador funciona a través de la dll? ¿Escribir la función para cargar los datos de la dll en el buffer?

¿O no entiendo algo mal?

 
Alexey Viktorov:

Sin mirar el código, puedo suponer que se pueden establecer búferes y hacer que se lean desde el EA.

Es un error no mirar el código. En principio, no se pueden utilizar los topes. Se trata de un perfil de mercado - líneas horizontales, que teóricamente puede ser ilimitado, y el número de buffers está limitado a 512. Sí, por supuesto, esta cantidad puede ser suficiente, pero ¿por qué ocupar la memoria para toda la profundidad del historial varias decenas de veces, si necesitamos mostrar los datos de un día?

 
voron_026:

¿Cómo hacerlo, si el indicador funciona a través de la dll? ¿Escribir la función de carga de datos de la dll al buffer?

Copie la descripción de la DLL en el Asesor Experto. Esta es la parte más fácil de la tarea. Y no se olvide de la disponibilidad de este DLL, cuando usted va a transferir el Asesor de Expertos.

A continuación, tenemos que distribuir los datos en las funciones apropiadas del EA (reescribir parte del indicador OnInit en el EA OnInit, etc.), añadir los parámetros de ajuste al EA, para que podamos personalizar el indicador, eliminar la salida gráfica y, lo más importante, decidir cómo se transferirán los datos para ser utilizados en el EA. Nadie decidirá esto por ti, porque no sabes cómo se utilizarán estos datos posteriormente.

 
Ihor Herasko:

Copie la descripción de la DLL en el EA. Esta es la tarea más fácil. Y no te olvides de la disponibilidad de esta DLL, cuando vayas a transferir el EA.

A continuación, tenemos que distribuir los datos en las funciones apropiadas del EA (reescribir parte del indicador OnInit en el EA OnInit, etc.), añadir los parámetros de ajuste al EA, para que podamos personalizar el indicador, eliminar la salida gráfica y, lo más importante, decidir cómo se transferirán los datos para ser utilizados en el EA. Nadie decidirá esto por ti, porque no sabes cómo se utilizarán estos datos posteriormente.

Te tengo. ¡Muchas gracias! Estaré trabajando.

 
Ihor Herasko:

Está muy mal no mirar el código. En principio, no se pueden utilizar los topes. Se trata de un perfil de mercado - líneas horizontales, que teóricamente puede ser ilimitado, y el número de buffers está limitado a 512. Sí, por supuesto, este número podría ser suficiente, pero ¿por qué ocupar la memoria de toda la profundidad de la historia varias decenas de veces, si necesitas mostrar los datos de un día?

Entonces, la pereza nació antes que nosotros. :))) Y no he afirmado que todos los elementos gráficos puedan ser sustituidos por topes indicadores. Sólo en este caso, debemos entender cuántas líneas de todas las creadas se tienen en cuenta en la toma de decisiones. Y en consecuencia, se puede tratar de hacer con el menor número de búferes.

Razón de la queja: