You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Alpaca Trade API获取历史数据时遇endpoint not found错误

解决alpaca_trade_api获取外汇历史数据时的"endpoint not found"错误

错误原因

出现APIError: endpoint not found的核心原因是:你调用了用于股票/ETF的get_bars方法来获取外汇(USD/JPY)数据,但Alpaca为外汇资产提供了专属的数据接口,直接使用get_bars会找不到对应端点。

修复方案

1. 替换为外汇专属数据获取方法

将get_bars替换为get_fx_bars,这是Alpaca专门设计用于获取外汇K线数据的方法。

2. 确认API初始化参数

保持数据API的api_version为"v2",该版本支持外汇数据的查询。

修复后的完整代码

import alpaca_trade_api as tradeapi  
import pandas as pd 

# keys
KEY = "XXX"
SECRET = "XXX"

# parameters
short_sma_period = 50 
long_sma_period = 200 

start_date = "2023-01-01"
end_date = "2023-05-01"
timeframe = '1D' # time frame for historical data 

asset = "USD/JPY"

# urls
data_url = "https://data.alpaca.markets"
paper_trade_url = "https://paper-api.alpaca.markets"

# initialize apis
data_api = tradeapi.REST(key_id=KEY,secret_key=SECRET,base_url=data_url, api_version="v2")
trade_api = tradeapi.REST(key_id=KEY,secret_key=SECRET,base_url=paper_trade_url)

# 获取外汇历史数据,使用get_fx_bars替代get_bars
historical_data = data_api.get_fx_bars(asset, timeframe, start=start_date, end=end_date)

# 可选:转换为DataFrame方便后续处理
df = historical_data.df
print(df.head())

额外注意事项

  • 确保你的Alpaca API密钥已开通外汇数据访问权限,若未开通需在Alpaca后台操作。
  • 查询的时间范围需符合Alpaca外汇数据的历史区间限制,避免超出可查询范围。

内容的提问来源于stack exchange,提问作者Joseph38

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 21:12:27