Programación en Visual Chart 6: Cómo extraer año y mes de una fecha.

En un antiguo artículo de nuestro blog explicábamos a nuestros usuarios los procedimientos necesarios para poder trabajar con fechas durante el diseño de algoritmos (ya sean estrategias o indicadores). En aquel artículo se explicaba que la función TimeEx nos proporcionaba la información completa de la fecha de una barra determinada.

Ahora, con Visual Chart 6, igualmente usaremos dicha función cuando necesitemos acceder a estos datos, si bien la forma de obtener el mes, el año, etcétera es algo distinta, como consecuencia del cambio de motor de programación. En este artículo vamos a explicar cómo hacerlo mediante un par de ejemplos.

Extraer el año y el mes de la fecha
Como decíamos, tanto con Visual Chart 5 como con Visual Chart 6 usamos la función TimeEx para averiguar la fecha de cada barra. En la versión 6, en concreto, se declara la función especificando el campo TickIndex como obligatorio:








El dato devuelto por dicha función es de tipo Date, y mantiene la estructura <yyyy/mm/dd hh:mm:ss>.

Si queremos obtener el año, ahora, es bastante sencillo: Al tratarse de una instancia de la clase fecha, lo único que tenemos que hacer, es acceder a la propiedad Year de dicha clase, tal que así:

En la Plataforma Visual haremos lo mismo, sólo que tendremos que entrecomillar el uso de la función puesto que no está incorporada a la lista de funciones que podemos incluir originalmente. El proceso sería el siguiente:

Nota aclaratoria: Como es obvio, el resultado es el mismo si obtenemos el campo año directamente de la función TimeEx(0) que si lo hacemos de una variable a la que le asignamos el valor devuelto.

Si lo que queremos es obtener el mes de la fecha, el proceso es exactamente el mismo sólo que en este caso accedemos a la propiedad Month:

En la Plataforma Visual sería así:

Como ven, el proceso es mucho más sencillo que como debíamos hacerlo para Visual Chart 5.

Nota aclaratoria 2: En estos ejemplos, siempre estamos accediendo a la fecha de la barra actual. Si queremos acceder a la fecha de una barra previa, debemos especificar la distancia respecto a la posición actual en el campo BarsAgo. Por ejemplo, si queremos la fecha de hace dos barras, pondremos Me.Data.TimeEx(0, 2).

Comentarios

Entradas populares de este blog

Trading Tools: Descarga de históricos para Visual Chart 6

KDJ - Indicador Stochastic %J

El indicador Relative Strength Mansfield with Index