Discusión sobre el artículo "Cómo crear un bot para Telegram en el lenguaje MQL5" - página 35
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
Estamos intentando utilizar el scriptTelegram_Bot_EA para enviar una pantalla de gráfico a petición. Lo hemos modificado ligeramente en cuanto a la selección de plantillas y otras herramientas. Pero creo que no es esencial. Digamos que hay dos usuarios.
- El primero inicia el bot, selecciona una herramienta (digamos RI), selecciona un TF - 5min, pausa....
- el segundo inicia el bot, selecciona el instrumento (BR), selecciona el TF - 30min, selecciona el patrón "#1". - obtiene la pantalla correcta.
- el primero continúa y selecciona el patrón "#2" y obtiene.... la imagen que obtuvo el segundo.
Es decir, en el momento en que el primero hizo una pausa, el bot de alguna manera se reconstruyó sobre los datos que recibió del segundo, y luego los utilizó cuando el primero terminó de enviar la petición. Resulta que las variables donde se almacenan la herramienta, el TF y el patrón son globales en cierto modo, y por eso fueron reemplazadas.
¿Cómo se puede solucionar este problema?
El ejemplo de la pantalla de abajo. Se solicitó un instrumento RTS, 5m. Me demoré antes de seleccionar una plantilla, mientras el segundo usuario solicitaba su imagen. Entonces continué seleccionando la plantilla y obtuve BR, H1 en lugar de RTS
¿Cómo se puede solucionar este problema?
Es decir, en el momento en que el primero hacía una pausa, el bot de alguna manera se reconstruía sobre los datos recibidos del segundo, y luego los usaba cuando el primero terminaba de enviar la petición. Resulta que las variables donde se almacenan la herramienta, el TF y la plantilla son globales en algún sentido, y por eso fueron reemplazadas.
¿Cómo se puede solucionar este problema?
Analiza el i-di del usuario que está solicitando los datos, y almacena todo con un binding a ese i-di.
A veces, al intentar enviar una captura de pantalla de un gráfico, dice: "Error: Error desconocido 5020" - el archivo no existe. Aunque está presente en la carpeta Archivos. Esto ocurre a veces. A veces publica todo seguido (hago más de 3 segundos de retraso entre el envío de mensajes). El algoritmo en sí es el siguiente: el bot abre un gráfico, mueve el gráfico a la posición más a la derecha, crea flechas (niveles de precios), toma una captura de pantalla, lo envía (después de enviar un retraso de 3 segundos sólo ... sin que por alguna razón no quiera enviarlo), borra las flechas y después de comprobar la presencia del archivo lo borra. O no lo borra. Si el bot da error 5020 al enviar, la función FileIsExist devuelve un sinsentido. Intenté poner retardos tras la creación del fichero, pero no sirvió de mucho. Envío a un canal abierto. La extensión es .gif.
¿Qué tan mala es esta solución (enviar capturas de pantalla así)? Probablemente el código está lejos de ser ideal, pero ¿por qué no quiere enviar capturas de pantalla? O mejor dicho, a veces las envía normalmente, y a veces no quiere enviarlas. Internet parece ser normal...
En vez de retraso es más bonito utilizar la función de comprobar la presencia de un fichero, pero no sólo la presencia de un fichero en el catálogo, sino la presencia de su longitud. Hay situaciones en las que un archivo aparece con longitud cero, mientras que el proceso de escribir en él no se ha completado, y sólo después de la finalización de la escritura de la longitud se fija.
Se puede hacer un seguimiento en OnTime.
En lugar del retardo, es más bonito utilizar la función de comprobación de la presencia de un fichero, pero no sólo de la presencia de un fichero en el directorio, sino de su longitud. Hay situaciones en las que un archivo aparece con longitud cero, mientras que el proceso de escribir en él no se ha completado, y sólo después de la finalización de la escritura de la longitud se fija.
Se puede hacer un seguimiento en OnTime.
Sí, esta es una solución más completa. Gracias por el consejo.
Hola a todos,
No sé si esta pregunta se ha hecho anteriormente,
He intentado este modul con formato EA y funciona de maravilla, sin embargo, cuando intenta este modul con formato de indicador, muestra un error como a continuación:
2020.08.26 10:25:37.839 inLuk_TelegramBot EURUSD,H1: Error: URL no permitido para WebRequest
¿alguna sugerencia? ¿o este modulo no puede funcionar en el indicador?
gracias.
¿Estás usando windows 7?
Tengo un problema de webrequest con windows 7
Tengo este error:
Al compilar telegram_bot MT5
Hola comerciantes
Tengo una pregunta,
He probado el Telegram_Bot_EA para Mt4 y Mt5 ....
¿Puede alguien decirme por qué el bot no enviar captura de pantalla en fin de semana en Mt4, el archivo se genera en la carpeta de archivos y también en telegrama se ve (enviar foto en la parte superior), pero no hay captura de pantalla viene ?
En mt5 la captura de pantalla viene en unos pocos segundos .
saludos cordiales
¡Hola comerciantes !
Tengo una pregunta,
He probado el Telegram_Bot_EA para Mt4 y Mt5 ....
Alguien me puede decir por qué el bot no envía captura de pantalla el fin de semana en Mt4, el archivo se genera en la carpeta de archivos y también en telegram se ve (enviar foto en la parte superior) pero no viene captura de pantalla ?
En mt5 la captura de pantalla viene en unos pocos segundos .
Saludos
Cuando comunicas mt4 a Telegram o de otra forma el EA se comunica, revisa los logs
Si, el EA se comunica, el único problema es que no envía capturas de pantalla los fines de semana. (mt4)
en el log solo veo el EA cargado correctamente
Muy interesante porque de lunes a viernes funciona .
¿Alguien tiene el mismo problema?