Pon "Me gusta" y sigue las noticias
Deje un enlace a él, ¡qué los demás también lo valoren!
Evalúe su trabajo en el terminal MetaTrader 5
- Publicado por:
- Enrique Enguix
- Visualizaciones:
- 158
- Ranking:
- Publicado:
-
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa
Este script es una solución de referencia diseñada para ayudar a los desarrolladores y usuarios de MetaTrader 5 a resolver un problema común: el desajuste entre los nombres de los símbolos configurados y los nombres reales proporcionados por los brokers.
Como desarrollador, me he enfrentado a este reto cuando trabajaba en Expert Advisors (EAs) configurables, especialmente aquellos que manejan estrategias multisímbolo. Es común que los usuarios no ajusten los nombres de los símbolos de acuerdo con las convenciones de sus brokers, lo que provoca que los EAs no funcionen correctamente. Por ejemplo, si la configuración del EA especifica "EURUSD", pero el broker utiliza "EURUSD.i" o "EURUSD.m", el EA no encontrará el símbolo correcto y no funcionará.
Este código utiliza el algoritmo de distancia Levenshtein para identificar el símbolo más similar al especificado por el usuario entre todos los disponibles en la ventana de Market Watch.
Aunque no soy un experto, esta solución ha demostrado ser eficaz en mi experiencia personal y puede ser una herramienta útil para otros desarrolladores.
Principales aplicaciones y usos:
- Integración en EAs configurables: Este script está pensado como referencia para su integración en EAs o scripts que necesiten adaptarse automáticamente a los nombres de símbolos utilizados por los brokers.
- Adaptabilidad para símbolos de brokers personalizados: Si un broker utiliza nombres de símbolos específicos, este enfoque ayuda a mapearlos correctamente y evitar errores de configuración.
- Validación de la configuración: Puede utilizarse como herramienta de validación durante las fases de desarrollo y prueba para garantizar que los EA sean sólidos y adaptables.
- Formación y aprendizaje: Para aquellos que están aprendiendo MQL5, este código demuestra cómo trabajar con matrices, cadenas y funciones dinámicas como el cálculo de distancias entre cadenas.
Advertencia importante:
Este código está basado en mi experiencia personal y es una solución que ha funcionado para mis proyectos. Sin embargo:
- No soy un experto en MQL5, y esta solución puede no ser la más eficiente o ideal para todos los casos.
- Puede haber enfoques más avanzados o específicos en función de las necesidades de cada usuario o proyecto.
Animo a usuarios y desarrolladores a experimentar con el código, adaptarlo a sus propios contextos y, si es necesario, explorar otras alternativas que puedan ser más adecuadas.
Ejemplo práctico de integración:
Supongamos que has desarrollado un EA que opera con "EURUSD". En el entorno del usuario, el broker tiene este símbolo como "EURUSD.i". Integrando este código en el EA:
- El usuario puede introducir "EURUSD" como configuración base.
- El código buscará automáticamente en Market Watch y asignará el símbolo correcto ("EURUSD.i").
- El EA funcionará sin problemas, eliminando la necesidad de configuraciones manuales precisas.
Conclusión:
Este script no sólo es útil para asegurar la funcionalidad de los EAs en diferentes entornos, sino que también sirve como punto de partida para desarrollar soluciones más avanzadas.
Si bien hay otras maneras de abordar esta cuestión, espero que esta implementación resulte ser una herramienta valiosa para otros desarrolladores y usuarios de MetaTrader 5.
Traducción del inglés realizada por MetaQuotes Ltd.
Artículo original: https://www.mql5.com/en/code/54554

Breakout Trader 1.0 negocia rupturas de rango.

BollingerBandsEA opera según las Bandas de Bollinger.

Un pequeño script para facilitar la vida de los traders. La única cosa que siempre me molesta es restablecer las propiedades como los colores para un nuevo gráfico, para que se vea de la manera que me gusta. Así que aquí está una secuencia de comandos para hacer las cosas más suave.

Patrimonio histórico de posiciones virtuales abiertas una y otra vez para analizar la eficacia de la negociación de diferenciales/capitales