Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XII): Implementando la clase de objeto "cuenta" y la colección de objetos de cuenta
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XII): Implementando la clase de objeto "cuenta" y la colección de objetos de cuenta
En el artículo anterior, definimos los eventos de cierre de posiciones para MQL4 en la biblioteca y eliminamos las propiedades de las órdenes que nos resultaban innecesarias. En el presente artículo, analizaremos la creación del objeto "Cuenta", crearemos una colección de objetos de cuenta y prepararemos la funcionalidad de para monitorear los eventos de las cuentas.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte VII): Eventos de activación de órdenes StopLimit, preparación de la funcionalidad para los eventos de modificación de órdenes y posiciones
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte VII): Eventos de activación de órdenes StopLimit, preparación de la funcionalidad para los eventos de modificación de órdenes y posiciones
En anteriores artículos comenzamos a crear una gran biblioteca multiplataforma cuyo objetivo es simplificar la creación de programas para las plataformas MetaTrader 5 y MetaTrader 4. En la sexta parte, enseñamos a la biblioteca a trabajar con posiciones en las cuentas de compensación. En esta parte, implementaremos el seguimiento de los eventos de activación de órdenes StopLimit y prepararemos la funcionalidad necesaria para monitorear la modificación de órdenes y posiciones.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte X): Compatibilidad con MQL4 - Eventos de apertura de posición y activación de órdenes pendientes
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte X): Compatibilidad con MQL4 - Eventos de apertura de posición y activación de órdenes pendientes
En artículos anteriores, comenzamos a crear una gran biblioteca multiplataforma, cuyo cometido es simplificar la escritura de programas para las plataformas MetaTrader 5 y MetaTrader 4. En la novena parte, comenzamos a completar las clases de la biblioteca para trabajar en MQL4. En el presente artículo, continuaremos desarrollando la biblioteca para hacerla totalmente compatible con MQL4.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte VIII): Eventos de modificación de órdenes y posiciones
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte VIII): Eventos de modificación de órdenes y posiciones
En artículos anteriores, comenzamos a crear una gran biblioteca multiplataforma, cuyo cometido es simplificar la escritura de programas para las plataformas MetaTrader 5 y MetaTrader 4. En el séptimo artículo, añadimos el seguimiento de los eventos de activación de órdenes StopLimit y preparamos la funcionalidad para monitorear el resto de eventos que tienen lugar con las órdenes y posiciones. En el presente artículo, vamos a crear una clase que monitoreará los eventos de modificación de las órdenes y posiciones de mercado.
Estudio de técnicas de análisis de velas (Parte IV): Actualizaciones y adiciones a la aplicación
Estudio de técnicas de análisis de velas (Parte IV): Actualizaciones y adiciones a la aplicación
En el presente artículo, vamos a presentar la siguiente versión de la aplicación Pattern Analyzer. En esta versión se han corregido algunas imperfecciones y se han añadido nuevas capacidades; además, se ha dado un nuevo enfoque a la comodidad y la actualidad de la interfaz actual. En este caso, además, se han tenido en cuenta las sugerencias reflejadas en los comentarios de los artículos anteriores. Podrá familiarizarse con el resultado leyendo el presente artículo.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte VI): Eventos en la cuenta con compensación
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte VI): Eventos en la cuenta con compensación
En anteriores artículos comenzamos a crear una gran biblioteca multiplataforma cuyo objetivo es simplificar la escritura de programas para las plataformas MetaTrader 5 y MetaTrader 4. En la quinta parte, hemos creado las clases de los eventos comerciales y la colección de eventos desde donde se envían los eventos a la objeto de la biblioteca Engine y al gráfico del programa de control. En esta parte de la descripción, vamos a añadir la posibilidad de trabajar con la biblioteca en las cuentas de tipo compensación.
Estimación del índice de fractalidad, exponente de Hurst y posibilidad de predecir series temporales financieras
Estimación del índice de fractalidad, exponente de Hurst y posibilidad de predecir series temporales financieras
La búsqueda y el estudio del comportamiento fractal de los datos financieros supone que, tras un comportamiento aparentemente caótico de la series temporales económicas, se ocultan y operan unos mecanismos estables del comportamiento colectivo de los participantes. En la bolsa, estos mecanismos pueden llevar a la aparición de una dinámica de precios que determina y describe las propiedades específica de las series de precios. En el trading, sería interesante tener indicadores que pudieran estimar los parámetros de la fractilidad de manera estable y eficaz, en una escala y un intervalo de tiempo que fuesen útiles en la práctica.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte V): Clases y colección de eventos comerciales, envío de eventos al programa
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte V): Clases y colección de eventos comerciales, envío de eventos al programa
En anteriores artículos comenzamos a crear una gran biblioteca multiplataforma cuyo objetivo es simplificar la escritura de programas para las plataformas MetaTrader 5 y MetaTrader 4. En la cuarta parte, hemos puesto a prueba el seguimiento de eventos comerciales en la cuenta. En esta parte, vamos a crear las clases de los eventos comerciales y a colocarlas en la colección de eventos desde la que serán enviadas al objeto básico de la biblioteca Engine y al gráfico del programa de control.
Cómo escribir una biblioteca DLL para MQL5 en 10 minutos (Parte II): Escribiendo en el entorno de Visual Studio 2017
Cómo escribir una biblioteca DLL para MQL5 en 10 minutos (Parte II): Escribiendo en el entorno de Visual Studio 2017
El artículo original «básico» de ningún modo perdió su actualidad, y todos los interesados en este asunto deben leerlo sí o sí. Pero ya pasó bastante tiempo desde aquel entonces, y ahora la versión Visual Studio 2017 es de la actualidad, disponiendo de una interfaz ligeramente modificada, mientras que la propia plataforma MetaTrader 5 tampoco estaba sin desarrollo. El presente artículo describe las etapas de la creación del proyecto DLL, sus configuraciones y el trabajo común con las herramientas del terminal MetaTrader 5.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte IV): Eventos comerciales
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte IV): Eventos comerciales
En los anteriores artículos, comenzamos a crear una gran biblioteca multiplataforma, cuyo objetivo es facilitar la escritura de programas para las plataformas MetaTrader 5 y MetaTrader 4. Ya disponemos de una colección de órdenes y transacciones históricas, y órdenes y posiciones de mercado, así como de una clase para seleccionar y filtrar órdenes cómodamente. En esta parte, vamos a continuar desarrollando el objeto básico, además de enseñar a la biblioteca Engine a monitorear los eventos comerciales en la cuenta.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte III): Colección de órdenes y posiciones de mercado, búsqueda y filtrado
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte III): Colección de órdenes y posiciones de mercado, búsqueda y filtrado
En el primer artículo, comenzamos la creación de una gran biblioteca multiplataforma para construir con facilidad programas en las plataformas MetaTrader 5 y MetaTrader 4. Acto seguido, continuamos el desarrollo de la biblioteca y corregimos las órdenes y transacciones históricas. En esta ocasión, vamos a crear una clase que nos permita elegir y filtrar cómodamente órdenes y posiciones en las listas de colecciones; en concreto, crearemos un objeto básico de la biblioteca, llamado Engine, y añadiremos a la biblioteca una colección de órdenes y posiciones de mercado.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte II): Colección de órdenes y transacciones históricas
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte II): Colección de órdenes y transacciones históricas
En el primer artículo, comenzamos a crear una gran biblioteca multiplataforma, cuyo cometido es facilitar la creación de programas para las plataformas MetaTrader 5 y MetaTrader 4. Creamos el objeto abstracto COrder, que es el objeto básico para guardar los datos de las órdenes y transacciones históricas, así como de las órdenes y posiciones de mercado. Ahora, vamos a crear todos los objetos necesarios para guardar los datos de la historia de la cuenta en colecciones.
Martingale como base de una estrategia comercial a largo plazo
Martingale como base de una estrategia comercial a largo plazo
En este artículo, vamos a analizar con detalle el sistema martingale. Estudiaremos la posibilidad de aplicarlo, y cómo hacerlo de tal forma que reduzcamos los riesgos al mínimo. La principal desventaja de este sencillo sistema es la probabilidad de perder todo el depósito. Y usted debe tener este hecho en cuenta a la hora de comerciar, si es que finalmente decide usar dicho sistema de trading.
Aplicando el método de Montecarlo al aprendizaje por refuerzo
Aplicando el método de Montecarlo al aprendizaje por refuerzo
Aplicación de Reinforcement learning para el desarrollo de expertos autodidactas. En el artículo anterior ya nos familiarizamos con el algoritmo de Random Decision Forest y escribimos un sencillo experto autodidacta basado en Reinforcement learning (aprendizaje por refuerzo). Se destacaron las principales ventajas de este enfoque, tales como la sencillez de escritura del algoritmo comercial y la alta velocidad de entrenamiento. El aprendizaje por refuerzo (en lo sucesivo AR) se implementa fácilmente en cualquier experto comercial y aumenta su velocidad de optimización.
Optimización separada de una estrategia en condiciones de tendencia y flat
Optimización separada de una estrategia en condiciones de tendencia y flat
En el artículo se analizará el uso del método de optimización separada en diferentes estados del mercado. La optimización separada consiste en la definición de los parámetros ideales de un sistema comercial con la ayuda de la optimización de manera separada para la tendencia ascendente y descendente. Para reducir el efecto de las señales falsas y mejorar la rentabilidad, los sistemas se hacen flexibles, es decir, poseen un cierto conjunto de ajustes o datos de entrada, hecho que se ve totalmente justificado por el comportamiento de un mercado en cambio constante.
Patrones de reversión: Testeando el patrón "Cabeza-Hombros"
Patrones de reversión: Testeando el patrón "Cabeza-Hombros"
El presente artículo es una continuación lógica del artículo anterior «Patrones de viraje: poniendo a prueba el patrón Pico/Valle doble». Ahora vamos a considerar otro patrón de reversión bastante bien conocido, llamado «Cabeza- Hombros», compararemos la eficacia del trading de ambos patrones e intentaremos combinar el trading con estos dos patrones en un sistema comercial único.
Reversión: creando un punto de entrada y escribiendo un algoritmo de comercio manual
Reversión: creando un punto de entrada y escribiendo un algoritmo de comercio manual
Este es el último artículo de la serie dedicada a la estrategia comercial de la reversión. En él intentaremos solucionar un problema que ha provocado inestabilidad en los resultados de la simulación en los anteriores artículos. Asimismo, escribiremos y simularemos nuestro propio algoritmo para el comercio manual en cualquier mercado con la ayuda de la reversión.
Las 100 mejores pasadas de optimización (Parte 1). Creando un analizador de optimizaciones
Las 100 mejores pasadas de optimización (Parte 1). Creando un analizador de optimizaciones
En este artículo hablaremos sobre cómo crear una aplicación para seleccionar las mejores pasadas de optimización según varias opciones posibles. Esta aplicación sabe filtrar y clasificar los resultados de optimización según multitud de coeficientes. Las pasadas de optimización se registran en una base de datos, por eso usted siempre podrá seleccionar nuevos parámetros de trabajo sin tener que reoptimizar. Además, esto permite ver todas las pasadas de optimización en un único gráfico, calcular los coeficientes VaR paramétricos y construir el gráfico de distribución normal de las pasadas y resultados de comercio de la variante de combinación de coeficientes seleccionada. Asimismo, se construyen los gráficos de algunos de los coeficientes en una dinámica, comenzando desde el momento de inicio de la optimización (o desde una fecha seleccionada hasta otra fecha seleccionada).
Reversión: disminuyendo la reducción máxima y simulando otros mercados
Reversión: disminuyendo la reducción máxima y simulando otros mercados
En este artículo continuaremos analizando el tema de la reversión. Intentaremos disminuir la reducción máxima del balance hasta un nivel aceptable con los instrumentos analizados anteriormente. También vamos a comprobar si se reduce el beneficio obtenido. Asimismo, comprobaremos cómo funciona la reversión en otros mercados, tales como los mercados de valores, materias primas, índices y ETF, agrario. ¡Atención, el artículo contiene muchas imágenes!
Patrones de viraje: Poniendo a prueba el patrón "Pico/valle doble"
Patrones de viraje: Poniendo a prueba el patrón "Pico/valle doble"
En la práctica del comercio, los tráders buscan con frecuencia los puntos de viraje de tendencia, puesto que precisamente en el momento en el que surge una tendencia, el precio tiene el mayor potencial de movimiento. Precisamente por ello, en la práctica del análisis técnico se analizan diferentes patrones de viraje. Uno de los más famosos y más utilizados en el patrón del pico/valle doble. En este artículo ofrecemos una variante de detección automática del patrón, y también ponemos a prueba su rentabilidad con datos históricos.
Gap - ¿una estrategia rentable o 50/50?
Gap - ¿una estrategia rentable o 50/50?
La investigación de la aparición de gaps se relaciona con la situación en la que se da una diferencia sustancial entre el precio de cierre del marco temporal anterior y el precio de apertura del siguiente, así como en la dirección en la que irá la barra diaria. Uso de la función DLL GetOpenFileName de sistema.
Reversión: ¿es el Santo Grial o una peligrosa equivocación?
Reversión: ¿es el Santo Grial o una peligrosa equivocación?
En el presente artículo intentaremos aclarar lo siguiente: ¿qué es una reversión, si merece la pena usarla y si podemos mejorar nuestra estrategia comercial a través de ella? Vamos a crear un Asesor Experto, y veremos en los datos históricos qué indicadores convienen mejor para la reversión, además, si podemos usarla sin indicadores como un sistema comercial independiente. Veremos si es posible convertir un sistema comercial no rentable en un sistema rentable a través de la reversión.
Recetas MQL5 – Obteniendo las propiedades de una posición de cobertura abierta
Recetas MQL5 – Obteniendo las propiedades de una posición de cobertura abierta
La plataforma MetaTrader 5 no es solo una plataforma multimercado, sino que también permite usar diferentes sistemas de registro de posiciones. Estas posibilidades amplian considerablemente el instrumental para la implementación y formalización de las ideas comerciales. En el artículo, vamos a hablar sobre cómo procesar y considerar las propiedades de las posiciones al llevar su registro de forma independiente ("cobertura"). Así, en el artículo proponemos una clase derivada, mostrando a continuación ejemplos de procesamiento y obtención de las propiedades de la posición de cobertura.
Combinando una estrategia de tendencia y una de flat
Combinando una estrategia de tendencia y una de flat
Existen diferenets estrategias comerciales. Unas buscan la dirección del movimiento y comercian según la tendencia. Otras definen los intervalos de las oscilaciones de precio y comercian dentro de estos corredores. Así que nos surge la pregunta, ¿podemos combinar los dos enfoques para aumentar la rentabilidad de nuestro comercio?
50 000 trabajos ejecutados en la bolsa Freelance de MQL5.com
50 000 trabajos ejecutados en la bolsa Freelance de MQL5.com
Hasta el mes de octubre de 2018, los participantes del servicio Freelance oficial para las plataformas MetaTrader han ejecutado más de 50 000 encargos. Se trata de la bolsa más grande del mundo de trabajo a distancia para programadores de MQL: más de mil desarrolladores, decenas de nuevos encargos diarios por parte de tráders y localización en 7 idiomas.
Análisis comparativo de 10 estrategias de flat
Análisis comparativo de 10 estrategias de flat
En el artículo se analizan las ventajas y desventajas del comercio con flat (mercado plano). Asimismo, se han creado y probado 10 estrategias basadas en el monitoreo del movimiento del precio dentro del canal. Cada estrategia está provista de un mecanismo de filtrado, para descartar las señales falsas de entrada en el mercado.
Constructor gráfico de estrategias. Creando robots comerciales sin programación
Constructor gráfico de estrategias. Creando robots comerciales sin programación
En este artículo se describe el constructor gráfico de estrategias. Se muestra como cualquier usuario puede crear los robots comerciales y las utilidades sin aplicar las técnicas de programación. Se puede simular los Asesores Expertos creados en el Probador de Estrategias, optimizarlos en la nube e iniciarlos en el gráfico en tiempo real.
Desarrollando los Asesores Expertos multimódulo
Desarrollando los Asesores Expertos multimódulo
El lenguaje de programación MQL permite implementar el concepto del diseño modular de las estrategias comerciales. En este artículo, se muestra el ejemplo del desarrollo del Asesor Experto multimódulo compuesto de los módulos de archivos compilados separadamente.
Random Decision Forest en el aprendizaje reforzado
Random Decision Forest en el aprendizaje reforzado
Random Forest (RF) (en castellano, Bosques Aleatorios) con aplicación del bagging es uno de los métodos del aprendizaje automático más fuerte, que cede un poco ante el boosting del gradiente (Potenciación del gradiente). En este artículo, se realiza el intento de desarrollar un sistema comercial autoenseñable, que toma decisiones a base de la experiencia adquirida de la interacción con el mercado.
Visualizando la optimización de una estrategia comercial en MetaTrader 5
Visualizando la optimización de una estrategia comercial en MetaTrader 5
En el artículo se ha implementado una aplicación MQL con interfaz gráfica para la visualización ampliada del proceso de optimización. La interfaz gráfica ha sido creada con la ayuda de la última versión de la biblioteca EasyAndFast. En ocasiones, a muchos usarios les surge la siguiente pregunta: ¿para qué necesitamos las interfaces gráficas en las aplicaciones MQL? En este artículo se muestra uno de los numerosos casos en los que pueden resultar útiles para los tráders.
Neuroredes profundas (Parte V). Optimización bayesiana de los hiperparámetros de las DNN
Neuroredes profundas (Parte V). Optimización bayesiana de los hiperparámetros de las DNN
En el artículo se analizan las posibilidades de la optimización bayesiana de los hiperparámetros de las neuroredes profundas obtenidas con diferentes formas de entrenamiento. Se compara la calidad de la clasificación de las DNN con los hiperparámetros óptimos en diferentes variedades de entrenamiento. Se ha comprobado mediante forward tests la profundidad de la efectividad de los hiperparámetros óptimos de la DNN. Se han definido los posibles campos de mejora de la calidad de la clasificación.
Patrón de ruptura del canal
Patrón de ruptura del canal
Como se sabe, los canales de precios se forman por las tendencias de precios. Una de las señales más fuertes del cambio de la tendencia es la ruptura del canal actual. En este artículo, yo propongo intentar automatizar el proceso de la búsqueda de las señales de este tipo, y ver si es posible formar su propia estrategia a base de eso.
Gestión de capital según Vince. Implementación como módulo de Wizard MQL5
Gestión de capital según Vince. Implementación como módulo de Wizard MQL5
El artículo se basa en el libro de R.Vince "Las matemáticas de la gestión de capital". En este se analizan los métodos empíricos y paramétricos usados para localizar el tamaño óptimo de lote comercial, sobre cuyas bases se han escrito los módulos comerciales de gestión de capital para el wizard MLQ5.
La estrategia comercial 'Momentum Pinball'
La estrategia comercial 'Momentum Pinball'
En este artículo se continúa con el tema de la escritura de código para los sistemas comerciales descritos en el libro de Linda Raschke y Laurence Connors "Secretos bursátiles. Estrategias comerciales de alto rendiemiento a corto plazo". En esta ocasión, analizaremos el sistema 'Momentum Pinball', describiendo la creación de dos indicadores, un robot comercial y un bloque comercial para el sistema.