对于大多数VeighNa用户,推荐使用TDengine 3.0版本的Docker容器镜像来安装配置时序数据库的服务端程序。对于Linux命令操作熟悉的同学,也可以参考这篇文档中的说明在WSL或者Linux服务器上直接安装,本文中就不做详细介绍。
首先需要确保Windows系统中已经安装好了Docker Desktop软件,可以在Docker官网的该页面找到下载链接:
https://www.docker.com/products/docker-desktop/
点击页面中部蓝色按钮的【Download Docker Desktop】,在弹出的下拉框中选择【Download for Windows - AMD64】,下载完成后运行安装程序,基本一路傻瓜安装即可。
安装完成后启动Docker Desktop程序,点击窗口右上角的齿轮按钮进入全局配置页面,如下图所示:
勾选【General】下的【Start Docker Desktop when you sign in to your computer】后,点击右下角的【Apply & restart】按钮,将Docker Desktop设置为随操作系统启动(配合后面的容器自动重启参数,实现TDengine的后台服务式运行)。
完成后可以关闭Docker Desktop窗口,此时软件不会退出,而是最小化到系统右下角的托盘栏中。随后打开PowerShell或者其他命令行工具(文中使用的是Windows Terminal中运行的PowerShell),运行命令:
docker
docker pull tdengine/tdengine:latest
docker run -d `
-v C:/my_tdengine/data:/var/lib/taos `
-v C:/my_tdengine/log:/var/log/taos `
-p 6030:6030 `
-p 6041:6041 `
-p 6043:6043 `
-p 6044-6049:6044-6049 `
-p 6044-6045:6044-6045/udp `
-p 6060:6060 `
--restart=always `
tdengine/tdengine
docker ps
/var/lib/taos,对应的是TDengine的数据存储路径; /var/log/taos,对应的是TDengine的日志输出路径。
6030,主要用于应用程序(如VeighNa)连接TDengine; 6041,提供数据库管理终端(如DBeaver)连接TDengine; 其他端口提供更加进阶的功能,这里可以忽略。
database.name: "taos" database.database: "vnpy"
database.host: "127.0.0.1"
database.port: 6030
database.user: "root"
database.password: "taosdata"
重启后,即可体验VeighNa Trader连接TDengine时序数据库的高能性能数据读写。
VeighNa Docke容器镜像升级
本次3.9.4更新中对VeighNa Docker容器镜像的功能再次进行了升级,整合了广受欢迎的VeighNa Station投研一体化终端,为Linux和Mac系统用户提供和VeighNa Studio高度一致的体验。
安装好Docker后,在终端(如bash中)运行下述命令:
docker run \
-e DISPLAY=$DISPLAY \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-v /mnt/c/veighna/home:/home \
veighna/veighna:3.9.4 \
python3 -m veighna_station
即可启动VeighNa Station,同时【交易】页面下的【交易接口】和【功能模块】也都对Docker容器环境进行了适配,如下图所示:
上述命令中的"-v /mnt/c/veighna/home:/home",用于将宿主机中的"/mnt/c/veighna/home"文件夹,挂载到Docker容器中的"/home"路径,作为VeighNa运行时的数据存储和日志输出,实际使用时可以根据自己的需求进行调整。
CHANGELOG
新增
vnpy_tora增加登录时终端动态密钥支持
vnpy_taos升级支持TDengine的3.0版本
调整
vnpy_xt行情接口增加实时行情中的涨跌停价字段
vnpy_taos移除不必要的时区转换提高性能
vnpy_dolphindb优化写入大量数据时候的内存占用
vnpy_portfoliostrategy简化回测引擎的calculate_pnl每日盈亏计算函数
vnpy_tap/vnpy_tts升级pybind11封装工具库的版本,支持Python 3.12编译
EmailEngine发送邮件失败后,捕捉异常并输出日志
修复
vnpy_optionmaster移除不必要的价格缓存代码
vnpy_dolphindb修复保存overview的时区不正确问题