Schwab API 使用教程
项目介绍
Schwab API 是一个用于在 Charles Schwab 平台上进行自动化交易的 Python 库。该项目不是 Charles Schwab 的官方 API 封装,但其功能可能会随着 Schwab 的更新而变化。截至2024年6月,该 API 仍然按预期工作。通过使用无头浏览器自动化登录过程,该包支持购买和销售证券的程序化操作。
项目快速启动
安装
首先,通过 pip 安装 Schwab API 库,并下载安装 Playwright 二进制文件:
pip install schwab-api
python -m playwright install
设置 TOTP
为了登录 Schwab 而无需每次都进行 SMS 验证,您需要创建一个认证令牌(TOTP)并将其附加到您的 Schwab 账户。
from schwab_api import generate_totp
symantec_id, totp_secret = generate_totp()
print("Your symantec ID is: " + symantec_id)
print("Your TOTP secret is: " + totp_secret)
应用案例和最佳实践
自动化交易
使用 Schwab API,您可以编写脚本来自动执行交易策略,例如定时购买或出售特定股票。
from schwab_api import SchwabAPI
api = SchwabAPI(symantec_id, totp_secret)
api.login()
api.place_order('AAPL', 'buy', 100)
api.logout()
实时监控
您可以编写脚本来实时监控股票价格,并在达到特定阈值时执行交易。
import time
while True:
price = api.get_quote('AAPL')
if price > 150:
api.place_order('AAPL', 'sell', 100)
time.sleep(60)
典型生态项目
Playwright
Playwright 是一个用于自动化浏览器操作的库,Schwab API 使用它来实现无头浏览器的自动化登录。
Google Authenticator
Google Authenticator 是一个用于生成 TOTP 令牌的应用,Schwab API 使用它来生成和验证 TOTP 密钥。
通过这些工具和库的结合使用,Schwab API 提供了一个强大的平台,用于在 Charles Schwab 上进行自动化交易。