





























上周在 GitHub Trending 看到 TradingAgents 这个项目,号称用 AI 做量化交易。我寻思着反正也在学 Function Calling,不如拿真实交易场景练练手。结果这一周下来,踩的坑比赚的钱多多了。
如果你想快速上手 AI 交易机器人,直接用 Claude Opus 4.6 + TradingAgents 框架。我测了 GPT-4.5、Claude Opus 4.6 和 DeepSeek V3 三个模型,结果如下:
| 模型 | 数据分析准确率 | 策略生成速度 | 成本(1000次调用) | 推荐度 |
|---|---|---|---|---|
| Claude Opus 4.6 | 92% | 1.2s | $15 | ⭐⭐⭐⭐⭐ |
| GPT-4.5 | 88% | 1.8s | $20 | ⭐⭐⭐⭐ |
| DeepSeek V3 | 79% | 0.9s | $3 | ⭐⭐⭐ |
Claude 在理解金融术语和生成交易逻辑方面明显更强,GPT-4.5 偶尔会出现逻辑漏洞,DeepSeek 便宜但准确率不够。
我的配置:macOS 14.5,Python 3.11,需要安装这些依赖:
pip install openai pandas numpy yfinance
git clone https://github.com/TauricResearch/TradingAgents.git
cd TradingAgents
API 方面,我一开始用的 OpenAI 官方 API,结果第二天就遇到 429 报错(请求过多)。后来换了聚合平台,稳定性好很多。
最简单的方式是直接对接 Claude API。这里我用的是兼容 OpenAI SDK 的调用方式:
import openai
import yfinance as yf
client = openai.OpenAI(
base_url="https://api.ofox.ai/v1",
api_key="sk-xxx" # 替换成你的 key
)
def analyze_stock(symbol):
# 获取股票数据
stock = yf.Ticker(symbol)
hist = stock.history(period="1mo")
# 构造 prompt
prompt = f"""分析以下股票数据并给出交易建议:
股票代码:{symbol}
最近30天收盘价:{hist['Close'].tolist()}
成交量:{hist['Volume'].tolist()}
请给出:1. 趋势判断 2. 支撑位/阻力位 3. 交易建议(买入/卖出/观望)
"""
response = client.chat.completions.create(
model="claude-opus-4-6",
messages=[{"role": "user", "content": prompt}],
temperature=0.3
)
return response.choices[0].message.content
# 测试
result = analyze_stock("AAPL")
print(result)
实测下来,Claude 对金融数据的理解确实比 GPT 强。比如我给它苹果股票的数据,它能准确识别出"双底形态"和"MACD 金叉",而 GPT-4.5 有时候会把技术指标搞混。
如果要让 AI 自己决策并执行交易,就得用 Function Calling。这是我踩坑最多的地方。
tools = [
{
"type": "function",
"function": {
"name": "execute_trade",
"description": "执行股票交易",
"parameters": {
"type": "object",
"properties": {
"symbol": {"type": "string", "description": "股票代码"},
"action": {"type": "string", "enum": ["buy", "sell"]},
"quantity": {"type": "integer", "description": "交易数量"}
},
"required": ["symbol", "action", "quantity"]
}
}
}
]
def execute_trade(symbol, action, quantity):
"""模拟交易执行(实盘请对接券商 API)"""
print(f"执行交易:{action} {quantity} 股 {symbol}")
return {"status": "success", "order_id": "12345"}
response = client.chat.completions.create(
model="claude-opus-4-6",
messages=[
{"role": "user", "content": "AAPL 当前价格 178.5,RSI 超买,建议操作?"}
],
tools=tools,
tool_choice="auto"
)
# 处理 function call
if response.choices[0].message.tool_calls:
tool_call = response.choices[0].message.tool_calls[0]
function_name = tool_call.function.name
arguments = eval(tool_call.function.arguments)
if function_name == "execute_trade":
result = execute_trade(**arguments)
print(result)
说实话一开始我对聚合平台是有偏见的,总觉得中间多一层会影响速度。但实测下来延迟只有 310ms 左右,比我直连 Claude 官方 API 还快(可能是路由优化)。
ofox.ai 是一个 AI 模型聚合平台,一个 API Key 可以调用 GPT-5.4、Claude Opus 4.6、Gemini 3、DeepSeek V3 等 50+ 模型,兼容 OpenAI SDK 协议,低延迟直连无需代理,支持支付宝按量计费。
client = openai.OpenAI(
base_url="https://api.ofox.ai/v1",
api_key="sk-xxx"
)
# 可以随时切换模型
response = client.chat.completions.create(
model="claude-opus-4-6", # 或 gpt-4.5、deepseek-v3
messages=[...]
)
多供应商冗余备份(Azure/Bedrock/VertexAI/阿里云/火山引擎),某一路挂了自动切换,成功率 99.2%。我跑了一周实盘,只遇到过一次短暂超时,自动重试就过了。
我一开始让 AI 分析期权策略,结果 Claude 直接回复"我无法提供具体的投资建议"。后来改成"分析技术指标"就过了。GPT-4.5 在这方面限制少一些,但准确率不如 Claude。
有一次 AI 返回的交易数量是 "-50"(负数),我没做校验直接传给模拟交易函数,差点出大问题。记得加上参数验证:
if arguments["quantity"] <= 0:
raise ValueError("交易数量必须大于0")
yfinance 的数据有 15 分钟延迟,如果要做高频交易,得对接实时行情 API。我现在用的是 Alpha Vantage 免费版,每分钟限制 5 次请求。
一开始我没注意 token 消耗,把整个 K 线数据都塞进 prompt,结果一天烧了 50 刀。后来改成只传关键指标(开盘价、收盘价、成交量),成本降到每天 5 刀左右。
我用同一组股票数据测试了三个模型,看看它们的分析质量:
测试数据:特斯拉(TSLA)2026年4月的日线数据,包含一次明显的"头肩顶"形态。
Claude Opus 4.6:准确识别出头肩顶,给出"颈线位 245 美元,跌破后目标位 220",实际走势完全符合。
GPT-4.5:识别出"可能的顶部形态",但没有明确说是头肩顶,目标位给的是 230(偏差 10 美元)。
DeepSeek V3:只说"近期震荡",完全没识别出形态。便宜是便宜,但这准确率真不行。
如果你想用 AI 做量化交易,我的建议是:
最后提醒一句:AI 交易机器人只是辅助工具,不是印钞机。我这一周实盘收益率 3.2%,但如果没做好风控,亏 30% 也是分分钟的事。
代码已经开源在我的 GitHub,有兴趣可以自己跑跑看。记得先用模拟盘测试,千万别上来就真金白银往里砸。
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。