Algo Interesante - página 4

 

La escritura de un Expert Advisor mediante las librerías estándar de las clase de trading de MQL5



El nuevo programa MQL5 trae muchas Librerías de clases estándar que están destinadas a desarrollar Expert Advisors de MQL5, indicadores y scripts de la forma más sencillo posible para los traders y los desarrolladores.

Estás librerías de clases se encuentran en la carpeta \Include\ ubicada en la carpeta de MQL5 en la carpeta del terminal de cliente MetaTrader 5. Se dividen las librerías de clases en varias categorías – Arrays, ChartObjects, Charts, Files, Indicators, Strings y las clases de trading.

En este artículo, vamos a describir en detalle cómo podemos utilizar las clases de trading incorporadas, para escribir un Expert Advisor. Se basará el Expert Advisor en la estrategia que va a incluir el cierre o modificación de las posiciones abiertas cuando se cumple una determinada condición.

Si ya tiene una idea de lo que son las clases y cómo se pueden utilizar, entonces bienvenido a otro mundo de posibilidades que ofrece el nuevo lenguaje MQL5.

Si, de lo contrario, es nuevo en MQL5; entonces le sugiero leer estos dos artículos para empezar Guía paso a paso para escribir un Expert Advisor en MQL5 para principiantes, Escribir un Expert Advisor mediante la programación orientada a objetos de MQL5 o cualquier otro artículo que le pueda proporcionar una introducción al nuevo lenguaje MQL5. Muchos de los artículos escritos le pueden proporcionar los conocimientos necesarios.

 

Control de la pendiente de la curva de balance durante el funcionamiento de un Expert Advisor



En este artículo se describe una de las metodologías que permite mejorar el rendimiento de los Expert Advisors mediante la creación de una retroalimentación. En este caso, se basa la retroalimentación en la medición de la pendiente de la curva de balance. El control de la pendiente se lleva a cabo automáticamente mediante la regulación del volumen de operaciones. Un Expert Advisor puede operar en los siguientes modos: con un volumen de corte, con la cantidad de lotes de trabajo (según el ajuste inicial) y con un volumen intermedio. Se activa el modo de funcionamiento automáticamente.

Se utilizan distintas características de regulación en la cadena de retroalimentación: escalonada, escalonada con histéresis y lineal. Esto permite ajustar el sistema de control de la pendiente de la curva de balance a ciertas características.

La idea principal es automatizar el proceso de toma de decisiones para un trader mientras hace el seguimiento de su propio sistema de trading. Es razonable reducir los riesgos durante los períodos de trabajo desfavorables. Al volver al modo de trabajo normal, se pueden restablecer los riesgos a su nivel inicial.

Por supuesto, este sistema no es la panacea, y no va a convertir un Expert Advisor con pérdidas en uno rentable. De algún modo, este es un complemento a la gestión de fondos (MM -Money Management del inglés) del Expert Advisor que permite evitar pérdidas cuantiosas en una cuenta.

El artículo incluye una librería que permite incorporar esta función al código de cualquier Expert Advisor.

 

Búsqueda de errores y registros

¡Hola, apreciado lector!

En este artículo vamos examinar las formas de búsqueda de errores en los Expert Advisors/Scripts/Indicadores y los métodos de registro. Además le voy a proporcionar un pequeño programa para visualizar los registros - LogMon.

La búsqueda de errores es una parte esencial de la programación. Al escribir un nuevo bloque de código, es necesario comprobar si funciona correctamente y si no tiene errores lógicos. Puede encontrar un error en su programa mediante tres métodos distintos:

  1. Evaluación del resultado final  
  2. Depuración paso a paso  
  3. Escritura de los pasos lógicos en el registro

 

Simulink: una guía para desarrolladores de Expert Advisors



Hay varios artículos que describen las inmensas posibilidades de Matlab. Para ser más precisos, la forma en que este software es capaz de ampliar las herramientas que utiliza el programador para desarrollar un Expert Advisor. En este artículo intentaré ilustrar el funcionamiento de este potente paquete de Matlab llamado Simulink.

Me gustaría ofrecer una forma alternativa de desarrollar sistemas de trading automatizados para operadores. El cambio a este método se debió a la complejidad del problema al que se enfrentan los operadores: la creación, verificación y prueba de sistemas de trading automatizados. No soy un programador profesional. Y por ello, el principio "ir de lo simple a lo complejo" es muy importante para mí cuando trabajo en el desarrollo de sistemas de trading. ¿Qué es exactamente simple para mí? En primer lugar, es la visualización del proceso de creación del sistema y la lógica de su funcionamiento. También es un mínimo de código escrito manualmente. Estas expectativas encajan muy bien con las capacidades del paquete Simulink®, un conocido producto MATLAB, líder mundial en instrumentos de visualización de cálculos matemáticos.

En este artículo intentaré crear y probar el sistema de trading basado en un paquete de Matlab, y a continuación escribiré un Expert Advisor para MetaTrader 5. Además, todos los datos históricos para el backtesting se usarán a partir de MetaTrader 5.

Para evitar la confusión terminológica llamaré a los sistemas de trading que funcionan en Simulink con una palabra genérica MTS, y a los que funcionan en MQL5 los llamaré simplemente Expert Advisor.
 

Gestor de evento "Nueva barra"

Los autores de indicadores y expertos siempre han estado interesados en escribir el código de forma compacta en términos de tiempo de ejecución. Puede abordar este problema desde diferentes ángulos. A partir de este amplio tema, en este artículo vamos a examinar un problema que aparentemente ya se ha resuelto: comprobar una nueva barra. Esta es una forma muy popular de limitar los bucles de cálculo, ya que todos los cálculos y operaciones de trading se realizan en una sola vez durante la generación de una nueva barra en el gráfico. Por tanto, veremos a continuación:  

  • Formas de detectar nuevas barras.
  • Defectos de algoritmos existentes para la detección de nuevas barras.
  • Crear un método universal para detectar una nueva barra.
  • Sutilezas y formas de aplicar este método.
  • El evento NewBar y el gestor de este evento - OnNewBar().
 

Trademinator 3: El auge de las máquinas de trading



Erase una vez en un lejano foro (MQL5) dos artículos: "Algoritmos genéticos, ¡es fácil!" por joo y "Dr. Tradelove..." por me, fueron publicados. En el primer artículo el autor nos proporcionó una poderosa herramienta para optimizar todo lo que necesitáramos, incluyendo estrategias de trading, un algoritmo genético implementado mediante el lenguaje MQL5.

Usando este algoritmo, en el segundo artículo intenté desarrollar un Expert Advisor auto-optimizado basado en él. El artículo finalizó con la formulación de la siguiente tarea: crear un Expert Advisor (auto-optimizado, por supuesto), que no puede solo seleccionar los mejores parámetros para un sistema de trading particular, sino también elegir la mejor estrategia de todas las estrategias desarrolladas. Vamos a ver si eso es posible, y si lo es, cómo puede hacerse.

 

Proteger el código MQL5 Protección con contraseña, generadores de claves, límites de tiempo, licencias remotas y técnicas de encriptación de claves de licencia de EA avanzadas

La mayoría de desarrolladores necesitan tener su código protegido. Este artículo muestra distintas formas de proteger el software MQL5. Todos los ejemplos se refieren a EA pero las mismas reglas se aplican a los scripts e indicadores. El artículo comienza con una simple protección con contraseña y continúa con los generadores de claves, las licencias de cuentas de brokers y la protección con limitación de tiempo. Luego introduce el concepto de servidor de licencia remoto. Mi último artículo sobre el esquema conceptual MQL5-RPC describe las llamadas de procedimientos remotas desde Meta Trader 5 a cualquier servidor XML-RPC.

Usaré esta solución para proporcionar un ejemplo de licencia remota. También describiré cómo mejorar esta solución con la codificación de base 64 y proporcionaré algunos consejos sobre el soporte PGP para la protección ultra-segura de EA e indicadores en MQL5. Soy consciente de que MetaQuotes Software Corp. proporciona algunas opciones para las licencias del código directamente desde la sección del Mercado de MQL5.com. Esto es realmente muy positivo para los desarrolladores y no invalida las ideas presentadas en este artículo. Ambas soluciones usadas conjuntamente solo pueden hacer que la protección sea más fuerte y segura frente al robo de software.

 

Promocione sus proyectos de desarrollo usando las librerías EX5



Un lector sofisticado no necesita una explicación sobre la finalidad de ocultar las implementaciones de funciones y clases en librerías. Aquellos de vosotros que busquen activamente nuevas ideas puede que queráis saber que ocultar los detalles de la implementación de las clases/funciones en un archivo .ex5 os permitirá compartir vuestros algoritmos propios con otros desarrolladores, iniciar proyectos y promocionarlos en la Web.

Y mientras el equipo de MetaQuotes no escatima esfuerzos para tener la posibilidad de heredar directamente las clases de las librerías ex5, vamos a implementarlas ahora.

Tabla de contenidos

1. Exportar e importar funciones
2. Exportar la implementación oculta de una clase
3. Inicialización de variables en un archivo .ex5
4. Herencia de clases de exportación
5. Publicación de librerías ex5

 

La última cruzada



Hay por defecto tres formas de presentación del precio de un instrumento disponibles en el terminal de Meta Trader 5 (así como en Meta Trader 4): barras, velas y líneas. Esencialmente, todas ellas representan lo mismo, gráficos de tiempo. Además del método tradicional de presentación del precio con relación al tiempo, hay aún otra forma no relativa al tiempo que es muy popular entre los inversores y especuladores: Los gráficos Renko y Kagi, tres saltos de línea y los gráficos de punto y forma.

No voy a comentar sus ventajas respecto a los clásicos pero perder de vista la variable tiempo ayuda a los operadores a centrarse en la variable precio. Recomiendo aquí tener en cuenta los gráficos de punto y forma junto con el respectivo algoritmo de gráfico, echar un vistazo a los conocidos productos del mercado que sirven para generar dichos gráficos y escribir un simple script implementando el algoritmo. El libro de Thomas J. Dorsey "Point and Figure Charting: The Essential Application for Forecasting and Tracking Market Prices" será nuestro libro básico.

Bull's-Eye Broker es el paquete de software más popular para el dibujo de gráficos off-line. El software se encuentra disponible en un periodo de prueba de 21 días (son posibles numerosas pruebas) y la nueva versión Beta se encuentra disponible durante el periodo Beta. El paquete de software se usará para estimar los resultados de nuestro script. Uno de los mejores recursos online en términos de graficado de punto y forma son los StockCharts. Este sitio web está orientado al mercado de valores y por tanto no proporciona precios de instrumentos del mercado Forex.

Para comparar los resultados del script introduciríamos gráficos de futuros Gold, futuros Light Crude Oil y S&P 500 CFD serán generados usando el software y el sitio web. Se dibujará un gráfico EURUSD usando solo el programa Bull's-Eye Broker (recuerde las limitaciones de StockChart).

 

AutoElliottWaveMaker - La herramienta de MetaTrader 5 para el análisis semi-automático de los ondas de Elliott



El artículo "La implementación del análisis automático de ondas de Elliott en MQL5" trata sobre el algoritmo de etiquetado de ondas automático de Elliott que tenía algunas imperfecciones, una de las cuales era su lentitud. Teniendo esto en cuenta además del hecho de que el análisis automático por sí mismo no es realmente adecuado para su uso práctico, se decidió desarrollar una herramienta de etiquetado de ondas semi-automática que ofreciera una serie de ventajas:

  • Etiquetado controlado por el hombre;
  • Alta velocidad en el análisis debido al hecho de que solo la parte del usuario específico del gráfico es analizada.

Este programa se llamó AutoElliottWaveMaker y será presentado en este artículo.  AutoElliottWaveMaker es un desarrollo lógico de la herramienta de etiquetado de ondas manual que puede actualmente comprarse en el mercado.

Razón de la queja: