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

 
Nauris Zukas:

De nuevo, ¿qué tiene que ver eso?

Simplemente porque no sé lo que quieres conseguir. Me estás enseñando fotos. No me gustan los cómics, no es lo nuestro, es americano. Son los que pueden dar sentido a un Spiderman en una cuerda al revés. Aquí hay que contarlo en ruso.

 
Artyom Trishkin:

Significa que la arquitectura de tu programa es errónea desde el principio, ya que tienes esos problemas al hacer cambios.


No son los problemas, sino el esfuerzo que supone.

Cómo se puede juzgar lo que no se conoce...

 
Aleksey Vyazmikin:

No son los problemas, es la carga de trabajo.

Cómo se puede juzgar lo que no se conoce...

La experiencia te lo dice. Ahora mismo eres demasiado perezoso para trabajar en mantener la sencillez - así que sólo va a ser más difícil a partir de aquí ;)

 
Artyom Trishkin:

La experiencia me lo dice. Ahora mismo te da pereza esforzarte para que sea fácil, así que sólo va a ser más difícil ;)


Estoy contento con lo que tengo. ¿Qué tiene que ver eso con la pereza y el esfuerzo? Tengo 17k líneas de código EA, sin contar una docena de clases...

 
Artyom Trishkin:

Tus fotos están por ahí en algún lugar... ¿Por qué alguien que ha decidido ayudarle debe correr allí? Si no quieres ponérselo fácil a la persona que te ayuda y a ti mismo, sigue haciendo que la gente salte por las páginas en busca de tus publicaciones que sólo tú quieres.

¿Qué has rodeado ahí? ¿Una foto? ¿Cree que hoy en día todo el mundo tiene una mentalidad de clipcomic? ¿Le resulta difícil escribir con palabras lo que está haciendo y lo que quiere conseguir como resultado?

Ya lo he descrito con palabras y he añadido una imagen para facilitar la comprensión.
Los que decidan ayudar siempre verán de qué se trata y no se limitarán a dejar un comentario para darse de baja. No es la primera vez que me encuentro con usted, Artyom Trishkin.

 
Nauris Zukas:

Ya lo he descrito con palabras y he añadido una imagen para que sea más fácil de entender.
Quien se decida a ayudar siempre verá de qué se trata y no se limitará a dejar un comentario para darse de baja. No es la primera vez que me encuentro con usted, Artyom Trishkin.

Como quieras. Quería ayudar.
 
Aleksey Vyazmikin:

Estoy contento con lo que tengo. ¿Qué tiene que ver eso con la pereza y el esfuerzo? Tengo 17k líneas de código EA, sin contar una docena de clases...

Como ves, los cambios muy pequeños requieren mucho esfuerzo. Así que no es óptimo desde el principio. La cuestión no es el número de líneas de código, sino hacer cambios en él de forma muy barata.
Yo, por ejemplo, tengo un programa de 50k líneas o más, que no requiere una gran cantidad de trabajo para hacer cambios. Sólo hay que especificar las condiciones adecuadas en el método de la clase requerida.
 
Artyom Trishkin:
Como ves, cambios muy pequeños requieren muchos esfuerzos. Así que no es óptimo desde el principio. No se trata del número de líneas de código, sino de realizar cambios en él de forma fácil y económica.
Yo, por ejemplo, tengo un programa de 50k o más líneas que no requiere una gran cantidad de trabajo para hacer ediciones. Basta con especificar las condiciones adecuadas en el método de la clase adecuada.

Me parece que nuestra conversación no trata de nada.

Estoy diciendo que es conveniente tener una sola función en la inicialización para implementar la tarea más necesaria - para ocultar los indicadores al vender el EA.

Y tú sigues intentando explicarme que mi código es malo cuando ni siquiera lo has visto una vez. Por supuesto, no es perfecto, pero no es tan primitivo como el de la Ayuda.

 
Aleksey Vyazmikin:

Me parece que nuestra conversación no trata de nada.

Digo que es conveniente tener una sola función en la inicialización para implementar la tarea más demandada - ocultar los indicadores al vender un Asesor Experto.

Y tú sigues intentando explicarme que mi código es malo cuando ni siquiera lo has visto una vez. Por supuesto, no es perfecto, pero no es tan primitivo como el de la Ayuda.

Se hace un objeto indicador. En el constructor de la clase se establece la visibilidad del indicador después de la prueba. Se pasa su visibilidad al método que crea el nuevo indicador. Y no es necesario recorrer 17 líneas de código ;)
Eso es, sin verlo a primera vista, pero por tus explicaciones, tener un poco de idea.
 

Cómo añadir una función Primera/Anterior a un indicador ya preparado. Es decir, editarlo.

Todo el mundo dice que es

int OnCalculate (const int rates_total,
const int prev_calculado,
const datetime& time[],
const double& open[],
const double& high[],
const double& low[],
const double& close[],
const long& tick_volume[],
const long& volumen[],
const int& spread[])
{

Debe sustituirlo por

int OnCalculate (const int rates_total,
const int prev_calculated,
const int begin,
const double &price[])
{

Pero todo esto no da resultados. Esto podría ayudar a la hora de escribir en lugar de editar.

Por favor, dime cómo escribir esta función, si puedes con más detalle.