[¡Archivo!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. No puedo ir a ningún sitio sin ti - 4. - página 574

 
Ekburg:

Pero si no te importa, escribe tu propio material y enseña a un principiante indefenso cómo hacerlo correctamente, te lo agradecería.

De nada. ¡Sólo que, por alguna razón, todos los demás principiantes, inmediatamente comienzan a escribir su arrastre! ¡¡¡¡Y cuando no lo consigue, QUIERE que todo el mundo solucione sus hffantasías!!!! Hay un número ENORME de barras de arrastre en Codabase. Están en casi todos los EA. Mientras no puedas escribir la tuya propia - CREE la de otro - ¡GRATIS!

P.D. Empiece con el análisis de los códigos de otras personas. No todos los códigos sin comentarios. Cuando todas las líneas estén claras, pasa a escribir tus propias funciones. En este caso, comparto con vosotros mi experiencia de dominio del idioma para conseguir el RESULTADO, por supuesto, ¡si "lo necesitas"! :)

 
Roll:

"Dos subespecies de ciervo rojo, el ciervo rojo de Altai (Cervus elaphus sibiricus) y el ciervo rojo de Tien Shan (Cervus elaphus songaricus). Los ciervos rojos se crían en viveros y granjas especializadas para producir astas con las que se elabora un medicamento, la pantocrina". (KiM).

¿No tiene errores mecánicos o tipográficos?
 
TarasBY:

De nada. ¡Sólo que, por alguna razón, todos los demás principiantes, inmediatamente comienzan a escribir su arrastre! ¡¡¡¡Y cuando no lo consigue, QUIERE que todo el mundo solucione sus hffantasías!!!! Hay un número ENORME de barras de arrastre en Codabase. Están en casi todos los EA. Mientras no puedas escribir la tuya propia - CREE la de otro - ¡GRATIS!

P.D. Empieza por analizar los códigos de otras personas. No todos los códigos están exentos de comentarios. Cuando todas las líneas estén claras, pasa a escribir tus propias funciones. En este caso, comparto con vosotros mi experiencia de dominio del idioma para conseguir el RESULTADO, por supuesto, ¡si "lo necesitas"! :)


Gracias. He buscado en el codebase, he encontrado algo, he intentado sustituir, he cambiado por así decirlo, he leído miles de líneas de código pro y no sólo, da un error 1 al modificar, y todo el infierno sabe qué hacer. Me he enfrentado a varias dificultades al escribir y trabajar con EAs, pero trato de resolverlas yo mismo, de lo contrario no obtendría una buena experiencia, he leído ayuda, releído libros de texto, resuelto problemas y obtenido un pensamiento un poco diferente al que tenía cuando empecé, pero no logré resolver este problema por mí mismo, ¡así que recurrí a ustedes, profesionales! No escribiría Traylin si no lo necesitara para que mi EA funcione:)
 
Roll:
Tutorial de MQL4 -->Operaciones comerciales -->Modificación de órdenes --> modifystoploss.mq4

Lo he leído muchas veces, he intentado aplicarlo, el resultado es el mismo! El código principal también tiene modificaciones, pero de las órdenes, ahí todo está bien! Pero la modificación de las órdenes de mercado es un lío, no entiendo por qué.
 
rigonich:

Prueba la función que te dejé en el archivo adjunto de la página anterior. La he rediseñado un poco, pero no tengo forma de probarla, ni Expert Advisor donde insertarla. No tengo experiencia, MQL es el único lenguaje que conozco un poco, lo he estado estudiando con ayuda en MT y rompiendo el código de alguien de Kodobase, ahora siento que me falta conocimiento y experiencia y he decidido buscarlo en el foro. Me fijo en lo que la gente pregunta, intento resolver los problemas de los demás, poco a poco voy ganando experiencia y me gano el derecho moral a obtener respuestas a mis preguntas.

El resultado es el mismo... error 1
 
