[SERVICE DESK] ¡Error al obtener la hora de la TF superior en el temporizador! - página 10
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
Pruébalo tú mismo. Poner en marcha el indicador, apagar el terminal y volver a encenderlo cuando llegue la nueva hora.
Así que si obtienes TimeCurrent
Devuelve la última hora conocida del servidor, la hora de llegada de la última cotización de uno de los símbolos seleccionados en Market Watch.
Así que si obtienes TimeCurrent
Devuelve la última hora conocida del servidor, la hora de llegada de la última cotización de uno de los símbolos seleccionados en Market Watch.
¿Puedes decirme en qué parte de este código está la llamada a TimeCurrent?
¿Puedes decirme en qué parte de este código se hace la llamada a TimeCurrent?
Así que la hora de apertura del bar sigue siendo la misma que antes del cierre de la terminal. Se forma una nueva barra y se actualiza la hora. ¿Cuál es el problema?
La hora de apertura del bar es la misma que la que recibimos antes de que se cerrara la terminal. Se forma una nueva barra y se actualiza la hora. ¿Cuál es el problema?
Esa es la cuestión, el terminal se desconecta cuando la última barra horaria del gráfico está a las 22:00. Se apaga a las 22:45, por ejemplo. Se enciende a las 23:01 - solicitud de tiempo para la última hora después de que la conexión con el servidor se ha establecido y después de la solicitud previa a OnInit() sin ningún tipo de temporizadores - sigue siendo 22 horas. ¿Esto es normal, crees?
Comprueba el tiempo de la vela, no el cálculo de las barras.
Así se actualizará correctamente (comprobado).
Comprueba el tiempo de las velas, no el cálculo de las barras.
Así se actualizará correctamente (comprobado).
¿De qué tipo de cálculo de barra estamos hablando?
Comprobaré tu variante, pero en realidad sólo has añadido una petición de datos "ociosa" en OnCalculate() y ya está. Y por lógica, ni siquiera llegará a la petición "ociosa", porque prev_calculated <= 0 ya se habrá ejecutado y se ejecutará el primer bloque de ejecución.
De todos modos, esto es una muletilla, no deben existir estas situaciones en el lenguaje. Se establece la conexión, se comprueba la función de adquisición de datos para ver si hay errores y si los datos obtenidos son correctos. Pero al final, ¿qué conseguimos? Los datos siguen siendo erróneos.
En realidad, si queremos estar seguros, podemos simplemente solicitar la hora actual en el inite y luego solicitar la hora actual en OnCalculate() y compararlas hasta que sean diferentes. Pero esa es la misma muletilla y no debería ser el caso.
Esa es la cuestión, el terminal se desconecta cuando la última barra horaria del gráfico está a las 22:00. Se apaga a las 22:45, por ejemplo. Se enciende a las 23:01 - solicitud de tiempo para la última hora después de que la conexión con el servidor se ha establecido y después de la solicitud previa a OnInit() sin ningún tipo de temporizadores - sigue siendo 22 horas. ¿Es esto normal según usted?
La hora de cierre de cualquier última barra será TimeCurrent (es decir, actual). Parece que es lo que necesitas, a juzgar por tu pregunta.
Según entiendo, el terminal, por primera vez, saca los últimos datos que tiene en el historial, y luego se produce la carga desde el servidor.
¡Pregunta! Por qué sale el dato anterior cuando ya se ha establecido la conexión con el servidor, había una preconsulta de datos en OnInit(), una comprobación de carga de datos en cada una de las funciones CheckCurren...(). ¿Cuántas malditas comprobaciones tengo que hacer para que todo funcione correctamente...
La hora de cierre de cualquier última barra será TimeCurrent, que es lo que parece necesitar según su pregunta.
¿A qué hora se cierra? Necesito una hora de apertura...