@alpacahq/alpaca-trade-api

中文文档
5.0.0发布于 2026/10/01Apache-2.0TypeScriptESM + CJS构建来源已验证近 30 天下载 5.3万

用于阿尔帕卡交易和市场数据API的TypeScript SDK.

中文使用文档
文档目录10 节
  1. 所需资源
  2. 运行时间兼容性
  3. 安装
  4. 快开始
  5. 服务器事件
  6. 文档
  7. 从源头构建
  8. 释放
  9. 支助
  10. 捐款

npm version Forum Slack

@alpacahq/alpaca-trade-api 页面存档备份,存于互联网档案馆

Alpaca 的节点.js 类型SDK 贸易 API 财务报告和审定财务报表 市场数据 API。 。 。 . 两个API都以自己的名字空间生活(trading 编号 : marketData在一个包, 由统一的 Alpaca 有打出错误、恢复力(重试 /) 的客户端 超时/速率限制),发卡辅助器,工学造型器,以及 实时流出.

从3.x升级? 见 移徙指南 (亦见上) 文件站点)——其地图 通用3.x调用及其4.x等同器和船舶的工作流程a 代码 大部分工作都自动化了.

所需资源

  • SDK消费者: 节点.js QQ 20 — REST运输使用平台-全球 fetch, (中文(简体) ), Headers, (中文(简体) ), URL,以及 AbortController.(第18项达到报废 2025年4月; 软件包宣布 engines.node >=20. ) (中文(简体) )
  • 仓库贡献者 : 节点.js 24(见 .nvmrc) (中文(简体) ). 建筑,文件, 生成,然后在节点 24 上发布工具运行; CI 单独执行 将SDK打包到20号节点上,以保留消费者相容地层.
  • 严格节点类型Script项目可能会省略 DOM libs; REST 声明是 便携式,不要求 "dom" 在消费者中 tsconfig。 。 。 .

运行时间兼容性

运行时间REST / 基于获取的SSE网络软件页:1
节点.js >= 20✅✅首要目标.
阿宝✅✅与节点相兼容( N)ws 运行).
德诺✅❌根自动解析器通过 deno 出口条件.
云花岗工人 编号 : workerd✅❌根自动解析到 REST 建筑(workerd 编号 : worker) (中文(简体) ).
Vercel 边缘✅❌根自动解析到 REST 建筑(edge-light) (中文(简体) ).
浏览器✅❌决 定browser) (中文(简体) ). 不建议——见说明.

图例 : QQ 支持 .

  • WebSocket 流媒体仅为节点/ Bun. 这些客户使用节点兼容 流出模块,不会在边缘或浏览器中运行. 关于这些目标 软件包的出口条件透明地解决了根导入到 WebSocket-free REST 构建,所以 REST 和取取基于 SSE 的工作同时 溪流工厂stockStream, (中文(简体) ), stream, ) 加上: submitAndWait 丢出如果 电话 为WebSocket流线,运行于节点或Bun上.
  • 浏览器:技术上可行,但劝阻. 从a直接呼叫阿尔帕卡 浏览器传送您的 APCA_API_SECRET_KEY 给客户的 偏好服务器或 代理( 见 examples/marketdata-backend.ts(中文(简体) ) 而不是在前端代码中嵌入证书.

无害环境管理和CJS模块格式、边缘导出条件以及只使用REST的切入点 在文件网址上记录: 运行时间和模块兼容性。 。 。 .

安装

npm install @alpacahq/alpaca-trade-api

快开始

import { Alpaca } from "@alpacahq/alpaca-trade-api";

const alpaca = new Alpaca({
  keyId: process.env.APCA_API_KEY_ID,
  secret: process.env.APCA_API_SECRET_KEY,
  paper: true, // default; set false for live trading
});

const account = await alpaca.trading.account.getAccount();
const price = await alpaca.marketData.getLatestPrice("AAPL");

const bars = alpaca.marketData.stockStream({ feed: "iex" });
bars.onBar((b) => console.log(b.symbol, b.close));
bars.onConnect(() => bars.subscribeForBars(["AAPL", "MSFT"]));
bars.connect();

服务器事件

外观提供已键入的 ASE 订阅和取消, 重新连接,和 Last-Event-ID 恢复:

const controller = new AbortController();
const activities = await alpaca.trading.subscribeActivities(
  {},
  { signal: controller.signal },
);

try {
  for await (const activity of activities) {
    console.log(activity.activityType, activity.details);
  }
} finally {
  activities.close();
}

公司-行动变异可从 alpaca.marketData.subscribeCorporateActions()。生成的操作时间更长 名称在 trading.events 财务报告和审定财务报表 marketData.corporateActions; 见 流线指南。 。 。 .

文档

这个 文档网站 实值 用于工作流程、惯例和整理的API发现的犬类来源. 安装的类型脚本声明对准确的签名仍然具有权威性 模特们 主要指南:

从源头构建

npm install      # also builds via the `prepare` script
npm run build    # tsup -> dual ESM + CJS in dist/
npm run typecheck
npm run lint
npm test

可运行的示例 examples/。 。 。 . 要预览本地文件站点 :

npm --prefix docs install   # first time only
npm --prefix docs start     # http://localhost:3000/alpaca-trade-api-js/

释放

稳定版本发布于 npm latest dis. 见 变动情况 用于发行笔记.

支助

  • 图书馆/ SDK 问题: 错误、 特性请求或特定问题 类型脚本库 → GitHub 问题。 。 。 .
  • 一般阿尔帕卡支持 & API 讨论 : 账户问题、平台问题、, 或更广泛的 API 专题 阿尔帕卡社区论坛。 。 。 .
  • 黑社区 : 与其他开发者和阿尔帕卡社区聊天 偷懒。 。 。 .

捐款

欢迎捐款。 见 捐款额 用来设置, 生成代码边界、文件工作流程和发布注释常规.

版本与发布记录

@alpacahq/alpaca-trade-api 共发布 59 个版本,首次发布于 2018/12/05;过去 12 个月发布了 10 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
5.0.0latest2026/10/011 个月前
4.0.42026/09/251 个月前
4.0.32026/09/231 个月前
4.0.22026/09/022 个月前
4.0.12026/07/173 个月前
4.0.02026/07/173 个月前

其他发布通道:next → 2.7.0-rc2,alpha → 4.0.0-alpha.3。

关于 @alpacahq/alpaca-trade-api 的常见问题

@alpacahq/alpaca-trade-api 是什么?

用于阿尔帕卡交易和市场数据API的TypeScript SDK.

如何安装 @alpacahq/alpaca-trade-api?

在项目目录运行 npm install @alpacahq/alpaca-trade-api,或使用 pnpm add / yarn add / bun add。

@alpacahq/alpaca-trade-api 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@alpacahq/alpaca-trade-api 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@alpacahq/alpaca-trade-api 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=20。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@alpacahq/alpaca-trade-api 可以商用吗?

@alpacahq/alpaca-trade-api 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@alpacahq/alpaca-trade-api 的下载量有多少?

根据 npm 官方下载统计,@alpacahq/alpaca-trade-api 在 2026/10/06 – 2026/11/04 这 30 天内被下载 53,008 次,日均约 1,767 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@alpacahq/alpaca-trade-api 还在维护吗?

最新版本 5.0.0 发布于 2026/10/01(1 个月前);至今共发布 59 个版本,其中过去 12 个月发布了 10 个;首次发布于 2018/12/05。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。