July 6, 2020

Anunciando Lightweight Charts 3.0

Estamos entusiasmados de lanzar Lightweight Charts 3.0. Hemos agregado la capacidad de tener dos escalas de precios al mismo tiempo, determinar el recuento de barras desde la izquierda/derecha de los datos visibles, usar su propio formato de fecha, anular el rango de escala automática y mucho más. En esta publicación, lo guiaremos a través de cada una de estas actualizaciones y le mostraremos cómo comenzar a usar nuestra versión más reciente de Lightweight Charts.

Cambios importantes

En primer lugar, esta es una versión principal de la biblioteca, que tiene algunos cambios importantes:

  • Ambos métodos subscribeVisibleTimeRangeChange y unsubscribeVisibleTimeRangeChange se han movido de ChartApi a TimeScaleApi;
  • Con nuestra versión 3.0, puede especificar el eje de precios en el que desea colocar la serie. Lo mismo se aplica para mover la serie entre escalas de precios.

Vea nuestro documento de cambios importantes con una guía completa para ayudarlo a migrar sin problemas.

Two price scales

Desde nuestra primera versión pública, la biblioteca solo ha podido mostrar una escala de precios al mismo tiempo (de izquierda a derecha), si es que lo ha hecho. Con la versión 3.0, podrá mostrar hasta dos escalas de precios a la vez. Esto significa que puede agregar dos series diferentes en el gráfico, colocarlas en diferentes escalas de precios (una a la izquierda, la otra a la derecha) y ambas estarán visibles. Además, tendrá la capacidad de poner varias series en la misma escala de precios, incluso si se trata de una superposición. De este modo, crea tu propio estudio con varios resultados en los que puedes hacer cada salida como una serie separada y ponerlos a todos en la misma escala de precios para que se escalen juntos.

Contando barras y visibilidad de barras

Supongamos que desarrolla una aplicación y deberá implementar la carga continua de datos para cuando un usuario se desplace hacia la izquierda en el historial (visible aquí). Esta es una característica bastante básica para las soluciones de gráficos.

La versión 3.0 de la biblioteca tiene muchas mejoras relacionadas con esta característica. Por ejemplo, ahora puede obtener información sobre cuántas barras tiene una serie desde la izquierda de la barra visible izquierda o desde la derecha de la barra visible derecha. Ahora también puede hacer predicciones y cargar nuevas barras con anticipación para que los usuarios no vean ningún «congelamiento» o demoras en la carga. Por ejemplo, supongamos que comienza a cargar barras adicionales cuando un usuario se desplaza hacia la izquierda para que el gráfico tenga solo 50-100 barras restantes en el historial.

Además, la API también se puede aplicar para sincronizar fácilmente los rangos visibles (como se ve en el gráfico múltiple de TradingView, por ejemplo) entre varios gráficos. Cuando se mueve un gráfico, otros también se mueven.

Formatos de fecha

Anteriormente, teníamos una lista codificada de formatos de fecha disponibles (19 formatos en total), por lo que no pudo personalizar y usar su propio formato, que se adaptaría mejor a sus requisitos.

En 3.0 hemos cambiado esto, permitiéndole usar cualquier cadena personalizada como formato de fecha. Por ejemplo, puede usar `aaaa-dd` o incluso` aaaa`, que es adecuado para gráficos estacionales.

Un formato personalizado puede ser cualquier cadena, que contenga cualquier número de marcadores de posición de fecha, que luego reemplazaremos con los valores de fecha correspondientes:

  • `aaaa` – año completo (por ejemplo, 2020)
  • `aa` – año corto (por ejemplo, 20)
  • `MMMM` – mes largo (por ejemplo, julio)
  • `MMM` – mes corto (por ejemplo, febrero)
  • `MM` – mes numérico (con cero a la izquierda si es necesario) (por ejemplo, 03)
  • `dd` – día del mes (con cero a la izquierda si es necesario) (por ejemplo, 15)

Rango de precios de serie superior

Por defecto, la biblioteca usa todos los datos visibles en el gráfico para calcular el rango de precios mientras está en modo de escala automática. Sin embargo, si desea modificarlo de alguna manera, por ejemplo, si está seguro de que la serie no debe tener valores negativos, puede cambiar el rango de precios de una manera que le permita proyectarse como no negativo, y la biblioteca adoptará el rango de precios en consecuencia.

Posibilidad de agregar un texto al marcador de serie

Los marcadores de serie son útiles para mejorar la experiencia de usuario de un gráfico. Le permiten mostrar marcadores (es decir, flechas, un círculo o un cuadrado) junto a las barras de una serie. En nuestra nueva versión de la biblioteca, también puede especificar una firma o texto para cada marcador, lo que le permite agregar subtítulos y notas.

API para convertir el tiempo en una coordenada y viceversa

Ocasionalmente, es necesario colocar una pista o texto en la parte superior de la biblioteca en un momento específico del gráfico. En nuestra versión 3.0, hemos agregado la capacidad de convertir el tiempo en coordenadas X y viceversa, esencialmente haciendo que la API establezca las coordenadas de la pantalla. Además, ahora puede obtener el ancho de la escala de precios visible (izquierda o derecha). Esto puede ser útil, por ejemplo, si tiene la escala de precios izquierda mostrada y necesita obtener una coordenada exacta dentro del gráfico.

Capacidad para ocultar marcas de escala de precios

Las marcas de graduación en la escala de precios pueden parecer algo confusas para algunos, a menudo porque parecen un signo menos. Sin embargo, ahora puede deshabilitar este símbolo, haciendo que la biblioteca deje de mostrarse. Esto significa que no habrá más símbolos confusos que llenen su gráfico si prefiere tener ese espacio despejado.

Más funciones, paquete más pequeño

Uno de los significados de «lightweight» se refiere al tamaño. La primera versión de la biblioteca fue ~ 43.7KB en min.gz. Desde entonces, hemos agregado muchas funciones nuevas y puede pensar que el tamaño imita el crecimiento de estas adiciones, pero ahí es donde estaría equivocado.

En esta versión, hemos aplicado varias técnicas para reducir el tamaño de la biblioteca, lo que nos permite ofrecerle un tamaño de paquete más pequeño. Por lo tanto, la versión 3.0 de la biblioteca tiene 42.4 KB en min.gz, incluso más pequeña que antes, pero está llena de funciones y herramientas adicionales.

Tenga en cuenta que las técnicas que hemos utilizado aquí no son específicas para gráficos ligeros. Lo que significa que también puedes usarlos en tus proyectos. Si está interesado en obtener más información sobre nuestro proceso, consulte los siguientes GH #436 y GH #432, que resaltan la reducción de tamaño en la biblioteca. Nuestras pruebas han demostrado que estas técnicas pueden reducir el tamaño de un paquete hasta en un 30% en forma minimizada sin comprimir, y hasta en un 10% en min.gz.

Un agradecimiento especial a nuestra comunidad

TradingView es una comunidad de inversores, traders y programadores. Queremos agradecer a todos nuestros colaboradores que han ayudado con este lanzamiento:

Tenemos más para mostrarte

Solo hemos arañado la superficie con esta publicación sobre las novedades de Lightweight Charts 3.0. Para ver una lista completa de los cambios, le recomendamos que consulte nuestras notas de Github para obtener más detalles e información. Si desea obtener más información sobre cómo Lightweight Charts puede ayudarlo, visite nuestra Biblioteca de gráficos.

Esperamos que hayas disfrutado de esta actualización. Como siempre, continúe enviándonos sus comentarios, sugerencias y comentarios. Es un placer construir para usted.

Look first / Then leap

Abrir gráfico