Mira cómo descargar robots gratis
¡Búscanos en Telegram!
Pon "Me gusta" y sigue las noticias
¿Es interesante este script?
Deje un enlace a él, ¡qué los demás también lo valoren!
¿Le ha gustado el script?
Evalúe su trabajo en el terminal MetaTrader 5
Asesores Expertos

Asesor basado en 2 líneas Moving Average - Asesor Experto para MetaTrader 4

Visualizaciones:
1574
Ranking:
(30)
Publicado:
2015.12.24 14:37
Actualizado:
2016.11.22 07:33
ma_v_1_3_3.mq4 (35.88 KB) ver
results.zip (109.07 KB)
settings.zip (2.76 KB)
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa

La idea del asesor ha sido mía. El código del asesor lo ha escrito Sergey Diubakin.

Esta versión del asesor se usó para comerciar en una cuenta PAMM. A causa del factor humano (es decir, a causa mía) el beneficio neto fue del 20%. El beneficio máximo que se logró fue del 84% del depósito.

Periodo de comercio real: del 23.02.2015 al 23.07.2015.

Según mis observaciones, para comerciar usando este asesor es necesario un depósito considerable (mínimo 15 000 - 20 000).

Para comerciar se usan las indicaciones del indicador Moving Average. Si la línea rápida de Moving Average está por encima de la línea lenta de Moving Average, la distancia entre estas dos líneas es mayor a la establecida, entonces se abre una orden de compra.

Para emitir una orden de venta, se usan las indicaciones opuestas de los indicadores. El cierre de órdenes tiene lugar conforme a las indicaciones del indicador Moving Average.

Asimismo, en este asesor existen módulos adicionales que se pueden conectar: la distancia entre las líneas rápida y lenta de Moving Average, Take Profit, Stop Loss, Trailing Stop, la distancia entre órdenes (hacia arriba y hacia abajo), el método de promediación Take Profit, Trade time, Turn ("del revés"), aumento del primer lote básico en caso de que se cierre el anterior con pérdidas.


Algoritmo de funcionamiento del asesor:

  1. El asesor comprueba si hay órdenes que haya abierto con anterioridad.
  2. Si no hay órdenes abiertas, entonces el asesor analiza el gráfico y, si se observan todas las condiciones indicadas en la configuración, abre la primera orden principal.
  3. Después de abrir la primera orden principal, el asesor establece los niveles de Take Profit y Stop Loss (si estos módulos están activados).
  4. Si la primera orden principal se cierra con pérdidas, entonces la siguiente orden puede abrirse con un tamaño aumentado.
  5. Si se ha emitido la primera orden principal, los módulos Step Up y Step Down están activados y el precio alcanza los valores establecidos, entonces se emiten órdenes adicionales según los datos del módulo. Las órdenes adicionales según los módulos Step Up y Step Down pueden ser emitidas solo en el caso de que el asesor vea que ha abierto la primera orden principal antes o que existan órdenes adicionales sin cerrar.
  6. En este asesor hay 2 modos de funcionamiento:
    • а) el 1 modo de funcionamiento consiste en que si Fast MA está por encima de Slow MA, el asesor establece órdenes de compra, y en caso de cambiar la tendencia (Fast MA está por debajo de Slow MA), todas las órdenes de compra se cierran y se abren órdenes de venta.
    • б) el 2 modo de funcionamiento consiste en que si el asesor ha abierto órdenes de compra y cambia la tendencia (Fast MA por debajo de Slow MA), entonces las órdenes permanecerán abiertas como antes. El asesor podrá establecer órdenes de venta solo cuando Fast MA esté por debajo de Slow MA y todas las órdenes de compra del asesor estén cerradas (alcancen Take Profit, Stop Loss o sean cerradas "a mano").
  7. En este asesor existe el módulo Trade time, activando el cual, el asesor puede emitir la primera orden principal solo en aquel periodo de tiempo que sea indicado en este módulo. Este módulo no se extiende a las órdenes adicionales según los módulos Step Up, Step Down y Turn ("del revés"). Es decir, si usted tiene órdenes anteriores abiertas por el asesor y los módulos Step Up, Step Down o Turn ("del revés") activados, entonces se emitirán órdenes adicionales conforme a estos módulos, independientemente del tiempo.


Ajustes del asesor:

  1. Modos de funcionamiento:

    • 1 — al cambiar la tendencia, todas las órdenes abiertas se cierran, y se abren las órdenes en la dirección opuesta;
    • 2 — al cambiar la tendencia, las órdenes abiertas no se cierran (el asesor esperará a que alcancen Take Profit, Stop Loss o se cierren "a mano").
  2. Fast MA — ajustes del indicador conectado de la media móvil (Moving Average): periodo, desplazamiento, método МА. Se usa el Moving Average que esté conectado al terminal MetaTrader 4.

  3. Slow MA — ajustes del indicador conectado de la media móvil (Moving Average): periodo, desplazamiento, método МА. Se usa el Moving Average que esté conectado al terminal MetaTrader 4.

  4. Lote inicial

  5. 4.1. Lote inicial

    • LotConst_or_not — permite al usuario elegir si empezar a comerciar desde el mismo lote o recalcular el lote inicial dependiendo del cambio del depósito:
      true — el primer lote será permanente e igual al valor Lots indicado más abajo;
      false — el primer lote cambiará de forma dinámica junto con el cambio del depósito y dependerá del parámetro RiskPercent y del tamaño del depósito. Lots =AccountBalance() * (RiskPercent / 100.0) / 10000.0
    • Lots — establece el lote inicial para comerciar;
    • RiskPercent — establece el lote inicial, dependiendo del depóstio.

    4.2. Aumento del lote

    • FirstLotMultiplicator — parámetro responsable de la multiplicidad del aumento de cada primera orden principal consecutiva, en el caso de la primera orden principal anterior se haya cerrado con pérdidas (cerrada según Stop Loss, "a mano" o simplemente con pérdidas);
    • First_LotSize — si la primera orden principal ha alcanzado el valor que se indica en esta línea, entonces el asesor establece Take Profit en el nivel que se haya indicado en la siguiente línea (First_LotSize_TakeProfit), y no en el punto 5 de los ajustes del asesor;
    • First_LotSize_TakeProfit — "nuevo" nivel de Take Profit de la primera orden principal en el caso de que haya alcanzado el tamaño indicado en la línea First_LotSize;
    • First_MaxLotSize — valor máximo de la primera orden principal hasta la que el asesor puede aumentarla. Si el tamaño de la primera orden principal emitida supera el valor que se ha indicado en esta línea, entonces el asesor establece la primera orden principal de acuerdo con el punto 3.1. de los ajustes del asesor.
  6. Ajustes de distancia entre Fast MA y Slow MA

    • Distance — distancia necesaria entre Fast MA y Slow MA para abrir una orden, se calcula en puntos del gráfico al que está fijado el asesor.
      true — el módulo Distance está activado (conectado),
      false — el módulo Distance está desactivado (desconectado).
  7. Beneficio en puntos — TP

    • TakeProfit — valor deseado de benefico en puntos al cerrar una orden o grupo de órdenes.
      true — el módulo TakeProfit está activado (conectado),
      false — el módulo TakeProfit está desactivado (desconectado).
  8. Método de promediación — Varyant — variante del método de promediación del nivel TakeProfit (hay que elegir entre 1 o 2).

    • Varyant 1. La promediación del nivel tiene lugar según la fórmula siguiente: (precio de apertura 1 + precio de apertura 2 + precio de apertura 3 + precio de apertura N) / N + el nivel de Take Profit indicado en los ajustes del asesor.
    • Varyant 2. La promediación del nivel tiene lugar según el esquema siguiente: el asesor determina el "nivel sin pérdidas" de todas las posiciones (teniendo en cuenta todos los swaps y comisiones de las órdenes abiertas por el asesor en el momento de la promediación del nivel Take Profit) y a este precio se añade el nivel de Take Profit que está indicado en los ajustes del asesor.
  9. Stop en puntos — SL

    • StopLoss — valor de la pérdida en puntos, que se puede obtener si el precio se mueve en la dirección opuesta (a una orden abierta).
      true — el módulo StopLoss está activado (conectado),
      false — el módulo StopLoss está desactivado (desconectado).
  10. La distancia entre órdenes (Step Up) , es la distancia (intervalo) entre órdenes abiertas en la retícula de órdenes que se establece a favor de la "tendencia".

    true — el módulo Step Up está activado (conectado),
    false — el módulo Step Up está desactivado (desconectado).

    9.1. Trailing stop — nivel desplazable de Stop Loss.

    true — el módulo Trailing stop está activado (conectado),
    false — el módulo Trailing stop está desactivado (desconectado).
  11. La distancia entre órdenes (Step Down) , es la distancia (intervalo) entre órdenes abiertas en la retícula de órdenes que se establece en contra de la "tendencia".

    true — el módulo Step Down está activado (conectado),
    false — el módulo Step Down está desactivado (desconectado).

  12. Identificador de las órdenes del asesor — Magic (Magic Number) — este parámetro ayuda a que los asesores no se confundan al comerciar en un mismo teminal.

  13. Logotipo y muestra de datos — ShowTableOnTesting — parámetro que permite activar y desctivar el recuadro (ganancias de hoy, ayer, etcétera): true - activado, false - desactivado.

  14. Time frame — código de programa que permite establecer qué periodo temporal del gráfico será usado por el asesor para comerciar.

    • Current — periodo temporal del gráfico que se indica en el terminal.
    • M1, M5, M15, M30, H1, H4, D1, W1, MN1 — periodos temporales fijos.
  15. Trade time — módulo de apertura de la primera orden principal en un tiempo determinado.

    true — el módulo Trade time está activado (conectado),
    false — el módulo Trade time está desactivado (desconectado).

  16. Turn ("del revés") — emite las órdenes límite conferme al nivel Stop Loss de la orden principal en la dirección opuesta.

    true — el módulo Turn está activado (conectado),
    false — el módulo Turn está desactivado (desconectado).

    • Turn — distancia tras la cual se emite la orden pendiente opuesta.
    • LotMultiplicator — parámetro responsable de la multiplicidad del aumento de las órdenes emitidas por el módulo Turn ("del revés") en el caso de que la orden anterior se haya cerrado con pérdidas (cerrada según Stop Loss, "a mano" o simplemente con pérdidas);
    • Turn_TakeProfit — nivel de Take Profit para las órdenes establecidas por el módulo Turn ("del revés");
    • Turn_LotSize — si una orden establecida por el módulo Turn ("del revés") supera el valor indicado en esta línea, entonces para esta orden se usa el nuevo nivel de Take Profit indicado en la siguiente línea del módulo Turn ("del revés"), y no en la línea Turn_TakeProfit;
    • Turn_LotSize_TakeProfit — nuevo nivel de Take Profit para las órdenes del módulo Turn ("del revés"), en caso de que las órdenes establecidas superen el tamaño indicado en la línea Turn_LotSize;
    • Turn_MaxLotSize — tamaño máximo de la orden establecida por el módulo Turn ("del revés"). Si la orden emitida supera el parámetro indicado, entonces el asesor no la establece.


