用途:帮助在 @alpacahq/alpaca-trade-api TypeScript SDK 上集成与开发,覆盖 Alpaca 交易 API 与行情 API。该资料是心智模型与惯用法指引,不是完整 API 清单;具体方法名、参数与响应字段需查阅包 README 的 API reference 或源码。
主要能力:客户端为两层门面,通过 .trading 与 .marketData 命名空间访问。生成的 REST 方法始终可用,如 alpaca.trading.assets.getV2Assets();其上叠加订单构建器、归一化行情访问器、分页与工作流辅助。行情归一化访问器与流式推送返回相同的 Bar/Trade/Quote 类型,便于 REST 回填后接实时更新。
使用方式:用 new Alpaca({ keyId, secret, paper: true }) 初始化,凭据可来自 APCA_API_KEY_ID、APCA_API_SECRET_KEY、APCA_API_OAUTH_TOKEN。不要传单个 apiKey 字符串;OAuth 用 accessToken,或 auth.apiKeyAuth({ keyId, secret })。金额与数量为数字字符串,用 values 辅助转换;时间周期用 TimeFrame 构建。订单优先用 alpaca.trading.orders 的构建器,并始终设置唯一 clientOrderId 且持久化,不要重试下单 POST。分页用 iterate*/collect*,不要手动传 page token。错误为类型化 ApiError 及子类,需记录 err.requestId。
适用场景:交易机器人、行情回填与实时订阅、订单管理、单元测试(@alpacahq/alpaca-trade-api/testing 提供无网络 mock)。
限制:OAuth-only 客户端无法开 WebSocket;crypto 与 news 流仅生产环境;边缘/浏览器运行时自动解析为 REST-only 构建,流式不可用;同一进程避免同时 import 与 require 以免 instanceof 失效。具体收费、价格与平台信息暂未提供。