[go: up one dir, main page]

0% encontró este documento útil (0 votos)
460 vistas10 páginas

Trading Robot

Este documento describe cómo crear un robot de trading automático en MQL5 usando el MQL5 Wizard. Explica los cuatro pasos para generar el código del robot: 1) establecer las propiedades generales, 2) seleccionar un módulo de señales de trading, 3) seleccionar un módulo de rastreo de posiciones abiertas, y 4) seleccionar un módulo de gestión de dinero y riesgo. Proporciona ejemplos de cómo seleccionar módulos de señales basadas en media

Cargado por

Emily Paz
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
460 vistas10 páginas

Trading Robot

Este documento describe cómo crear un robot de trading automático en MQL5 usando el MQL5 Wizard. Explica los cuatro pasos para generar el código del robot: 1) establecer las propiedades generales, 2) seleccionar un módulo de señales de trading, 3) seleccionar un módulo de rastreo de posiciones abiertas, y 4) seleccionar un módulo de gestión de dinero y riesgo. Proporciona ejemplos de cómo seleccionar módulos de señales basadas en media

Cargado por

Emily Paz
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 10

Introducción 

Cuando creamos sistemas de trading automatizados es necesario escribir algoritmos para 


analizar la situación del mercado y generar señales de trading, algoritmos de arrastre de 
nuestras posiciones abiertas y sistemas para gestionar el dinero y el riesgo. 

Una vez que se ha escrito el código de los módulos, la tarea más difícil es ensamblar todas las 
partes y depurar el código fuente del robot de trading. Aquí, el papel principal lo juega la 
arquitectura de la interacción de los módulos: si su construcción es deficiente, la mayor parte 
del tiempo se empleará en encontrar y corregir errores, y si sustituimos el algoritmo de 
cualquier módulo nos llevará a reescribir todo el código fuente. 

El uso del ​enfoque orientado a objeto​ en MQL5 elimina considerablemente la tarea de escribir 
y probar los sistemas de trading automatizados. 

MetaQuotes Software Corp.​ ha desarrollado clases para implementar estrategias de trading. 


Ahora puede generar código de asesores expertos ​de forma automática​directamente en 
MetaEditor seleccionando las ​señales de trading​ necesarias (actualmente hay 20 de ellas), los 
módulos ​Trailing​ (4) y ​Money Management​ (5). Combinando estos módulos podemos obtener 
muchas variantes de sistemas de trading listos para ser usados. 

Puede usar también sus propias clases con la implementación de estos módulos. Créelos por sí 
mismos o pídalos a través del servicio ​Trabajos​. 

En este artículo vamos a ver la generación automática de código fuente de asesores expertos 
usando el ​MQL5 Wizard​. ¡Y no habrá que programar nada! 

1. Crear un robot de trading usando MQL5 Wizard 


El código fuente de los asesores expertos se genera usando el ​MQL5 Wizard​ en MetaEditor. 

Las clases básicas de estrategias de trading se encuentran en la carpeta 


'\<client_terminal_directory>\MQL5\Include\Expert\'. Los algoritmos de clases de ​señales de 
trading​ listos para su uso, las clases de ​posiciones abiertas de arrastre​ y las clases de ​gestión 
de dinero y riesgo​ se encuentran en las subcarpetas Signal, Trailing y Money. El MQL5 Wizard 
analiza los archivos en estas carpetas y los utiliza para generar código del asesor experto. 

Para ejecutar el MQL5 Wizard necesita hacer clic en el botón "Nuevo" en la barra de 
herramientas o seleccionar "Nuevo" en el menú "Archivo" (o simplemente pulsar Ctrl+N): 

A continuación seleccione el tipo de programa que quiere crear. En nuestro caso seleccionamos 
la opción (generar) "Asesor experto": 
 
 
 
Paso 1. Propiedades generales del asesor experto 

A  continuación  se  abre  el  cuadro  de  diálogo  donde  podemos  establecer  las  propiedades 
generales del asesor experto: 

 
Fig. 3. Propiedades generales del Expert Advisor 

Especificamos  el  nombre  de  nuestro  asesor  experto,  el  nombre  del autor y el enlace a nuestro 
sitio web en los campos "Nombre", "Autor" y "Enlace" (respectivamente). 

El asesor experto tiene también los siguientes parámetros de entrada. 

■ Símbolo (el tipo de string) - símbolo de trabajo para el asesor experto. 


■ Periodo  de  tiempo  (el  tipo  de  periodo  de  tiempo)  -  periodo  de tiempo de trabajo para 
el asesor experto. 

En  el  siguiente  paso  seleccionamos  el  tipo  de  señales  de  trading  sobre  las  que  operará  el 
experto.  

 
Paso 2. Seleccionar el módulo de señales de trading 

El  algoritmo  de apertura y cierre de posiciones viene determinado por el módulo de las señales 


de  trading.  Los  módulos  de  las  señales  de  trading  contienen  reglas  para  la 
apertura/cierre/inversión de posiciones. 

La librería estándar tiene ​módulos de señales de trading​ listas para usar: 

1. CSignalAC  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del  indicador 
oscilador acelerador​. 
2. CSignalAMA  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del  indicador 
media móvil adaptativa​. 
3. CSignalAO  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del  indicador 
oscilador impresionante​. 
4. CSignalBearsPower  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del 
oscilador ​poder de osos​. 
5. CSignalBullsPower  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del 
oscilador ​poder de toros​. 
6. CSignalCCI  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del  oscilador 
índice de canal de producto​. 
7. CSignalDeM  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del  oscilador 
DeMarker​. 
8. CSignalDEMA  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del  indicador 
media móvil doble exponencial​. 
9. CSignalEnvelopes  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del 
indicador ​Envelopes​. 
10. CSignalFrAMA  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del  indicador 
media móvil adaptativa fractal​. 
11. CSignalITF​ - módulo de filtración de señales por tiempo. 
12. CSignalMACD  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del  oscilador 
MACD​. 
13. CSignalMA  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del  indicador 
media móvil​. 
14. CSignalSAR  -  el  módulo de señales basado en los modelos de mercado del indicador ​SAR 
parabólico​. 
15. CSignalRSI  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del  oscilador 
índice de resistencia relativa​. 
16. CSignalRVI  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del  oscilador 
índice de vigor relativo​. 
17. CSignalStoch  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del  oscilador 
estocástico​. 
18. CSignalTRIX  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del  oscilador 
media exponencial triple​. 
19. CSignalTEMA  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del  indicador 
media móvil exponencial triple​. 
20. CSignalWPR  -  el  módulo  de  señales  basado  en  los  modelos  de  mercado  del  oscilador 
rango porcentual de Williams​. 

El tipo de señales de trading se selecciona de la lista desplegable "Nombre". 


Después de pulsar el botón "Siguiente" verá una ventana: 

 
Fig. 4. Selección de señales de trading del Expert Advisor 

Para añadir un módulo de señales de trading presione el botón "Añadir".  

Vamos a añadir señales de trading basadas en el ​indicador de media móvil​. 

Fig. 5. Seleccionar el algoritmo de señales de trading 

Cada  módulo  de  señales  de  trading  tiene  sus  propios  parámetros.  Puede  usar  los  valores  por 
defecto. 

Hay  dos  formas  de  crear  los  parámetros.  Puede  cambiar  entre  ellas haciendo doble clic con el 
botón  izquierdo  del  ratón  en  el  icono  del  parámetro.  Si  el  parámetro  tiene  el  icono  resaltado 

éste  estará  disponible  como  la  ​variable  de  entrada  del  asesor  experto.  Dichos  parámetros 
pueden  usarse  posteriormente  para  la  optimización  del  experto en el ​probador de estrategias​. 

Si  el  parámetro  tiene  el  icono  gris  tendrá  un  valor  fijo  que  no  podrá  modificarse  en  las 
propiedades del asesor experto. 
El módulo de señales de trading aparecerá en la lista: 

Fig. 6. Se ha añadido el módulo de señales de trading 

Paso 3. Seleccionar el módulo de rastreo de posiciones abiertas 

El  siguiente  paso  es  seleccionar  el  ​algoritmo  de  rastreo  de  posiciones  abiertas  (Trailing Stop). 
El uso del arrastre nos permite ahorrar el beneficio obtenido. 

La librería estándar proporciona varias ​formas de rastrear posiciones abiertas​: 

1. CTrailingNone​ - Trailing Stop no se usa. 


2. CTrailingFixedPips​ - Trailing Stop basada en una Stop Level fija. 
3. CTrailingMA​ - Trailing Stop basada en la MA. 
4. CTrailingPSAR​ - Trailing Stop basada en el ​SAR parabólico​.   

En nuestro asesor experto seleccionamos "Trailing Stop basada en Stop Level": 

Fig. 7. Seleccionar el algoritmo de posiciones abiertas de arrastre 


Este  tipo  de  arrastre  tiene  dos  parámetros:  StopLevel  y  ProfitLevel  (en  puntos  para 
cotizaciones  con  2  y  4  dígitos  después  de  la  coma)  que  serán  usados  para  rastrear  posiciones 
abiertas: 

