1. Diseño de Sistemas

En este módulo podemos convertir todo tipo de ideas a Sistemas de Trading sin necesidad de programar, de manera visual e intuitiva.

Figura 2.1: Módulo Diseñador

En el menú de bloques (1) podemos seleccionar todas las acciones que queremos hacer con nuestro sistema, desde su método de ejecución (Por cada Vela o cada Tick), qué datos queremos analizar y qué gestión de riesgo utilizaremos.

En el menú principal del diseñador (2) encontraremos las funciones que nos servirán para unir y configurar bloques.

Una vez aprendas los fundamentos básicos de este módulo, podrás explorar todo su potencial.

2. Bloques

La primera función que necesitamos conocer es el uso de bloques y para qué sirven, para ello vamos a ver uno a uno la funcionalidad de estos.

Los primeros bloques que encontramos corresponden con la categoría de Inicio, los cuales determinarán el funcionamiento de un sistema, sea ejecutando instrucciones en cada Tick, o cada Vela.

Los siguientes bloques son aquellos de Análisis, donde crearemos las condiciones necesarias para ejecutar una acción. 

Esta serie de bloques se divide en:

Análisis Técnico: Análisis de una condición basada en Análisis Técnico (Indicadores y Precio).

Análisis Técnico Múltiple AND: Nos permite ejecutar en un solo bloque varias condiciones de Análisis Técnico las cuales habrán de ser todas ciertas para poder ejecutar acciones.

Análisis Técnico Múltiple OR: Conjunto de instrucciones de Análisis Técnico similar al bloque anterior, con la peculiaridad de que solo se necesita que una instrucción sea cierta para dar como válido el patrón.

Subiendo: Lectura que comprueba si el valor del precio o un indicador está subiendo.

Bajando: Lectura que comprueba si el valor del precio o un indicador está bajando.

Cruce de Líneas Alcista: Nos permite comprobar si el valor de un indicador ha superado en la última vela al valor de otro indicador.

Cruce de Líneas Bajista: Nos permite comprobar si el valor de un indicador durante la última vela ha pasado a ser menor respecto a otro indicador.

Por encima del nivel: Comprobación para determinar si un Indicador o Precio está por encima de un gatillo determinado.

Por debajo de nivel: Comprobación para determinar si un Indicador o Precio está por debajo de un gatillo determinado.

Cruza al alza nivel: Comprueba si en la última vela un indicador o el precio está por encima de un gatillo determinado, no habiendo estado así previamente.

Cruza a la baja nivel: Comprueba si en la última vela un indicador o el precio está por debajo de un gatillo determinado, no habiendo estado así previamente.

El siguiente tipo de Bloques es el de Abrir, los cuales nos permitirán añadir posiciones una vez que nuestras condiciones sean cumplidas, estos bloques son los siguientes:

Abrir compra: Nos permitirá ejecutar una compra a mercado, con el precio actual.

Abrir compra pendiente: Nos permitirá ejecutar una compra si el precio toca un determinado nivel.

Abrir venta: Nos permite ejecutar una venta en corto a mercado, con el precio actual.

Abrir venta pendiente: Nos permitirá ejecutar una venta en corto si el precio toca un determinado nivel.

El siguiente bloque está relacionado, y es el bloque de Cerrar, el cual nos ayudará a gestionar posiciones, y está dividido en los siguientes bloques.

Cerrar una orden: Este bloque nos permite cerrar una sola orden, basada en su nombre, para poder diferenciar sistemas y solo cerrar el correspondiente.

Cerrar todas las órdenes: Cierra todas las órdenes abiertas en nuestra terminal.

Cerrar órdenes pendientes: Cierra todas las órdenes pendientes.

Cerrar órdenes abiertas: Es la contraparte al anterior bloque, cierra todas las órdenes a mercado dejando solas las órdenes pendientes.

En el siguiente bloque, Gestión de Órdenes, podremos ajustar el riesgo el riesgo de nuestras operaciones y mejorar nuestros sistemas, los bloques son los siguientes: 

Trailing Stop: Nos permite ajustar el Stop Loss de nuestro sistema conforme el precio avanza a nuestro favor. 

Break-Even: Nos permite ajustar el Stop Loss de nuestro sistema, colocándolo en el precio de apertura de la posición una vez gane un número de pips determinado.

Mover Pendiente: Nos permite editar el precio de entrada de una orden pendiente.

Take Profit Dinámico: Permite ajustar la toma de beneficios de una orden en base al valor de un indicador.

Stop Loss Dinámico: Permite ajustar el límite de pérdidas de una orden en base al valor de un indicador.

A continuación tenemos el apartado MQL el cual nos permite interactuar con código externo, compuesto por los siguientes bloques.

Guardar valor en variable exportada: Nos permite asignar un valor a una variable de nuestro sistema.

Guardar valor en variable global: Nos permite guardar un valor en una variable de nuestra terminal, esta puede ser leída por todos los sistemas en ejecución.

Bloque de Código: Función para añadir código personalizado en lenguaje MQL4 en nuestro sistema.

Continuando con los tipos de bloque, volvemos a los relacionados con órdenes, en este caso con Información sobre órdenes.

¿Hay órdenes?: Nos indica si existe una orden de cualquier tipo abierta.

¿Hay órdenes abiertas?: Comprueba si existen operaciones a mercado abiertas.

¿Hay órdenes pendientes?: Comprueba la existencia de órdenes pendientes ya ejecutadas.

¿Existe la orden?: Comprueba si existe una orden con un nombre en concreto.

¿Existe la orden abierta?: Comprueba si existe una determinada orden abierta ejecutada a mercado.

¿Existe la orden pendiente?: Comprueba si existe una orden pendiente con un nombre determinado.

¿Beneficio de la orden mayor que?: Comprobación del beneficio monetario de la orden.

¿Número de velas desde operación?: Número de velas que han pasado desde la operación.

Una vez terminamos con los bloques relacionados con las operaciones, pasamos a los filtros cuyos bloques son los siguientes:

Horario: Nos permite filtrar la hora de ejecución de un sistema.

Días de la semana: Filtro que comprueba si estamos en un determinado día de la semana.

Día del Mes: Filtro que comprueba el día del mes.

Mes del año: Filtro que nos permite limitar por meses las operaciones.

Una vez terminados los filtros podemos comprobar, datos relacionados con nuestra Cuenta, con los siguientes bloques:

Balance: Devuelve el patrimonio de nuestra cuenta teniendo en cuenta solamente operaciones cerradas.

Equidad: Patrimonio de nuestra cuenta a tiempo real, contando beneficios-pérdidas de operaciones abiertas.

Margen Libre: Devuelve el capital que tenemos disponible para emplear como margen.

Y por último tenemos métodos de obtención de información, entre ellos:

Alerta: Permite crear una alerta ante un evento determinado en MT4.

Imprimir: Nos permite mostrar un mensaje en la ventana de asesores expertos.

Notificación Móvil: Nos permite enviar una notificación push a un terminal móvil que tenga MT4 instalado.

3. Sistemas de Trading

Una vez conocemos los bloques podemos centrarnos en la creación de sistemas de trading.

Puedes ver varios ejemplos de funcionamiento de este módulo de Alphadvisor creando sistemas de trading funcionales con los siguientes vídeos:

Sistema de Trading para Forex utilizando Bandas de Bollinger:

Sistema de Trading para Índices utilizando filtro por día del mes:

Estrategias de Trading Estacionales:

Estrategias de Trading Cuantitativo en Forex: