适用于 E*Trade 交易策略的 AI 原生运行环境
在 Cursor、Claude Code 或任何 AI IDE 中编写策略。从 GitHub 部署至托管云端运行环境,享有原生 MCP 控制、日志和区域选择功能。
第 01 部分 · 一览
一览
- 经纪商
- E*TRADE Securities LLC
- 经纪商类型
- 受美国监管的全功能券商(自 2020 年 10 月起为 Morgan Stanley 子公司)
- 资产类别
- 美股、美股期权、美国期货、债券、ETF、共同基金
- 资产覆盖范围
- 美股(NYSE、NASDAQ、ARCA、BATS、IEX 上市股票)、美国上市期权(OCC 清算的股票和指数期权,单腿及多腿组合)、通过 Power E*TRADE Pro 交易的美国期货、债券(国债、企业债、地方政府债)、ETF、共同基金。不支持直接进行加密货币交易。
- 运行环境模式
- 容器化策略运行环境
- 部署源
- GitHub
- 编程语言
- 任何可在容器中运行的语言
- 常用集成
- 支持 OAuth 1.0a 的 E*TRADE REST API、pyetrade(社区 Python 库)、带 HMAC-SHA1 签名的原生 HTTP 客户端、自定义连接器
- AI 工作流集成
- 适用于 Cursor、Claude Code、GitHub Copilot 及 CLI 智能体的 MCP 控制面板
- TradingHost 角色
- 运行环境、部署、日志、健康检查、区域选择、MCP 控制
- E*TRADE 职责
- 券商账户、API 接入、行情数据、执行场所、托管、清算、税务申报、保证金管理
- 监管机构
- E*TRADE Securities LLC:SEC 和 FINRA 注册经纪商-交易商 (CRD 8163)。SIPC 成员。
- 美国零售客户
- 是。提供用于开发的 sandbox 环境。
- 隶属关系
- TradingHost 保持独立,与 E*TRADE Securities LLC 或其自 2020 年 10 月起的母公司 Morgan Stanley 无任何隶属关系。
第 02 部分 · E*Trade 提供的服务
E*Trade 提供的服务
E*TRADE 提供了用于美股、期权、账户状态和行情数据的 REST API,并使用 OAuth 1.0a 请求签名进行身份验证。期货交易通过 Power E*TRADE Pro(桌面端)进行路由,而不通过 REST API。由于大多数现代券商都使用 OAuth 2.0 承载令牌(bearer token),而 OAuth 1.0a 的签名逻辑更为复杂,因此这是最核心的开发细节。
市场与策略模式
- 通过 REST API 执行的美股系统化策略
- 需满足审批权限等级的美股多腿期权订单
- 退休账户及应税账户的投资组合再平衡
- Power E*TRADE Pro 期货(独立的桌面端平台)
- 在实盘部署前通过 sandbox 验证的策略
- 每次 REST 调用均需进行 OAuth 1.0a 请求签名
API 接口
- 产品接口
- E*TRADE REST API 适用于美股、美股期权、账户状态、行情数据、交易记录和订单历史。期货和外汇通过独立的桌面端平台 Power E*TRADE Pro 处理;REST API 目前不对零售用户开放期货下单接口。sandbox 端点与生产环境的接口结构完全一致。
- 连接方式
- 通过 HTTPS REST 请求 api.etrade.com(生产环境)或 apisb.etrade.com(sandbox 环境)。所有请求均需按照 OAuth 1.0a 进行 HMAC-SHA1 签名;access token 有效期较短,需要自动化的重新授权流程。
- 身份验证
- 采用带请求签名的 OAuth 1.0a。consumer key 和 consumer secret 通过 E*TRADE 开发者网站颁发;用户通过 three-legged OAuth 流程对应用进行 E*TRADE 账户授权。每个请求都必须使用 HMAC-SHA1 进行签名;该认证流程明显比新一代券商所使用的 OAuth 2.0 承载令牌(bearer-token)模式更为繁琐。
具体细节请参考 E*Trade
具体端点、速率限制、期权审批要求以及行情数据权限请参阅 E*Trade 的开发者文档。
第 03 部分 · 使用 AI 构建
使用 AI 构建您的 E*Trade 策略
选择一种集成方式,Fork 一个起步模板,然后在 AI IDE 中编写您的策略。Cursor、Claude Code、GitHub Copilot 以及基于 CLI 的 AI Agent 均可配合相同的原生 GitHub 部署循环。
原生 E*Trade REST
直接向 api.etrade.com(生产环境)或 apisb.etrade.com(sandbox 环境)发起 HTTPS REST 请求。使用 HMAC-SHA1 进行 OAuth 1.0a 请求签名。
pyetrade
社区 Python 封装库,负责处理 OAuth 1.0a 签名流程,并将 REST 端点封装为 Python 方法。
框架适配器
NautilusTrader 提供社区 E*Trade 适配器;其支持范围和成熟度因版本而异。
自定义连接器
自行开发实现。OAuth 1.0a 签名逻辑是最需要准确实现的部分;REST 端点本身则相对简单直接。
E*Trade 产品的库与框架支持情况
OAuth 1.0a 签名流程是最具特征的对接细节;对于 Python 项目,pyetrade 可以处理该流程。由于 REST API 中不包含期货接口,因此矩阵中的期货单元格均为“no”。
✓ 表示根据库或接口文档确认支持。“no” 表示该接口未开放该资产类别;“check adapter” 表示支持情况因版本而异。
TradingHost 不强求使用特定库。它直接运行您的项目。
使用 AI 编写
OAuth 1.0a 签名流程是 E*Trade 对接中最值得做成模板复用的部分。一旦搞定了签名辅助函数,REST 端点本身就非常简单,AI IDE 可以快速搭建好脚手架。TradingHost 的 MCP 控制面板则为可观测性和运行环境管理实现了闭环。
Section 04 · 在 TradingHost 上运行
在 TradingHost 上运行您的代码
E*Trade 提供经纪商账户、API 接入和执行场所。TradingHost 则提供生产环境,用于运行您连接至 E*Trade 的策略。
您无需在笔记本电脑、台式机、通用 VPS 或手动配置的服务器上运行策略代码,只需从 GitHub 部署到 TradingHost 托管的容器运行环境中即可。
您
- 您的代码库包含您的代码。
- 您的部署定义了其运行方式。
- 您的策略连接至 E*Trade。
TradingHost
- 保障运行环境持续在线。
- 呈现日志与健康检查。
- 提供区域选择。
- 提供受控的部署面板。
部署流程
- 步骤 01
连接 GitHub
授权 TradingHost 访问您的 GitHub 账户。
- 步骤 02
关联代码库或从模板开始
将 TradingHost 指向您现有的 E*Trade 策略仓库,或者 fork 一个 pyetrade 起步项目,以获取已内置 OAuth 1.0a 签名辅助函数的可用基线。
- 步骤 03
部署到 TradingHost 容器中
选择一个区域(对于美股和期权撮合引擎,US-East 是自然之选),提供您的 E*Trade consumer key、consumer secret 和 access tokens 作为环境变量,然后进行部署。TradingHost 会在托管的 Kubernetes 基础设施上运行您的策略。
- 步骤 04
监控日志与健康状况
通过 TradingHost 控制台实时查看日志、健康状况和运行状态。您也可以在任何 AI IDE 中通过 MCP 访问相同的控制面板。交易执行始终保持在策略代码路径上,而不通过 MCP。
- 步骤 05
更新与重新部署
将更改推送至您的 GitHub 主分支,TradingHost 将自动重新部署。
Section 05 · 运维说明
E*Trade 运维说明
在容器化云端运行环境中实际运行 E*Trade 策略时需要注意的坑。OAuth 1.0a 签名流程是核心的开发痛点。以下所有陈述均引用或改写自 E*Trade 的官方开发者文档。
01 · OAuth 1.0a
每次 REST 调用均需进行请求签名
E*TRADE 的 REST API 使用 OAuth 1.0a 进行身份验证,这要求对每个请求都进行 HMAC-SHA1 签名。这明显比新一代券商所使用的 OAuth 2.0 承载令牌(bearer token)更为繁琐。pyetrade 及类似的社区库会在内部处理签名;自定义连接器则需要从一开始就编写签名辅助函数。此外,令牌轮换也需要通过 three-legged OAuth 重新授权流程,而无法通过简单的刷新令牌(refresh-token)进行交换。
02 · Sandbox
apisb.etrade.com 镜像了 api.etrade.com 的端点结构
E*TRADE 的 sandbox 使用主机名 apisb.etrade.com,其端点路径与生产环境的 api.etrade.com 完全一致。每个环境的 consumer credentials 和 access tokens 都是独立的。将策略从 sandbox 升级到实盘只需更换主机名和凭据,策略代码无需更改。
03 · 应用审批
生产环境应用访问权限需经审批
E*TRADE 免费发放 sandbox 的 consumer credentials;而生产环境凭据则需要通过开发者网站进行单独的应用审核。在部署实盘前,请预留对接准备时间;仅限 sandbox 的部署可以无限期运行。
04 · 通过 Power E*TRADE Pro 交易期货
REST API 未向零售用户开放期货下单功能
E*TRADE 的期货交易通过 Power E*TRADE Pro 进行,这是一个独立的桌面平台。E*TRADE REST API 未向零售用户开放期货下单功能。需要交易期货的策略需要使用其他券商(如 IBKR、TradeStation、Tradier),或者需要通过独立主机上的 Power E*TRADE Pro 桌面端进行桥接。
05 · 期权审批
期权审批按账户进行且分级
在 E*TRADE 进行期权交易需要分级审批。审批等级决定了订单端点接受哪些策略;超出审批等级的订单将在券商端被拒绝。请根据您已获批的等级设计策略,或在部署前向 E*TRADE 申请升级。
Section 06 · 适用对象
适用对象
TradingHost E*Trade 运行环境最适合:
- 在 AI IDE(如 Cursor、Claude Code)中构建策略的开发者
- 美股系统化策略编写者
- 多腿期权策略自动化开发者
- 长周期投资组合再平衡程序
- 正在转向云端托管自动化的现有 E*Trade 账户持有人
连接 GitHub 并创建您的首个策略是免费的。
Section 08 · 常见问题
常见问题
没有。TradingHost 是独立的,与 E*TRADE Securities LLC 或其自 2020 年 10 月起的主母公司 Morgan Stanley 均无隶属关系。
不是。TradingHost 是交易策略代码的运行环境。E*TRADE Securities LLC 是经纪交易商(FINRA CRD 8163)及 SIPC 成员。您的账户、资产托管、市场接入、结算和税务申报均由 E*Trade 负责。
不会。您的策略代码会根据您自己的逻辑、账户权限和集成方式连接到 E*Trade 并发送订单指令。TradingHost 仅提供运行该代码的运行环境。
不提供。E*Trade API 访问权限由 E*Trade 提供。您需要自行负责您的 E*Trade 账户、应用注册、OAuth 令牌以及遵守 E*Trade 的条款。
无法通过 REST API 进行。E*Trade 的期货交易通过 Power E*TRADE Pro 进行,这是一个独立的桌面平台。如果您的策略需要交易期货,请考虑使用 IBKR、TradeStation 或 Tradier,它们都通过其 REST API 开放了期货交易功能。
可以,但须符合 E*Trade 的期权审批要求。审批等级决定了券商接受哪些策略;TradingHost 无法绕过该审批。
E*Trade 使用带有 HMAC-SHA1 请求签名的 OAuth 1.0a,这比 Alpaca、Tradier、Schwab、TradeStation 和 Tastytrade 使用的 OAuth 2.0 承载令牌(bearer-token)模式更为陈旧。每个请求都必须进行签名,且令牌轮换需要通过 three-legged OAuth 流程。像 pyetrade 这样的社区库可以处理这一过程;自定义连接器则需要从一开始就配备签名辅助工具。
任何可以在容器中运行的语言。E*Trade 的 API 是 HTTPS REST,因此任何支持 HMAC-SHA1 签名的 HTTP 客户端都可以与其通信。pyetrade 是目前维护最活跃的社区 Python 封装库。
在 developer.etrade.com 注册一个 sandbox 应用以获取 consumer credentials。运行一次 three-legged OAuth 流程以获取 access tokens。针对 sandbox 进行开发。准备就绪后,申请生产环境凭据(需单独审批)。连接您的 GitHub 仓库,将其关联到 TradingHost,并在部署时将凭据配置在 TradingHost Secrets 中。
保存在您通过 GitHub 控制的 secrets 工作流中。TradingHost 在运行时通过 GitHub 仓库 secrets、环境 secrets 或您自己认可的密钥管理流程读取它们。TradingHost 不需要托管您的 consumer key、consumer secret 或 access tokens。请参阅平台 secrets。
不需要。策略绝不需要提现或资金划转权限。
可以。TradingHost 支持针对 AI IDE(包括 Cursor、Claude Code、GitHub Copilot 以及基于 CLI 的 AI agent)的基于 MCP 的控制。MCP 是一个控制和可观测性界面,而非交易执行路径。
不会。PDT 规则(FINRA Rule 4210)由 E*Trade 强制执行,而非 TradingHost。资产低于 $25,000 的保证金账户在进行日内交易时会受到 PDT 限制。
不会。您的 1099 表格在年底由 E*Trade 提供,而非 TradingHost。
不享有。SIPC 为您的 E*Trade 证券账户提供最高 $500,000 的保障(包括 $250,000 的现金)。TradingHost 的运行环境不享有 SIPC 保险,因为 TradingHost 不是券商。
TradingHost 在 EU 和 US-East 区域运行。对于美股和期权撮合引擎,US-East 是自然之选。请参见区域页面。
不支持。TradingHost 专注于生产环境的运行与部署。回测应当在您的研究技术栈、框架或 AlgoBuilder 中进行。