Librerías para MetaTrader 5 con los códigos fuente
Las librerías son pequeños subprogramas que contienen cierta funcionalidad que luego puede ser utilizada durante el desarrollo de las demás aplicaciones. La librería escrita y comprobada una vez permite acelerar el desarrollo de nuevas aplicaciones en el lenguaje MQL5. El ejemplo de esta librería es ALGLIB que reúne varias funciones del análisis numérico.
Los códigos fuente de las librerías pueden ser descargados y utilizados en el editor de estrategias comerciales MetaEditor. No se puede iniciarlos independientemente en MetaTrader 5.
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Para iniciar sesión y usar el sitio web MQL5.com es necesario permitir el uso de Сookies.
Por favor, active este ajuste en su navegador, de lo contrario, no podrá iniciar sesión.
Un auténtico filtro de noticias del calendario económico que también funciona en las pruebas retrospectivas. Exporta los eventos una sola vez mediante un script y, a continuación, bloquea las nuevas entradas en torno a las noticias, tanto en tiempo real como en el Probador de Estrategias. Corrige el desfase de una hora por el cambio de horario de verano en las horas del calendario histórico.
Califica cada tipo de configuración de tu EA en su propio historial, en lugar de agruparlas todas en una sola curva de capital. Se reconstruye a partir del historial de operaciones de la cuenta al iniciarse, por lo que un reinicio no puede borrar el historial. Muestra un límite inferior de la puntuación de Wilson junto a la tasa de ganancias bruta, para que una racha de tres operaciones ganadoras deje de parecer una ventaja.
Tres protecciones de tamaño de posición que funcionan de forma diferente; confundirlas es la razón por la que tantas cuentas se quedan sin fondos: - escalonada: un contrato por cada X del saldo, que siempre se aplica como un límite máximo (CAP), incluso con el tamaño de lote manual; - «floor»: por debajo del capital mínimo no se opera; se necesita un nuevo ingreso; - «breaker»: se detiene al X % por debajo del máximo, independientemente del tamaño de la cuenta, y no se reactiva por sí solo. Lo que resuelve esta biblioteca y que casi ninguna otra hace: un ingreso no es un beneficio, y una retirada no es una pérdida. El «breaker» mide la caída con respecto al máximo del saldo. Si no se trata, un depósito realizado DURANTE una caída eleva tanto el saldo como el máximo, y la protección deja de detectar la caída justo cuando sería más útil. En este caso, los depósitos y las retiradas desplazan el máximo en la misma cantidad. El máximo se guarda en un archivo: un «breaker» que olvida el máximo al reiniciar la terminal no es un «breaker». La demo simula un depósito en el punto más bajo de una caída. Ejecútala con el depósito activado y desactivado y compara la columna «caída».
El tamaño de la posición se calcula a partir de un importe de riesgo, que a su vez se calcula a partir del valor real del tick del símbolo, el tamaño del tick y el paso de volumen, en lugar de un valor de pip supuesto. Siempre redondea el volumen a la baja y, cuando el riesgo es inferior al lote mínimo, lo indica e informa del coste real de dicho lote. No depende del estado del terminal, por lo que la lógica de cálculo del tamaño de la posición se puede probar sin conexión; se incluye un script de prueba con 41 afirmaciones.
Una biblioteca de 24 clases MQL5 que supervisa el cumplimiento de las normas de una empresa de inversión —recaída, pérdida diaria, consistencia en los pagos, número mínimo de días de negociación, periodo de restricción de noticias— en cualquier cuenta, y cierra todas las posiciones en caso de incumplimiento sin abrir nunca una posición propia.
Una clase de encabezado MQL5 (.mqh) ligera y compatible con la programación orientada a objetos (OOP) para el cálculo preciso del valor del pip y el cálculo dinámico del tamaño de los lotes en todos los instrumentos, que incluye la conversión automática de tipos de cambio entre divisas y la normalización del volumen por parte del bróker.
Detecta el símbolo «gold», independientemente del nombre que le dé el bróker, lee las especificaciones del contrato desde la plataforma en lugar de darlo por supuesto, y convierte el riesgo en la divisa de la cuenta en un tamaño de lote adecuado para ese bróker.
Una biblioteca para recuperar señales de proximidad destinadas a indicadores basados en canales
Una biblioteca pequeña y con pocas dependencias que incorpora a MQL5 un tipo «Result» al estilo de Rust. Las funciones devuelven un único objeto de «valor o error» en lugar de depender del estado global de GetLastError(), por lo que los fallos son explícitos e imposibles de ignorar. Incluye ResultValue (tipos de valor) y Result (objetos almacenados en punteros), una estructura Error, macros de retorno anticipado (TRY, RETURN_ON_ERROR, ...) y las funciones de devolución opcionales Then, Match y MapError.
MQTTFive: una implementación completa del cliente MQTT 5.0 para MQL5. Características: • MQTT v5.0: todos los tipos de paquetes, propiedades y QoS 0/1/2 • TCP + TLS a través de la API nativa de sockets de MQL5 • Mensajes «will» con propiedades (will_delay_interval, payload_format, message_expiry) • Alias de temas para PUBLISH salientes • Control de flujo (máximo de recepción) • Opciones de suscripción (no_local, retain_as_published, retain_handling) • Cargas útiles binarias y UTF-8 • Reintento automático para QoS 1/2 • Cero dependencias de DLL: MQL5 puro Probado con Mosquitto 5.0 (15 pruebas, todas superadas). Documentación: https://github.com/chekh/MQTTFive Licencia: MIT
Una biblioteca MQL5 (.mqh) orientada a objetos que sustituye los modelos estáticos de riesgo minorista por las matemáticas institucionales Volatility-Adjusted Position Sizing (VAPS) y Kelly Criterion.
Detalles Técnicos Utiliza el OrderSend de MQL5 con TRADE_ACTION_DEAL para el cierre instantáneo del mercado a los precios Bid/Ask actuales. Incluye tolerancia al deslizamiento (10 puntos), coincidencia de volumen adecuada y preservación del número mágico. Bucles hacia atrás a través de las posiciones para evitar el cambio de índice durante la ejecución.
Clase de inclusión que valida la combinación de ping terminal + latencia de ejecución antes de las operaciones comerciales. Devuelve false si se supera el umbral.
Si tiene acceso al código del Asesor Experto, puede guardar los gráficos de saldo y equidad y calcular criterios de optimización adicionales añadiendo código adicional de esta biblioteca.
Permitir que el EA determine si hay EA duplicados en el gráfico en función de las condiciones.
Calculadora de pérdidas y ganancias de posiciones (órdenes abiertas)
Calcular la distancia coseno y la semejanza entre 2 vectores . La distancia coseno es 1-coseno_semejanza y la semejanza coseno es el producto punto de dos vectores por sus magnitudes multiplicadas.
Biblioteca para el control de las sesiones de negociación. Al inicio cuenta el tiempo de las sesiones de negociación para los 7 días de la semana (los sábados y domingos puede haber negociación de criptomonedas), hasta 10 sesiones por día. Luego en OnTick() puede hacer chequeos, y si un tick llegó fuera de la sesión de negociación, puede salir de su procesamiento.
Compresión de los datos de tick para su almacenamiento de forma compacta hasta 3,5 veces más compacta que los archivos .tcs MQ. Y para trabajar rápidamente con ellos, porque leer 3 bytes lleva menos tiempo que leer 60 bytes de la estructura MqlTick.
Registra los ticks en modo ticks reales y los lee en modo matemático llamando a tu estrategia con cada tick.
Clase estática para fijar la función TimeGMT() durante las pruebas en el probador de estrategias.
Códigos fuente escritos en el proceso de desarrollo de una biblioteca para crear Asesores Expertos multidivisa que combinen múltiples instancias de diferentes estrategias de negociación.
Los códigos fuente escritos durante el desarrollo de la biblioteca para crear Asesores Expertos multidivisa que combinan muchas instancias de varias estrategias de negociación.
Clase para acceder a la hora local de la ubicación especificada, así como a la información sobre la zona horaria y el horario de la sesión de negociación local.
Esta biblioteca es una versión actualizada de la biblioteca ErrorDescription.mqh publicada por MetaQuotes, con algunas características incluidas.