一、前言
TradingView 是一款一款专业级的行业产品,提供超多专业的工具,供专业的投资者和分析师使用,项目本身是免费的,但并不开源,官方提供了托管在 Github 上的私有库,开发者只需向官方提交一些必要的信息,就可以获取到访问权限。
相比Echart这种常用图表库,TradingView上手难度比较大,一些专业的概念确实让人看得迷糊,这里就不讲概念了,中文文档可以看这里。最近刚好用到这个图表库,这里主要在此记录一下。
二、优化
1、实时数据量巨大时候,websocket会频繁向客户端数据,避免组件不断setSstate(),应该把操作合并成一次更新。可以建立一个缓冲带,把 WebSocket 推送过来的数据缓存到一个数组里,每隔固定时间间隔去检查数组是否有内容,有就通知主线程更新,没有就不做操作。
2、首次请求数据,在选定周期内做分段处理,左右滑动再重新获取;
3、因为数据量较大,socket最好用二进制的方式传输数据,数据大小可以减少30%左右;
4、频繁切换交易对对时候记得即时把取消上一个交易对的订阅;
5、解决第一次加载k线板块散跳白屏。
三、部分代码
部分代码传到了github上。