@deepalpha/cli
v0.0.3
Published
CLI and MCP server for Deep Alpha data and simulated trading APIs
Maintainers
Readme
Deep Alpha CLI
@deepalpha/cli 是 Deep Alpha 的开源命令行查询与模拟炒股工具。
安装
要求 Node.js >= 18。
全局安装:
npm install -g @deepalpha/cli安装后可直接使用:
deep-alpha -h本地开发联调:
npm install
npm link
deep-alpha -h默认地址
默认请求地址:
https://deepalpha.me/deep-alpha-server/api也可以覆盖:
export DEEP_ALPHA_BASE_URL=https://deepalpha.me/deep-alpha-server/api
deep-alpha 股票 基础信息 --base-url https://deepalpha.me/deep-alpha-server/api使用方式
支持三种核心入口:
deep-alpha -h
deep-alpha update
deep-alpha mcp
deep-alpha 模拟炒股
deep-alpha 模拟炒股 <能力> [参数]
deep-alpha <场景>
deep-alpha <场景> <能力> -h含义如下:
deep-alpha -h:查看工具帮助deep-alpha update:从远端配置接口更新本地interfaces.jsondeep-alpha mcp:以 stdio 方式启动 Deep Alpha MCP Serverdeep-alpha 模拟炒股:查看账户、订单、持仓和收益等模拟炒股能力deep-alpha 模拟炒股 <能力> [参数]:调用模拟炒股接口deep-alpha <场景>:查看该场景下的能力列表,输出格式为<名称>: <描述>deep-alpha <场景> <能力> -h:查看该能力的详细说明、输入参数、输出字段deep-alpha <场景> <能力> [查询参数]:直接调用/api/datasource/query
CLI 每天第一次启动时会自动静默执行一次 update,从远端同步本地 interfaces.json。自动更新失败不会阻断当前命令;需要排查时可加 --debug 查看失败原因,也可以继续手动执行 deep-alpha update。
交互式终端每天还会从 npmjs 检查一次 @deepalpha/cli 的最新版本。发现新版本时会给出“现在更新”和“跳过当前版本”两个编号选项;跳过后只有发布更高版本才会再次提示。版本检查和安装失败都不会阻断当前命令。可通过 --registry 或 DEEP_ALPHA_NPM_REGISTRY 覆盖 registry。
默认本地配置文件路径:
~/.config/deep-alpha-cli/interfaces.json配置更新接口默认地址:
https://deepalpha.me/deep-alpha-server/api/docs/interfaces-json也可以覆盖:
export DEEP_ALPHA_INTERFACES_URL=https://deepalpha.me/deep-alpha-server/api/docs/interfaces-json
deep-alpha update --interfaces-url https://deepalpha.me/deep-alpha-server/api/docs/interfaces-jsonAPI Key
调用接口时会自动读取 API Key,优先级如下:
--api-key <key>DEEP_ALPHA_API_KEY环境变量- 本地保存的
~/.config/deep-alpha-cli/auth.json
如果接口返回 401 Unauthorized 且提示 api key is required,CLI 会自动打开权限申请页面:
https://deepalpha.me/deep-alpha/mine#apiKeys随后按提示输入 API Key,CLI 会保存到本地并自动重试当前请求。也可以通过 DEEP_ALPHA_API_KEY_PATH 或 --api-key-path <path> 覆盖本地保存路径。
查询流程
先看场景下有哪些能力:
deep-alpha update
deep-alpha 股票
deep-alpha 基金
deep-alpha 指数再查看某个能力的参数说明:
deep-alpha 股票 每日指标 -h
deep-alpha 股票 基础信息 -h最后执行查询:
deep-alpha 股票 每日指标 --condition ts_code=600519.SH --condition trade_date=20240412
deep-alpha 股票 基础信息 --condition list_status=L --fields ts_code,symbol,name,industry,list_date参数说明
常用参数:
--condition key=value:追加单个查询条件;同一个 key 重复传入时会组成字符串数组,例如--condition tradeDt=20260728 --condition tradeDt=20260729--conditions '{"k":"v"}':直接传 JSON 条件对象key=value:在deep-alpha <场景> <能力>后可直接追加,等价于隐式--condition key=valuets_code/symbol股票代码兼容SZ000001、000001SZ、SZ.000001、000001.SZ,请求时统一转换为000001.SZ(同样支持SH、BJ)--fields a,b,c:指定返回字段,逗号分隔--field a --field b:多次追加返回字段--page '{"page_no":1,"page_size":20}':分页参数--page-no 1 --page-size 10:分页快捷参数,会自动组装到page对象里--order-by '[{"field":"trade_date","direction":"desc"}]':排序参数--debug:在发请求前输出等价的curl命令,方便排查type/code和请求参数--body-file ./payload.json:直接使用完整请求体文件--base-url <url>:覆盖服务地址--interfaces-url <url>:覆盖配置更新接口地址--interfaces-path <path>:覆盖本地interfaces.json路径
示例
查询股票基础信息:
deep-alpha 股票 基础信息 \
--condition list_status=L \
--fields ts_code,symbol,name,industry,list_date \
--page-no 1 \
--page-size 10对应请求体:
{
"type": "tushare",
"code": "stock_basic",
"conditions": {
"list_status": "L"
},
"fields": ["ts_code", "symbol", "name", "industry", "list_date"],
"page": {
"page_no": 1,
"page_size": 10
}
}查看每日指标帮助:
deep-alpha 股票 每日指标 -h查询每日指标:
deep-alpha 股票 每日指标 \
--condition ts_code=600519.SH \
--condition trade_date=20240412 \
--fields ts_code,trade_date,close,pe,pb查询特色数据特征数据:
deep-alpha 特色数据 特征数据查询 \
symbol=000001.SZ \
feature_key=cxt_first_buy_V221126 \
limit=1对应请求体:
{
"type": "proprietary",
"code": "features",
"conditions": {
"symbol": "000001.SZ",
"feature_key": "cxt_first_buy_V221126",
"limit": 1
}
}模拟炒股
查看所有能力及单项帮助:
deep-alpha 模拟炒股
deep-alpha 模拟炒股 创建订单 -h账户操作:
deep-alpha 模拟炒股 查询账户
deep-alpha 模拟炒股 账户入金 --amount 10000.00
deep-alpha 模拟炒股 重置账户 --initial-cash 1000000.00创建限价买单并查询、撤销订单:
deep-alpha 模拟炒股 创建订单 \
--client-order-id cli_20260728_000001 \
--symbol 600519.SH \
--side BUY \
--order-type LIMIT \
--quantity 100 \
--limit-price 1400.00 \
--order-reason "看好长期盈利增长,目标持有至下一次财报"
deep-alpha 模拟炒股 创建订单 \
--client-order-id cli_20260728_000002 \
--symbol 600519.SH \
--side SELL \
--order-type MARKET \
--time-in-force IOC \
--quantity 100 \
--max-slippage-bps 100
deep-alpha 模拟炒股 查询订单详情 --order-id so_xxx
deep-alpha 模拟炒股 撤销订单 \
--order-id so_xxx \
--idempotency-key cancel_20260728_000001查询订单、持仓和收益:
deep-alpha 模拟炒股 查询订单列表 --status ACCEPTED --limit 20
deep-alpha 模拟炒股 查询持仓
deep-alpha 模拟炒股 查询收益 --start-date 2026-07-01 --end-date 2026-07-28
deep-alpha 模拟炒股 查询日收益率曲线 --start-date 2026-07-01 --end-date 2026-07-28金额和价格参数应按十进制字符串传入,不要先转换为低精度浮点数。下单接口返回
ACCEPTED 仅表示服务端已接单;撮合异步执行,应继续查询订单详情直到进入终态。
MCP Server
CLI 内置 MCP Server,可以通过 MCP 客户端安装为 deep-alpha 服务。服务使用 stdio 传输,命令如下:
deep-alpha mcp推荐先设置 API Key:
export DEEP_ALPHA_API_KEY=<your-api-key>MCP 客户端配置示例:
{
"mcpServers": {
"deep-alpha": {
"command": "deep-alpha",
"args": ["mcp"],
"env": {
"DEEP_ALPHA_API_KEY": "<your-api-key>"
}
}
}
}本地开发时也可以直接指向仓库入口:
{
"mcpServers": {
"deep-alpha": {
"command": "node",
"args": ["/path/to/deep-alpha-cli/bin/deep-alpha.js", "mcp"],
"env": {
"DEEP_ALPHA_API_KEY": "<your-api-key>"
}
}
}
}MCP 的 tools/list 会暴露 10 个固定的模拟炒股工具,并读取当前 interfaces.json,把 Deep Alpha
股票接口暴露成 MCP tool。工具名分别采用:
deep_alpha_sim_trading_<operation>
deep_alpha_<type>_<code>如果 type/code 重复或包含特殊字符,CLI 会自动生成可用且唯一的工具名。工具描述里会包含中文场景、能力名称、摘要和原始 type/code。
某个接口 tool 的 tools/call 参数示例:
{
"conditions": {
"list_status": "L"
},
"fields": ["ts_code", "symbol", "name"],
"page": {
"page_no": 1,
"page_size": 10
}
}模拟炒股工具分别覆盖查询账户、入金、重置、创建/撤销/查询订单、持仓、收益和日收益率曲线, 每个工具都提供对应接口的强类型输入 schema。股票数据接口配置仍可用普通 CLI 命令同步:
deep-alpha update开源许可
本项目使用 MIT License。
