Mira cómo descargar robots gratis
¡Búscanos en Facebook!
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
Visualizaciones:
1589
Ranking:
(31)
Publicado:
2016.04.14 13:18
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa

    El asesor Moving Average usa para formar las señales comerciales una media móvil. La apertura y cierre de posición tiene lugar cuando la media móvil cruza el precio de la barra recién formada (el índice de la barra es igual a 1). El tamaño del lote se optimiza conforme a un algoritmo especial.

    El asesor analiza el cruce de la media móvil y el gráfico de mercado de precio. La comprobación la realiza la función CheckForOpen(). Si la media móvil cruza una barra de tal forma que esté por encima del precio Open y por debajo de Close, entonces se abre una posición BUY. Si la media móvil cruza una barra de tal forma que esté por debajo del precio Open y por encima de Close, entonces tiene lugar la venta.

    En el asesor se aplica un Money Management muy sencillo pero eficaz: el método de gestión del volumen de cada posición depende de los resultados de las operaciones anteriores. El algoritmo indicado se implementa con la función LotsOptimized(). El cálculo del tamaño básico del lote tiene lugar basándose en el riesgo máximo permitido:

    lot=NormalizeDouble(AccountFreeMargin()*MaximumRisk/1000.0,1);

    El parámetro MaximumRisk muestra el valor básico del riesgo en tanto por ciento para cada operación. Normalmente adopta un valor que va desde 0.01 (1%) hasta 1 (100%). Por ejemplo, si los recursos libres (AccountFreeMargin) son iguales a $20500 y la normas de gestión de capital recomiendan usar un 2%, entonces el tamaño del lote será 20500 * 0.02 / 1000 = 0.41. Es muy importante controlar la exactitud del tamaño del lote y normalizar el resultado con los valores permisibles. Normalmente se permiten lotes fraccionados con un salto de 0.1. Una operación con un volumen de 0,41 no se ejecutará. Para la normalización se usa la función NormalizeDouble() con una precisión de un dígito detrás de la coma. Como resultado, tenemos un lote básico igual a 0.4. El cálculo del lote básico basándose en el margen libre permite aumentar el volumen de las operaciones dependiendo del éxito en el comercio, es decir, se puede comerciar reinvirtiendo los recursos. Este es un mecanismo básico en la gestión obligatoria del capital para aumentar la eficiencia comercial.

    DecreaseFactor - nivel de disminución del tamaño del lote después de una transacción sin éxito. Valores habituales - 2,3,4,5. Si las transacciones anteriores no han sido rentables, los consiguientes volúmenes disminuyen usando el factor DecreaseFactor para transmitir el periodo desafortunado. En el algoritmo de gestión de capital es el factor más importante. La idea es muy simple: si el comerio redunda en beneficios, el asesor trabaja con el lote básico, ganando al máximo. Después de la primera operación con pérdidas, "disminuye la velocidad," hasta que lleve a cabo una transacción positiva. El algoritmo permite desactivar la "disminución de velocidad", si se especifica un DecreaseFactor = 0. En la historia de las transacciones se calcula la cantidad de las últimas operaciones perdedoras consecutivas. Sobre esta base, se vuelve a calcular el lote básico:

    if(losses>1) lot=NormalizeDouble(lot-lot*losses/DecreaseFactor,1);

    De esta forma, el algoritmo puede reducir efectivamente el riesgo debido a la sucesión de transacciones no exitosas anteriores.

    Al final de la función se realiza la comprobación obligatoria del tamaño de lote mínimo permitido, dado que como resultado de los cálculos anteriores se puede obtener lot = 0:

    if(lot<0.1) lot=0.1;

    El asesor está diseñado principalmente para trabajar en el período diario, y en el modo de prueba con precios de cierre. El asesor comercia solamente en la apertura de una nueva barra, por lo que no es necesario utilizar el régimen de modelado de ticks detallado.

    Presentamos los resultados de la simulación del asesor en el informe.

Strategy Tester Report

Moving Average


SímboloEURUSD (Euro vs US Dollar)
Periodo1 Hora (H1) 2003.01.08 00:00 - 2003.11.25 00:00
ModeloTodos los ticks (en base a todos los periodos menores con interpolación fractal de cada tick)
ParámetrosLots=0.1; MaximumRisk=0.01; DecreaseFactor=1; MovingPeriod=16; MovingShift=11;

Barras en la historia19368Ticks modelados656915Calidad del

modelado

25.00%

Depósito inicial10000.00



Beneficio neto1695.20Beneficio total4293.20Pérdidas totales-2598.00
Rentabilidad1.65Esperanza matemática de ganancia10.80

Disminución absoluta40.35Disminución máxima (%)318.50 (3.0%)


Operaciones totales157Posiciones cortas (% con ganancias)73 (26.03%)Posiciones largas (% con ganancias)84 (32.14%)

Operaciones con beneficios (% del total)46 (29.30%)Operaciones con pérdidas (% del total)111 (70.70%)
Operación conmayores beneficios262.55mayores pérdidas-91.00
Средняяmayores beneficios93.33mayores pérdidas-23.41
Cantidad máximade ganancias seguidas (beneficio)2 (387.15)ganancias seguidas (beneficio)7 (-287.25)
Máximode ganancias inenterrumpidas (número de ganancias)387.15 (2)pérdidas ininterrumpidas (número de pérdidas)-287.25 (7)
Gananciaconsecutiva media1pérdidas consecutivas3

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

PrintText PrintText

El script expone las capacidades de representación de información de texto en el gráfico

Velocity_v2 Velocity_v2

Indicador Velocity_v2.

OverLay Chart OverLay Chart

Superponer dos o más gráficas en una misma ventana.

Qualitative Quantitative Estimation Qualitative Quantitative Estimation

Indicador Qualitative Quantitative Estimation. Utiliza RSI.