Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 530
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
¡Por favor, ayuda! (MQL4)
Necesito obtener la hora de apertura del Día en el gráfico M15 teniendo en cuenta cada barra - para el indicador.
Decidí calcular en segundos, teniendo en cuenta la barra actual (0), pero debo estar equivocado.
D_Shift=(Open_time-pos*15*60-(Open_time-Open_timeTF))/1440*60;
Si para el indicador, entonces:
Pero: este código se ejecutará cada vez que se introduzca OnCalculate() - dependiendo de sus necesidades, puede añadir la bandera bool o colocar el código en una función separada.
Si para el indicador, entonces:
Pero: este código se ejecutará cada vez que OnCalculate() - dependiendo de sus necesidades, o añadir una bandera bool o colocar el código en una función separada.
Gracias, pero en cada garrapata para hacer el recuento no es bueno - Tengo que analizar su código, sin embargo, mientras que quiero entender por qué mi código no funciona, en el registro se devuelven los números extraños
resulta que hay una diferencia de 479 barras entre la primera barra del día y la barra actual, ¿por qué?
Gracias, pero recalcular en cada tick no es bueno - Tengo que pensar en su código, sin embargo, mientras quiero entender por qué mi código no funciona, el registro devuelve números extraños
resulta que hay una diferencia de 479 barras entre la primera barra del día y la barra actual, ¿por qué?
Sí indiqué que no soy psíquico y por eso:
Pero: este código se ejecutará cada vez que se introduzca OnCalculate() - aquí, dependiendo de sus necesidades, añada una banderaboolo ponga el código en una función separada.
Sí señalé que no soy vidente y por eso:
Karputov Vladimir, no entiendo tu código - soy un principiante en este negocio yno he utilizado la funciónOnCalculate antes, por lo que no puedo entender lo querates_totalse calcula allí y, más importante, ¿a dónde debe ser devuelto? Tampoco entiendo cómo hacer todo en una función separada... es difícil de entender sin comentarios.
Aquí está el código completo del indicador MQL4:
Algoritmo de su trabajo: Cuando se inicia el indicador, se establece el intervalo de tiempo del temporizador (por ejemplo, 10 segundos) - significa que cada 10 segundos se activará el temporizador:
y a la variableIsDefineTime se le asigna el valor true. ¿Para qué sirve? Cuando IsDefineTime=true podemos, en OnCalculate(), entrar en un bucle para determinar la hora de inicio del día:
En este bucle comenzamos a recorrer la matriz time[] (esta matriz almacena los valores de tiempo de apertura) desde la barra más a la derecha (su índice es "0"). Cuando se encuentra el inicio del día, desestablecemos su valor y asignamos a la variableIsDefineTime el valorfalse - de esta manera nos protegemos de seguir entrando en el ciclo de determinación de la hora de inicio del día, hasta que el temporizador se ejecute de nuevo.
Karputov Vladimir , gracias por la aclaración, sin embargo, ¿cómo resuelve esto el problema?
A grandes rasgos, necesitamos saber la barra del marco temporal actual que corresponde a la barra del principio del día. Tenemos que saber en cada barra y calcular y dibujar el indicador en consecuencia.
Karputov Vladimir , gracias por la aclaración, sin embargo, ¿cómo resuelve esto el problema?
A grandes rasgos, necesitamos saber la barra del marco temporal actual que corresponde a la barra del principio del día. Es necesario conocerlo en cada barra y calcular y dibujar el indicador en consecuencia.
Así es como preguntaste y así se te respondió :) . Y si quiere no la hora del primer compás de este día, sino el índice de este compás - está aquí, cuando imprime el comienzo del día:
Se utiliza el índice [i-1], que es el número de la primera barra del día.
Como has preguntado, tienes tu respuesta :) . Y si no necesita la hora de la primera barra del día, sino el índice de esta barra, está aquí, cuando imprime el comienzo del día:
Se utiliza el índice [i-1], que es el número de la primera barra del día.
Estoy de acuerdo, he preguntado de forma confusa.
Hay un indicador en la aplicación que hice, pero no cuenta correctamente. Soy terriblemente tonto y no entiendo, ni siquiera después de tus explicaciones, cómo hacer que determine correctamente el índice correspondiente a la primera barra del inicio del día.
Pido disculpas por la insolencia, pero tal vez puedas mostrarme cómo combinar tu código y el mío.
-Aleks-:
¿Cómo consigo que detecte correctamente el índice correspondiente a la primera barra del inicio del día?
Es un poco desordenado: