Mira cómo descargar robots gratis
¡Búscanos en Twitter!
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:
1300
Ranking:
(51)
Publicado:
2014.01.14 13:15
Actualizado:
2016.11.22 07:33
\MQL5\Include\
ibarshift.mqh (3.24 KB) ver
\MQL5\Scripts\
testbarshift.mq5 (9.01 KB) ver
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa

Hay un gran número de usuarios, los cuales, están buscando la función iBarShift de MQL4.

Pero esta función ya no está incluida en MQL5, porque MQL5 ofrece desde el nivel más bajo la capacidad de realizar dichas operaciones en sus bibliotecas.

Como alternativa, varios programadores han presentado sus versiones para MQL5. He encontrado 4 versiones diferentes de circlesquares, komposter (from Codebase), dc2008 (del famoso artículo Migrando de mql4 a mql5) o marketeer (en el foro ruso).

Lo que he descubierto es que todas esas implementaciones son erróneas, en el sentido de que no reproducen exactamente el comportamiento de la función de MQL4 iBarShift(). De hecho, cuando la fecha/hora dada como parámetro de entrada, no coincide con la hora de apertura de una vela, todas las versiones dan un resultado incorrecto.

Por tanto decidí realizar varias pruebas sobre la exactitud y velocidad de dichas implementaciones y, por supuesto, desarrollar mi propia versión. Puede encontrar en los archivos adjuntos tanto mi versión de la biblioteca, como el script que he utilizado para evaluar las funciones.

Resultados de la evaluación de iBarShift para las 5 versiones.

Hay que tener en cuenta que iBarShift() no es siempre la mejor solución para determinadas tareas en MQL5. Dependiendo de vuestro algoritmo, pueden existir mejores métodos.

P.S: Hay un bug nn mql5 que hace que mis funciones sean muy lentas y/0 funcionen erráticamente con las versiones 858/868/871 de MT5. este error se ha corregido en la versión 880.

Traducción del inglés realizada por MetaQuotes Ltd.
Artículo original: https://www.mql5.com/en/code/1864

IncForceOnArray IncForceOnArray

La clase CForceOnArray está diseñada para calcular los valores de Force Index a partir de los buffers del indicador.

IncVidyaOnArray IncVidyaOnArray

La clase CVidyaOnArray está diseñada para calcular los valores de VIDYA (Variable Index Dynamic Average) en un búfer de indicador.

IncWPROnArray IncWPROnArray

La clase CWPROnArray está diseñada para calcular los valores del indicador Williams' Percent Range (%R) a partir de sus buffers. Se facilita un ejemplo de uso de la clase.

IncBullsBearsOnArray IncBullsBearsOnArray

La clase CBullsBearsOnArray está diseñada para calcular los valores los indicadores Bulls Power y Bears Power a partir de sus buffers. Se facilita un ejemplo de uso de la clase.