Resultados del comercio:

Resultados del comercio

Esta versión del asesor se usó para comerciar en una cuenta PAMM. Periodo de comercio real: del 23.02.2015 al 23.07.2015.

El beneficio máximo que se logró alcanzar fue del 84% del depósito. Aunque, por mi culpa, el beneficio neto fue del 20%. La causa es que me entrometí mientras el asesor comerciaba.

Las pruebas del asesor que he llevado a cabo, han mostrado un rendimiento del 5%, 10%, 15% de beneficio neto al mes, con unas pérdidas del 20% del depósito.

P.S. Las redes que se adjuntan funcionaron solo en la cuenta en la que comercié. Para cada centro de dealing/bróker y para la cuenta (ya sea demo o real) es necesario que el asesor tenga sus ajustes propios.

No se entretenga demasiado con la optimización, ya que no siempre ayuda y no puede tener en cuenta la velocidad de emisión de órdenes si los movimientos son muy bruscos.

Traducción del ruso realizada por MetaQuotes Ltd
Artículo original: https://www.mql5.com/ru/code/13617

Swapping Swapping

El indicador suministra la historia de los símbolos de los que hay gráficos abiertos. Al pasar de un marco temporal a otro, no será necesario esperar actualizaciones.

High, Low and Close of the previous day, week or month High, Low and Close of the previous day, week or month

The indicator shows the High, Close and Low of the previous day, week or month with time shift.

Forex Fraus (for M1) Forex Fraus (for M1)

El asesor está basado en el indicador Williams Percent Range. Vende en la zona de sobrecompra, y compra en la zona de sobreventa. Se les ha fijado un trail stop y un temporizador de funcionamiento.

Trend_Catcher Trend_Catcher

El asesor busca la tendencia según tres medias móviles (periodo 200, 50, 25 u otros que el usuario desee) y abre operaciones usando Parabolic SAR.