Buenas personas me dicen como trabajar con arrays, necesito seleccionar los valores máximos y mínimos de la barra de cierre y apertura, en el intervalo de tiempo de 1.00 a 10.00, he intentado hacerlo, pero no es lo mismo.
int MAX()
{
if (Hour()==10)
        {
      
        for(i=0; i<=9; i++)
        MAX1 = High [iClose(NULL,PERIOD_H1,i)];
        }
        return(MAX1);
        
}
Pero no está bien. Da como resultado '[' - el índice de la matriz debe ser un entero C:\N-Archivos de programa\N-EnstaTrader\N-ExpertsProfiler19 EUR-JPY.mq4 (61, 21)
Qué es lo que falla, cómo solucionarlo
 
Ekburg:

Gracias. He buscado en el codebase, he encontrado algo, he intentado sustituirlo, lo he cambiado de esta manera y de la otra, he leído miles de líneas de código pro, y no sólo eso, da error 1 al modificar y ya está, el infierno sabe qué hacer. ¡Me he enfrentado a varias dificultades en la escritura y el posterior trabajo de la EA, pero para resolverlos por mí mismo, de lo contrario no me dan una buena experiencia, he leído la ayuda, volver a leer el tutorial, y resolver los problemas, empecé a pensar un poco diferente que cuando empecé, pero este problema por sí solo no funcionó, así que me dirigí a ustedes, los profesionales! Yo no escribiría Traylin, si no es necesario para el trabajo de la EA:)

Para evitar el error 1, debe comprobar los parámetros pasados a la función de modificación antes de llamar a la función. Si al menos uno de ellos no es igual a los parámetros de la orden modificada, puede llamar a la función OrderModify(), de lo contrario saldrá o error 1.
 
rigonich:

Para evitar el error 1, debemos comprobar los parámetros pasados para modificar la función antes de llamar a la función. Si al menos uno de ellos no es igual a los parámetros de la orden actualizable, puede llamar a la función OrderModify(), de lo contrario obtendrá la salida o error 1.

Esa es la cuestión: ¡todo está bien ahí! Puse las impresiones ahí para que se rastree durante la prueba qué valores se pasan a la función de modificación, todo está bien ahí, la parada es diferente, no se lanza nada innecesario, todo está dentro de los límites permitidos por el servidor, y los oponentes en el código de arriba no permiten pasar los mismos valores...
 

Necesidad de normalizar el gráfico de precios, cualquier par de divisas de su elección. Lo necesito para un indicador. He probado a dividir el valor actual por el anterior - obtengo una especie de oscilación alrededor de 1. Se me ha ocurrido que debo convertir el gráfico de valores absolutos a relativos, es decir, en este caso podré ver el cambio porcentual de la cotización. Se ha puesto en práctica. Ya es mejor y prácticamente lo que necesitamos. Sin embargo, mi deseo final es normalizar las cotizaciones en el rango [0:1] .Por cierto, aquí está lo que necesito pero en burgués - me gustaría lo mismo en ruso: http://people.revoledu.com/kardi/tutorial/Similarity/Normalization.html

Ya me he cansado de pelearme con esto. No puedo borrar todos los pedidos pendientes normalmente, no le cojo el tranquillo:

   for (int i=OrdersTotal()-1;i>=0;i--)
      if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
         if (OrderType()==OP_BUYLIMIT || OrderType()==OP_SELLLIMIT)
            if (OrderMagicNumber()==Magik && OrderSymbol()==Symbol())
            while(!OrderDelete(OrderTicket(),CLR_NONE)){}

Incluso he añadido al bucle FOR WHILE que los pedidos borrados siguen ahí, pero todavía no los he borrado. Tengo muchas órdenes pendientes de eliminar, es decir, unas 20, ¿puede ser que sea algo complicado?

 
Sergstuddek:
Por favor, aconsejen cómo trabajar con arrays, necesito seleccionar los valores máximos y mínimos de cierre y apertura de la barra, en el intervalo de tiempo de 1.00 a 10.00, he intentado hacerlo, pero no está bien. Da '[' - el índice de la matriz debe ser un número entero C:\N-Archivos de programa\N-EnstaTrader\N-ExpertoProbase19 EUR-JPY.mq4 (61, 21)
¿Qué es lo que está mal, cómo arreglarlo?

La advertencia significa que el índice del array debe ser un número de tipo int. Es necesario utilizar iClose() y iOpen(). Determine el número del compás, cuyo tiempo de apertura es de 1h y seleccione en el ciclo de los 10 compases siguientes, los que desee.