Pon "Me gusta" y sigue las noticias
Deje un enlace a él, ¡qué los demás también lo valoren!
Evalúe su trabajo en el terminal MetaTrader 5
- Visualizaciones:
- 913
- Ranking:
- Publicado:
- 2018.03.26 13:27
-
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa
Ejemplo del trabajo de las funciones matemáticas:
- MathCeil - devuelve el valor numérico entero más cercano desde arriba;
- MathRound - redondea el número hasta el valor numérico entero más cercano;
- MathFloor - devuelve el valor numérico entero más cercano desde abajo;
Código:
//+------------------------------------------------------------------+ //| MathCeilRoundFloor.mq5 | //| Copyright © 2016, Vladimir Karputov | //| http://wmua.ru/slesar/ | //+------------------------------------------------------------------+ #property copyright "Copyright © 2016, Vladimir Karputov" #property link "http://wmua.ru/slesar/" #property description "MathCeil: Devuelve el valor numérico entero más cercano desde arriba" #property description "MathRound: Redondea el número hasta el valor numérico entero más cercano" #property description "MathFloor: Devuelve el valor numérico entero más cercano desde abajo" #property description "MathCeil: Returns integer numeric value closest from above" #property description "MathRound: Rounds of a value to the nearest integer" #property description "MathFloor: Returns integer numeric value closest from below" #property version "1.003" //+------------------------------------------------------------------+ //| Script program start function | //+------------------------------------------------------------------+ void OnStart() { //--- double price=1.01561; Print("\n","Start price: ",DoubleToString(price,5)); for(int i=0;i<10;i++) { Print("MathCeil(",DoubleToString(price,5),") -> ",MathCeil(price)); Print("MathRound(",DoubleToString(price,5),") -> ",MathRound(price)); Print("MathFloor(",DoubleToString(price,5),") -> ",MathFloor(price)); Print(""); price+=1.9; } }
Empezamos con el precio "price" igual a 1.01561 y luego lo aumentamos cíclicamente a 1.9.
Resultado:
Start price: 1.01561 MathCeil(1.01561) -> 2.0 MathRound(1.01561) -> 1.0 MathFloor(1.01561) -> 1.0 MathCeil(2.91561) -> 3.0 MathRound(2.91561) -> 3.0 MathFloor(2.91561) -> 2.0 MathCeil(4.81561) -> 5.0 MathRound(4.81561) -> 5.0 MathFloor(4.81561) -> 4.0 MathCeil(6.71561) -> 7.0 MathRound(6.71561) -> 7.0 MathFloor(6.71561) -> 6.0 MathCeil(8.61561) -> 9.0 MathRound(8.61561) -> 9.0 MathFloor(8.61561) -> 8.0 MathCeil(10.51561) -> 11.0 MathRound(10.51561) -> 11.0 MathFloor(10.51561) -> 10.0 MathCeil(12.41561) -> 13.0 MathRound(12.41561) -> 12.0 MathFloor(12.41561) -> 12.0 MathCeil(14.31561) -> 15.0 MathRound(14.31561) -> 14.0 MathFloor(14.31561) -> 14.0 MathCeil(16.21561) -> 17.0 MathRound(16.21561) -> 16.0 MathFloor(16.21561) -> 16.0 MathCeil(18.11561) -> 19.0 MathRound(18.11561) -> 18.0 MathFloor(18.11561) -> 18.0
Traducción del ruso realizada por MetaQuotes Ltd
Artículo original: https://www.mql5.com/ru/code/20131

El Asesor Experto trabaja a base del indicador Fractals: coloca las órdenes pendientes y mueve Stop Loss de las posiciones según este indicador.

Indicador AD (Accumulation Distribution) con tres métodos del cálculo.

Trabajo con órdenes pendientes Buy Stop y Sell Stop y con el indicador iAMA (Adaptive Moving Average, AMA) a base del «precio redondo». Trailing de posiciones.

Asesor Experto a base del indicador iIchimoku (Ichimoku Kinko Hyo). Stop Loss, Take Profit y Trailing separados para las posiciones BUY y SELL. Hay posibilidad de limitar el trabajo por horas. En la barra actual se realiza la comprobación: sólo una posición puede estar abierta.