Fig. 9. Establecer los parámetros del algoritmo seleccionado de rastreo de posiciones abiertas 

Paso 4. Seleccionar el módulo de gestión de dinero y riesgo 

En  el  último  paso  necesitamos  seleccionar  el  sistema  de  gestión  de  dinero  y  riesgo  que  será 
usado en nuestro asesor experto. 

El  propósito  de  este  algoritmo  es  determinar  el  volumen  de  transacciones  (en  lotes)  para  las 
operaciones  de  trading  y  también  la  gestión  del  riesgo.  Cuando  el  valor  de  pérdida  excede  el 
límite  permitido  (por  ejemplo,  10%  de  las  acciones)  el  módulo  de  gestión  de  dinero  y  riesgo 
cerrará forzosamente la posición no rentable. 

La  librería  estándar  proporciona  varias  ​implementaciones  de  los  algoritmos  de  gestión  de 
dinero y riesgos listas para ser usadas​: 

1. CMoneyFixedLot​ - Operar con un volumen de transacciones fijo 


2. CMoneyFixedMargin​ - Operar con un margen fijo. 
3. CMoneyFixedRisk​ - Operar con un riesgo fijo. 
4. CMoneyNone​ - Operar con el volumen de transacciones mínimo permitido. 
5. CMoneySizeOptimized​ - Operar con el volumen de transacción optimizado. 
 

Fig. 9. Seleccionar el algoritmo de gestión de dinero y riesgo 

Seleccionar el algoritmo "Operar con volumen de transacciones fijo". 

El módulo que hemos seleccionado tiene dos parámetros: 

■ Lotes - volumen de transacciones en lotes. 


■ Porcentaje - porcentaje de riesgo máximo permitido. 

Fig. 10. Establecer los parámetros del algoritmo seleccionado de gestión de dinero y riesgo 

Después  de  hacer  clic  en  "Finalizar"  aparecerá  el  archivo  TestExpert.mq5  en  la  carpeta 
\teminal_data_filder\MQL5\Experts\.  El  nombre  del  archivo  es  el  nombre  del  asesor  experto 
especificado. 

3.  Comprobando  el  asesor  experto  creado  en  el  probador  de 
estrategias de MetaTrader 5 
Si  están  presentes  todos  los  componentes  de  la  ​librería  estándar​,  el código del asesor experto 
se compila con éxito: 

  

Figura 10. Compilación con éxito del código fuente del Expert Advisor creado en el MQL5 Wizard 

 
El  asesor  experto  resultante  operará  de  acuerdo  con  los  algoritmos  elegidos  de  las  ​señales  de 
trading​, ​rastreo de posiciones abiertas​ y ​gestión de dinero y riesgo​. 

Puede  comprobar el funcionamiento de su sistema de trading recién creado usando el ​probador 
de  estrategias  del  terminal  de  cliente  de  ​MetaTrader  5​.  En  la  figura  11  puede  ver  los 
resultados  de  la  prueba  sobre  los  datos  históricos  con  los  ajustes  por  defecto  (EURUSD,  H1, 
2010.01.01-2011.06.01): 

Figura 11. Resultados de la prueba del Expert Advisor sobre los datos históricos (EURUSD, H1) 

l mejor conjunto de parámetros del asesor experto puede obtenerse después de la 
optimización​ en el probador de estrategias de MetaTrader 5. 

Conclusión  
El uso de las ​clases de estrategias de trading facilita considerablemente la creación y la prueba 
de  sus  ideas  de  trading.  Ahora  puede  construirse  todo  el  código  fuente  del  asesor  experto 
directamente  en  MetaEditor  usando  su  ​MQL5  Wizard  en  base  a  los  ​módulos  de  la  librería 
estándar lista para ser usada, empleándolos en sus propios módulos.  

Si  no  quiere  o  no  puede  escribir  sus  propios  módulos  de  señales  de  trading,  siempre  puede 
beneficiarse  del  servicio  ​trabajos  y  encargar  todo  un  robot  de  trading  o  solo  los  módulos  que 
necesite. Este enfoque proporciona beneficios adicionales: 

■ Los  costes  de  desarrollo  de  módulos  separados  deben  ser  inferiores  al  coste del asesor 
experto al completo. 
■ El  módulo  resultante  puede  reutilizarse  para  crear  tanto  un  asesor  experto  autónomo 
como  una  familia  completa  de  robots  de  trading  (basados  en  este  módulo)  usando  el 
MQL5 Wizard. 
■ El  módulo  adquirido  debe  cumplir  estrictamente  los requisitos del MQL5 Wizard, y esto 
proporciona un control adicional sobre la calidad del código. 

 
 

También podría gustarte