之前我给看海量化加了 CLI 命令行模式——不用打开 GUI,敲一行 kh run xxx.kh 就能跑回测,方便写脚本、跑批、对接 AI 编程助手。
过去一段时间,我被问得最多的一句话是:
"看海量化能不能在 Linux 上跑?我有一台云服务器闲着……"
从 v3.3.1 起,答案是肯定的。 看海量化的 CLI 模式正式原生支持 Linux,可以装到云服务器、装到 Docker 容器、装到 WSL2,跟 Windows 桌面端用同一套配置文件、同一份策略代码。
这篇文章就讲清楚两件事:为什么要做 Linux 兼容,以及你拿到之后怎么用起来。
适用版本:v3.3.1 及以上。Windows GUI 用户使用方式不变,不受影响。
图 1 khQuant支持了GUI界面和Linux双模式
一、为什么要把看海量化搬到 Linux
先说明一点:Windows 端依旧是看海量化的主场,GUI、内嵌 VSCode 调试这些核心体验都在 Windows 上。这次做 Linux 兼容,不是替代 Windows,而是给大家多一个选项——把应用场景再往外拓一圈。
具体多了哪些场景:
1.1 接入"小龙虾"等 Linux 部署的开源工具链
很多朋友手里都有部署在 Linux 的开源量化工具——比如最近在量化圈传得很广的"小龙虾"、Hermes等,它们的服务端、调度器很多都跑在 Linux 上。看海量化打通 Linux 之后,可以直接和这些工具同环境部署,互相调用更顺手。我自己后续也会做一件事:让用户在小龙虾里通过自然语言对话直接触发看海回测——这件事的前提就是看海要先能跑在 Linux 上。
下边是在openclaw上运行回测的演示。关于如何在龙虾、Hermes中部署使用khQuant,我将在下一篇文章讲解。
图 2 khQuant在小龙虾中调用,自动化进行回测
1.2 云服务器跑批
晚上挂个云服务器跑 200 组参数寻优,第二天早上喝着咖啡看结果——这是做量化研究的人都向往的工作流。Linux 云主机便宜、稳定、不弹更新窗口,跑批的天然主场。
1.3 定时任务
crontab 一行:
30 16 * * 1-5 kh data download --source baostock --pool hs300
每个交易日 16:30 自动下载沪深 300 日线,写一行就完事,可维护性比图形化任务计划程序好得多。
二、Linux 版能做什么、不能做什么
跟 Windows 端相比,Linux 端的差别其实只有两条:
总结一句:在 Linux 端,除了用不了 miniQMT 数据源、没有 GUI 界面这两点之外,其余功能通过 CLI 模式使用起来和 Windows 端没什么区别。两端共用同一份 .kh 配置文件无缝切换,策略代码不需要改——Windows 端继续做研究和实盘主场,Linux 端按需挂上去跑长时间回测、定时任务、AI 辅助即可。
图 3 两端无缝切换
往下看安装。
三、两种安装方式:pipx 和Docker
Linux 部署官方提供两种方式,按场景挑就行:
- 方式 A:pipx——会
pip install 就会用,pipx 自带虚拟环境管依赖、升级卸载干净,适合个人开发机或单台云主机; - 方式 B:Docker——一份镜像批量分发,环境隔离最彻底,适合多机部署、CI/CD 或想随时
docker rm 重来的场景。
只想在自己的笔记本/单台云主机上把它跑起来,首选 pipx;要批量部署或彻底隔离风险,选 Docker。
四、私有库的 GitHub 认证(一次性配置)
这一节面向 v3.3 内测群的朋友:你们都已经被拉进项目的 GitHub 私有库 khscience/CSkhQuant,所有下载和安装步骤都依赖一次性的 GitHub 认证。还没进群的朋友可以先看后面的「内测渠道与公开版本」一节。
CSkhQuant 是私有仓库,所以所有下载操作之前,本机必须先认证 GitHub。这是 Linux 部署最容易踩的第一个坑——直接 pipx install <release-url> 会得到一个误导性的 404 Not Found,让人以为文件丢了,其实是没认证。
最省事的方式是用官方 gh CLI,一次配好,后续 gh release download、git clone 私有库都不需要再输密码:
sudo apt install -y ghgh auth login
按提示选 GitHub.com → HTTPS → Login with a web browser,在本机浏览器里访问 github.com/login/device 把 8 位 one-time code 粘进去授权即可。即使是纯命令行的云服务器,这步也能完成(code 在哪台机器的浏览器输都行)。
如果是 CI/CD 或纯 headless 环境用不了浏览器,改用 Personal Access Token(export GITHUB_TOKEN=ghp_xxx);详细步骤见随仓库附带的部署教程,这里不展开。
验证认证是否就绪:
gh auth status
看到 ✓ Logged in to github.com account your-username 就 OK 了。
图 4 登录认证过程
五、安装:pipx 三步、Docker 三步
5.1 方式 A:pipx 安装(推荐)
sudo apt install -y pipxpipx ensurepath # 把 ~/.local/bin 加到 PATHgh release download v3.3.1 --repo khscience/CSkhQuant # 下载 release 资产pipx install ./khquant-3.3.1-py3-none-any.whl # 安装exec$SHELL -l # 让 PATH 立即生效kh version # 验证
pipx 会自动建一个独立虚拟环境,把 pandas、numpy、duckdb、baostock、tushare 这些依赖一起装进去,跟系统 Python 完全隔离,升级卸载都很干净。
注意:pipx ensurepath 是新装 pipx 用户最容易漏的一步。漏掉它会出现 kh: command not found,因为 ~/.local/bin 还没加进 PATH。
图 5 使用pipx安装流程
5.2 方式 B:Docker 安装
gh release download v3.3.1 --repo khscience/CSkhQuant -p 'khquant-docker-*.tar.gz'docker load -i khquant-docker-3.3.1.tar.gzdocker run --rm khquant:3.3.1 version # 验证
容器是无状态的,配置和数据必须挂卷出来才不会随容器销毁。日常给 docker run 写一个 alias,把 ~/khquant 和 ~/.khquant 两个目录映射进去之后,用法就跟 pipx 完全一样:kh init、kh run xxx.kh。具体挂卷命令在仓库附带的部署文档里。
六、首次使用三连:init → data → run
不管你用 pipx 还是 Docker,跑通第一个回测就这三步。
6.1 kh init — 5 秒交互式配置
kh init
5 个问题全部回车走默认值即可:数据源 baostock、数据目录 ~/khquant/data、策略目录 ~/khquant/strategies、回测结果目录 ~/khquant/backtest_results、日志目录 ~/khquant/logs。
v3.3.1 的一个改进:以前要等到第一次 kh run 时才会发现数据目录不存在,然后误 fallback 到 xtdata(在 Linux 上必然失败)。新版在 init 时就把目录建好,杜绝了这个坑。
图 6 完整展示 kh init 的 5 个交互
6.2 kh data download — 准备历史数据
Linux 上没有 xtdata,第一步要先用 BaoStock 把日线数据拉到本地 DuckDB,例如:
kh data download --source baostock --stocks 000001.SZ --period 1d --start 20240101
下载完成可以用 kh data list / kh data info 检查;具体股票池、周期、增量更新等用法都收录在官网 CLI 教程里。
6.3 kh run — 跑通第一个回测
环境就绪后,第一个回测怎么跑、报告怎么看,请跟着官网 CLI 教程的「5 分钟上手流程」一步步做:
👉 KhQuant CLI 完整指南 · § 5 分钟上手流程:
https://khsci.com/khQuant/cli
里面包含:选哪个内置示例策略、需要先下哪段数据、kh run 怎么跟参数、--report 在无 GUI 环境下怎么看 HTML 报告等全部细节,无论 Windows 还是 Linux 都通用。本文不重复粘贴具体命令,避免和官网教程脱节。
跑通之后,整个流程从 kh init 到第一份报告生成,5 分钟以内可以走完。
图 7 在Linux中执行回测的输出记录
图 8 输出报告
七、内测渠道与公开版本
包含 Linux 兼容支持及完整 CLI 功能的最新版本已经上线。内测资格目前只对通过作者推荐渠道开通 miniQMT(开通免费)的朋友开放。加入内测群的福利:
- 版本领先体验:永远比公开发布版领先一个大功能版本;
如果感兴趣,请关注公众号"看海的城堡",在公众号页面下方点击相应标签即可获取开户方式,开通后联系作者即可加入。
公开版本包含回测历史管理等绝大部分核心功能,可在官网免费下载安装包和获取全部开源代码:
官网地址:https://khsci.com/khQuant/