Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 670
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
¿Cómo crear una matriz de instancias de clase?
Hice ClassName* className[], luego ArrayResize en él, pero no me da acceso a los métodos
Tu clase, cuyas instancias quieres recoger en un array, debe heredar de CObject.
Y entonces es sencillo: crea una lista (array) de objetos CArrayObj, y añade tus objetos a ella.
Buscando las palabras "plantilla de indicadores" y tu nombre no se encuentra nada, y ya has escrito aquí sobre ese volumen de Guerra y Paz.
Me viene a la mente cualquier combinación de palabras del post.
Bueno, lo siento, sobre la plantilla de indicadores tal vez me confundí - la plantilla de arrastre fue publicada.
Pongámoslo así: cree una plantilla de indicador en el editor, añada el número necesario de variables de entrada y los búferes a dibujar.
A continuación, desglosa lo que tienes que hacer de la tarea específica.
Si dices que es malo, dime cómo hacerlo bueno. ¿Mover los cálculos a OnInit?
Reprimenda justa )) Aquí, una variante del código que se publicó aquí:
Intenta hacerlo así. No es necesario mover nada a OnInit.
Reprimenda justa )) Aquí, una variante del código que se publicó aquí:
Intenta hacerlo así. No es necesario mover nada a OnInit.
No he publicado dicho código aquí - no es lo mío :)
Utilizo otras construcciones, es más sencillo y claro.
En OnInit() debería ser transferido. ¿Por qué hay que asignar un array al buffer del indicador en cada tick?
No he publicado dicho código aquí, no es lo mío :)
Utilizo otras construcciones, más sencillas y claras.
Es mío, ¿cómo podría ser más sencillo? ))) (al menos, yo también tengo en mi plantilla el comentariolimit = rates_total - 1;//--- Primera llamada del indicador o cambio de timeframe o carga de datos del histórico) y mi estilo de formato - una llave cerca de for() {
Para aprender a escribir su propio indicador, tome la plantilla anterior y agregue al menos el precio de cierre y obtenga su primer indicador, luego aprenda a hacer el MAH a partir de este precio de cierre
No he publicado dicho código aquí - no es lo mío :)
Utilizo construcciones diferentes, más sencillas y claras.
No es necesario copiar nada en OnInit(). ¿Por qué querrías asignar un array al buffer del indicador en cada tick?
No es tu código. Fue publicado por algunos de mis colegas, pero no recuerdo quién y dónde. A este código me refería cuando escribí que no había que mover nada a OnInit pero no el código fuente. No fui muy claro.
¿Y qué construcción recomendaría? Esto parece ser muy simple.
Ah, ahí está el autor de la pieza )))) Por delante de mí. Por cierto, yo también utilizo este estilo de formato: con una llave de apertura en una línea.Ah, aquí está el autor del fragmento )))) Por delante de mí. Por cierto, yo también utilizo este estilo de formato: con una llave de apertura en una línea.
Se ejecuta el asistente para crear un indicador, se seleccionan los tipos y el color de las líneas y se añaden las entradas, si es necesario
y eso es todo, el indicador está listo, entonces copiael cuerpo deOnCalculate() de la plantilla y escribe los cálculos ,
puede escribir su primer indicador en 1 minuto, el código "¡Hola palabra I indicador! - He mostrado :)
ZS: Por cierto, los indicadores se pueden transferir de MT4 a MT5 de esta forma, lo principal es configurar correctamente los buffers de los indicadores, en MT5 hay un deslizamiento en la indexación de los arrays bajo los buffers.... son sólo arrays con la indexación habitual de los arrays )))) .... antes era difícil acostumbrarse a la indexación de los buffers de los indicadores en MT4, ahora por el contrario es imposible acostumbrarse y cambiar a MT5 ))))Este no es su código. Lo publicó uno de mis colegas, pero no recuerdo quién y dónde. Era a este código al que me refería cuando decía que no había que mover nada a OnInit pero no el código fuente. No fui muy claro.
¿Y qué construcción recomendaría? Este parece ser muy sencillo.
Ah, ahí está el autor de la pieza )))) Por delante de mí.sí, ¿para qué sirve el código de la plantilla del indicador? ejecute el asistente para crear un indicador , elija los tipos y el color de las líneas y, si es necesario, agregue entradas
y eso es todo, el indicador está listo, luego copie el cuerpo de la plantilla OnCalculate() y escriba los cálculos,
puede escribir su primer indicador en 1 minuto, el código de arriba es "¡¡¡Hola, palabra I, indicador!!!" Yo mostré :)
PD: por cierto, de esta forma, los indicadores se pueden transferir de MT4 a MT5, lo principal es configurar correctamente los búferes de indicadores, en MT5 hay un horror que con las matrices de indexación para los búferes ... son solo matrices con la matriz habitual)))) indexación .. .. antes era difícil acostumbrarse a la indexación de los búferes de indicadores en MT4, ahora, por el contrario, es imposible acostumbrarse y cambiar a MT5))))Nada complicado. Un ejemplo de un indicador multiplataforma (usa una clase), pero la plantilla se puede extraer: elimine la clase y todo lo superfluo que dará errores después de eso, la plantilla multiplataforma permanecerá.
Este indicador funcionará de la misma manera en ambas plataformas sin modificaciones, solo compilación con la extensión requerida. Tuve que dividir el código en dos partes: la clase y el indicador en sí (todo estaba en una sola lista)
Clase:
Indicador: