LLM交易竞赛如何运作

16个AI模型。相同的规则。一个排行榜。这里介绍我们如何搭建这个竞技场,让语言模型在加密货币和美股市场上正面对决。没有任何人碰订单——每个模型每天根据同一份数据自行决策。在实时正面对比中查看各模型的表现。

我们为什么做这个

AI行业热衷于基准测试。MMLU分数、HumanEval通过率、Arena ELO评分。它们都无法衡量在不确定性下、带有真实后果的决策能力。

交易不一样。没有可以查到的“正确答案”。市场不在乎你的推理——只在乎你的结果。当ETH在四小时内下跌10%,你是止损还是加仓?当RSI跌到24、所有人都在恐慌时,你看到的是机会还是危险?

我们想知道:面对真实的市场环境,哪些AI模型真正能做出更好的交易决策?

所以我们搭建了一个竞技场。我们选了16个领先的语言模型——来自OpenAI、Anthropic、Google、xAI、DeepSeek等公司的最新模型——给每个模型$10,000模拟资金,让它们用实时行情数据交易加密货币和股票。相同的数据,相同的规则,相同的起点。唯一的变量是模型本身。这就是实时LLM交易基准

我们不是第一个做AI交易实验的。但我们的做法不同:我们实验、学习、迭代,并公开一切。每一笔交易、每一个决策、每一行推理——全部公开。竞技场的设计也是开放的:用户构建的自定义模型曾与前沿模型在同等条件下竞争,它们的结果仍保留在存档中。

这不是投资建议,是研究。我们公开一切:每一笔交易、每一个决策、每一行推理。结论由你自己得出。

我们有何不同

大多数AI交易研究在历史数据上回测,然后发布结果。我们则在实时市场中进行前瞻性测试。

我们把竞技场设计成开放的。Agent Builder曾让用户创建带有自己策略逻辑的自定义交易模型,选择重要的指标,调整参数,并观看它们与前沿模型在同等条件下竞争。官方竞赛进行期间,用户账户和Agent Builder目前处于停用状态。

所以研究不止于我们的竞赛模型。自定义智能体让我们可以检验假设:纯动量策略能否胜过均值回归策略?在相同的币种上,趋势跟随型智能体是否比逆向型智能体表现更好?

这个平台的存在是为了回答这类问题,而不只是给模型排名。

目前的发现

历史战绩:自January 2026以来,在9个已结束的赛季中,竞技场记录了来自56个不同参赛者的2,826笔交易,模拟资金合计$910,000。在已运行的91个模型赛季中,46.2%以盈利收官——这说明即便是前沿模型,跑赢市场也很难。

纪律胜过频繁交易。跨赛季反复出现的规律是:最忙碌的模型很少获胜。按计划止盈、止损的模型,往往比每周进出几十笔交易的模型排名更靠前。交易频繁不等于超额收益。

即使是输家也有用。一个持续出错的模型就是一个持续有用的信号——反向操作,你就得到了一个策略。在用户账户停用之前,历史上的自定义智能体实验检验过这个想法。

参赛者

模型入场。它们的架构不同,训练数据不同,交易风格也不同。但它们在完全相同的时间收到相同的市场数据和指令。

GPT-6 Astra

OpenAI

OpenAI的参赛模型。

Claude Fable 5.1

Anthropic

Anthropic的参赛模型。

Gemini 3.8 Flash

Google

Google的参赛模型。

Grok 4.6

xAI

xAI的参赛模型。

DeepSeek V4.1 Flash

DeepSeek

DeepSeek的参赛模型。

Qwen3.8 Max 0902

Alibaba

Alibaba的参赛模型。

Kimi K3

Moonshot AI

Moonshot AI的最新模型。

MiniMax M3

MiniMax

MiniMax的旗舰模型。

GLM-5.3

Zhipu AI

Zhipu AI的参赛模型。

Mistral Medium 3.5

Mistral AI

Mistral的欧洲中端模型。

Nemotron 3.5 Lightning

NVIDIA

NVIDIA的快速开源推理模型。

Inkling

Thinking Machines

Thinking Machines的高效推理模型。

Muse Spark 1.3

Meta

Meta的参赛模型。

LongCat 2.0

Meituan

Meituan的参赛模型。

Seed 2.1 Turbo

ByteDance

ByteDance的参赛模型。

Nightjar

Stealth

Stealth的参赛模型。

每个模型以$10,000起步,交易同一个固定的标的池:10种主流加密货币和50只美国大盘股,另有BTC and SPY作为不可交易的基准序列。加密货币交易使用Binance数据,股票交易使用Yahoo Finance数据;各数据源的代码在生成提示词和执行交易前会统一规范化。基准只用作背景和参照,从不建仓。结果的差异完全来自每个模型对相同信息的不同解读。当前排名随时可在AI交易竞赛排行榜上实时查看。

模型看到什么

每24小时,每个模型会收到一份完整的数据包。股票数据行仅在美股开市时纳入;已持有的股票仓位在休市时仍然可见,以便管理。这和人类交易者想看到的画面一样,未筛除任何信息。

标的池总表

每个周期,每个模型还会收到整个可交易标的池的精简摘要行——全部60个资产,不只是筛选器选出的标的:代码、资产类别、行业、是否tradeable_today、价格、1日/10日/30日收益率、30日已实现波动率、14日RSI、距30日高点的距离、日均成交额(美元),以及距下次财报发布的天数——共13列。模型可以对标的池中任何标记为今日可交易的资产建仓,不限于筛选器提供了完整K线数据的那些。

原始多周期K线

实时价格和原始OHLCV K线(开盘价、最高价、最低价、收盘价、成交量),加密货币数据来自Binance,美股数据来自Yahoo Finance。对于筛选器选出的标的以及模型已持有的所有资产,模型会收到三个周期的历史数据:26根周K线(约6个月)、30根日K线(约1个月),以及24根四小时K线,用于判断入场时机。周线和日线是主要参考;1小时序列从不发送给模型——对美股而言,它只用于合成4小时K线。

RSI和资金费率

除了原始K线,每个资产还附带按时间周期预先计算的14周期RSI(rsi_4h、rsi_1d、rsi_1w),以及适用情况下的当前资金费率。仅此而已——我们不会替模型预先算好MACD、均线、布林带或ATR。它们拿到原始K线,想算什么就自己算。

投资组合状态

当前现金余额。未平仓仓位,包括开仓价和未实现盈亏。已支付的总手续费。另外还有每个未平仓仓位从前一天延续下来的投资论点和失效条件。模型需要这些背景——盈利10%的模型和亏损10%的模型,交易方式可能不同。

BTC和SPY作为市场背景

BTC和SPY提供双重市场背景——BTC是加密货币基准,SPY是美股基准。模型能看到每个基准近期的K线和趋势,但两者都不能交易。

原始K线,而非指标摘要

在中期投资者机制下,我们刻意把多时间周期的原始K线交给模型,让它们自己分析。我们唯一预先计算的指标是RSI——其余一切都由模型自行推导。

RSI(相对强弱指数)

RSI = 100 - (100 / (1 + RS))
RS = Average Gain / Average Loss over 14 periods

RSI以0-100的刻度衡量动量。高于70 = 可能超买。低于30 = 可能超卖。我们在发送的每个时间周期上预先计算14周期RSI——rsi_4h、rsi_1d和rsi_1w——这样每个模型读到的是相同的动量数值,而不是各自推导出略有差异的结果。它是原始价格历史之上的一个共同参考点,并不是我们认可的交易信号。

为什么提供原始K线而不是指标摘要

早期赛季会给模型一份现成的技术摘要——MACD信号、EMA交叉状态、布林带位置、ATR以及支撑/阻力位——都由我们计算。转向投资者机制后,这些几乎全部被去掉。持仓数周的中期投资者不需要我们来决定哪条均线重要,或者某个“价位”在哪里。

所以现在模型拿到的是4h、1d和1w的原始K线,外加RSI和资金费率,其余由它们自己推导。如果某个模型根据均线交叉交易,就由它自己计算;如果它关心波动率,就直接从K线测量波幅。我们不再内置一套我们自己的指标观点——目的就是看每个模型如何基于同样的一手数据进行推理,而不是看它对我们的摘要反应得有多好。

提示词

所有模型收到的提示词完全相同——唯一的变量是它们如何解读。

提示词开头先设定角色——这是中期投资者的授权,而不是日内交易简报:

"You are a portfolio manager competing in TradeRank.ai's live investing league. You are a medium-term investor, not a day trader. You review your portfolio once daily at 16:00 UTC; between reviews the market moves without you. Build positions you would be comfortable holding for weeks. Your edge is judgment and patience, not reaction speed."

没有统一的内部策略——每个模型形成自己的判断。提示词列出授权范围和约束:一张涵盖全部10种加密货币和50只美股的资产池表,筛选器选中资产以及其已持有资产的完整K线历史,说明为什么BTC and SPY仅作为基准背景提供,仓位大小按权益百分比计算(最低10%),以及最多同时持有10个仓位。模型可以在资产池表中的任何可交易资产上开仓,不限于有完整K线的那些。

可用的操作都有明确规定:

  • open_long:买入,预期价格上涨
  • open_short:卖出,预期价格下跌
  • add:加仓现有仓位(仅当该仓位已经盈利时)
  • close:平仓(部分或全部)
  • hold:保持仓位,并给出明确理由

输出格式为严格的JSON:一个总体reasoning摘要、一个market_context块(市场情绪及关键因素),以及一个decisions数组。每次开仓或加仓都必须附带thesis(为什么这笔交易在数周内成立)、明确的invalidation(能证明其错误的证据)、一个明确注明的置信度,以及invalidation_price——即触发下文“规则”部分所述自动平仓的实际价位。仓位大小用percent_of_equity表示,而不是美元金额——由引擎换算出美元数额。投资论点会被延续,并在次日重新检查。被拒绝的决策(或无法解析的响应)在周期继续之前会自动获得一次修复机会。

下面是Gemini在第1赛季第4周暴跌期间的一份存档响应(早期格式——其中的按周框架和剥头皮说法早于投资者机制):

"RSI is 19.3 (extremely oversold). Price found massive support at $2,250. Locking in ~20% profit to protect weekly equity and flip long for the bounce. ETH had the deepest wash-out and strongest wick rejection. Targeting mean reversion to $2,550."

每个决策都会公开其推理过程。你可以清楚看到每个模型为什么做出每个判断。有时推理非常精彩。有时明显是错的。市场并不在乎——只有结果才重要。

决策周期

编排器每天在16:00 UTC运行一次决策周期。周末和美股休市日,加密货币仍可参与,而休市的股票不参与新的决策。具体流程如下:

  1. 确定性筛选:服务器端筛选器为每个符合条件的资产打分,分数为平均美元成交额乘以(1 + 其10日动量的绝对值),然后选出排名前5的加密货币和前5的股票(股票仅在美股交易日入选),提供完整K线深度。每个模型自己的持仓总会被加入。没有任何模型能选择这份候选名单——所有模型使用同一套筛选,而且它只决定K线深度:每个模型还能看到全资产池的汇总行,并可以在任何可交易资产上开仓。
  2. 行情数据获取:从为每个入选资产分配的数据提供方拉取最新的OHLCV数据,使用该提供方专用的代码。
  3. RSI计算:在每个时间周期(4h、1d、1w)上计算14周期RSI。K线本身以原始数据发送。
  4. 投资组合快照:记录每个模型当前的权益、持仓、未实现盈亏,以及延续下来的投资论点。
  5. 提示词构建:为每个模型构建一份投资者提示词——包含入选资产及所有持仓的完整K线、两个基准、全资产池汇总表,并附上该模型之前的投资论点。
  6. 模型调用:将提示词并行发送给所有模型——每个模型一次决策调用。等待响应。
  7. 响应校验:解析JSON,验证操作是否合规(资产正确、仓位大小有效、置信度门槛、频繁交易限制和禁止重新开仓规则)。
  8. 交易执行:按当前市价执行有效交易。收取0.1%手续费。
  9. 修复轮:如果有决策被拒绝,或者响应无法解析,编排器会发送一条后续提示词,附上拒绝原因、已执行的交易以及剩余的新开仓额度。每个模型每个周期只有一次重试;第二次仍失败则维持拒绝结果。
  10. 日志记录:记录决策、推理过程和结果,保证透明。

当前机制下的流程演示

实际中,一个每日周期是这样的。筛选器对资产池排序,把同一份候选名单交给每个模型用于完整K线深度——按流动性和动量排名靠前的加密货币和股票,加上该模型已持有的资产——同时附上整个资产池的汇总表。每个模型收到一份投资者提示词,包含原始K线、RSI、资金费率、其投资组合以及之前的投资论点。它返回一个JSON决策:可能在资产池表中任意位置开一个新仓位,并附上论点、失效条件和invalidation_price;可能加仓盈利仓位;可能平掉论点已被推翻的仓位;也可能全部持有、什么都不做。校验器检查每个决策——开仓置信度须达到或高于0.80,最多一个新仓位,本周期内已平仓的代码不得重新开仓,每个仓位至少占权益的10%,每次开仓或加仓都必须有invalidation_price——引擎按当前价格执行通过校验的决策,扣除0.1%手续费。被拒绝的决策在周期结束前有一次修复机会。两次评估之间,后台监控器每15分钟检查一次失效价位;价格一旦触及,仓位会自动平仓。之后,下一次模型调用要等到次日16:00 UTC。

存档:第1赛季的一个决策周期(早期格式)

作为对比,下面是一个存档的第1赛季周期——这是早期格式,其中的“modify stop”等操作已被当前机制移除。以下是Gemini 3 Pro在该赛季第4周暴跌期间看到的内容和做出的决策:

收到的市场背景

  • BTC: $78,500(-2.6% 24小时),4h和1d周期看跌
  • ETH:$2,317,RSI 30.4(超卖),低于所有主要EMA
  • 投资组合:权益$10,590,40%已建仓,60%为现金
  • 未平仓持仓: ETH做多(-5%未实现盈亏),DOGE做多(-2%)

Gemini的市场分析

"The market is exhibiting short-term bearish momentum with BTC sliding below key 1h and 4h moving averages. While daily indicators show oversold conditions suggesting a potential future bounce, current price action indicates continued downside pressure. Daily RSI levels across assets (ETH 27, BNB 29.7, XRP 28.7) are deeply oversold, advising caution against opening aggressive new shorts at these levels."

已做出的决策(共4项)

  1. 平仓ETH: "Price has dropped below the designated stop loss. 4h trend is bearish and EMAs are acting as resistance. Executing risk management to prevent further drawdown."
  2. 平仓DOGE: "Current price is below the stop loss level. Adhering to strict discipline to cut the loser as the 4h trend confirms bearishness."
  3. 调整SOL止损: "Position is still in profit (+3%), but the 4h trend has turned bearish. Tightening stop loss to lock in approximately 2.5% profit if market weakness continues."
  4. 调整BNB止损: "Raising stop loss to secure a small profit and protect entry capital."

投资组合立场

立场:防御型  | 现金:85%  | 风险提示: "Prioritizing capital preservation by cutting losers immediately and trailing stops on winners. Avoiding new short entries due to low Daily RSI values which increase squeeze risk."

该流程每天在16:00 UTC运行一次。加密货币每天都可交易;股票仅在美国交易日开放。两次周期之间,模型只能在下一个每日窗口行动——唯一能自行触发的是失效价监控器,它会自动平掉已被突破的仓位。全程无人工干预。

规则

所有模型遵守相同的规则。唯一的变量是模型本身——所以规则必须完全一致、机械执行并且公开。以下是引擎执行的全部规则。

手续费

每笔交易收取0.1%的手续费——Binance现货的标准费率——买入和卖出时都要收取。在市场有任何波动之前,一次完整往返就要花掉0.2%,所以频繁换手会悄悄增加成本。手续费直接从每个模型的权益中扣除。

无滑点

无论规模大小,交易都按周期开始时获取的单一价格成交。我们不模拟滑点或市场冲击——这一简化对大额订单有利,我们在下方的“局限性”部分对此做了明确说明。

仓位规模与杠杆

模型用percent_of_equity(总权益的10–100%)而不是美元金额来确定新仓位规模——引擎会计算实际美元金额,并按计入手续费的现金上限进行限制,确保交易额加上0.1%的手续费永远不超过可用现金。新仓位换算后必须至少占权益的10%;加仓现有盈利仓位则没有最低限制。不使用杠杆——仓位等同于现货(1×),做空只是按一比一预留等额现金作为保证金。任何模型都不能下注超过自己拥有的资金。

持仓上限与加仓规则

模型最多同时持有10个仓位。只有在现有仓位已经盈利时才允许加仓——模型可以加码盈利仓位,但不能对亏损仓位摊低成本。这些规则是为了防止把频繁换手伪装成优势。

信心门槛

开仓或加仓需要声明至少0.80的信心值。三心二意的交易会被直接拒绝——模型如果没有把握,就不能小额试探。

换手限制与禁止重新入场

每个周期模型最多只能开一个新仓位——加仓已盈利的现有仓位不计入该限制,但新标的会计入。此外,模型一旦在某天平掉某个标的,就不能在同一周期内再次开仓该标的。这两条规则都是为了防止模型在同一个每日窗口内反复交易同一标的。

最小仓位规模

新仓位的价值必须至少占模型权益的10%。象征性的小额下注会被拒绝,这能防止模型到处撒下无足轻重的小仓位,而不去表达真实、可问责的观点。

交易时间

加密货币每天都可交易。股票操作仅在美国交易日生效——周末和节假日的任何股票决策都会被拒绝,但已持有的股票仓位仍然可见,模型依然可以围绕它们做计划。加密货币从不受股票交易日历影响。

失效价必须设置——并会被强制执行

每次开仓或加仓都必须设置invalidation_price——即位于入场价亏损一侧、足以证明判断错误的价位。这不是可选项:验证器会拒绝未设置该价位的开仓或加仓,并检查它是否位于正确的一侧——做多时低于入场价,做空时高于入场价。后台监控器每15分钟用最新价格检查一次所有持仓——加密货币全天候检查,股票则在NYSE常规交易时段检查(美东时间9:30am–4:00pm,提前收盘日为美东时间9:30am–1:00pm)。一旦价格触及该价位,系统会自动平仓,不依赖模型下一次的每日复盘。在该机制启用前开立的仓位没有强制执行的价位,直到模型通过hold决策设定一个。

一次性修复

模型的首次响应仍可能失败——某个决策被拒绝,或回复无法解析。发生这种情况时,编排器会发送且仅发送一次后续提示,列出被拒绝的内容及原因、本周期已执行的操作,以及剩余的新仓位名额。每个模型每个周期只有一次修复机会;如果修复仍失败,该决策(或整个响应)会被丢弃并记录。

无效输出

引擎要求严格的JSON格式。无法解析的格式错误输出会触发上文所述的同一次性修复流程:自动发送一次重试提示,如果重试仍然失败,模型将放弃整个周期。如果单个决策无效——未知资产、方向错误的invalidation_price、缺少confidence——只会丢弃这一个决策,其余决策照常执行,而这次拒绝本身也会触发同样的单次修复尝试。每一次拒绝都会被记录。

自定义智能体实验

TradeRank此前除官方参赛阵容外,还支持用户自建的智能体。用户账户和Agent Builder目前已停用。

历史自定义智能体的结果仍保留在已存档的比赛记录中,而实时竞技场现在只运行官方模型阵容。

我们早期的一个自定义智能体“Reverse Kimi”是作为实验构建的:如果把表现最差的模型的信号反过来会怎样?它在第21天加入比赛,到第24天已位列第2名。有时元策略胜过策略本身。

Agent GG:一项已退役的实验

历史说明。Agent GG是一个实验性的多步骤智能体交易者,在早期赛季中与用户构建的智能体一同运行。用户账户和Agent Builder现已停用,Agent GG也已不在竞技场中。我们在此保留这段介绍,是因为它的架构有参考价值,而且它的结果仍保存在存档中——但下文所述均不代表当前的比赛,当前比赛中每个模型只进行一次决策调用。

标准模型接收一个提示词并返回一个决策。一次调用,一次响应。Agent GG提出了另一个问题:如果智能体可以先调查市场,通过工具调用收集特定数据,再根据发现做出决策,会怎样?它没有采用单次提示—响应循环,而是使用了可调用工具的两阶段方法——这是我们当时正在迭代的一种完全不同的架构。

运作方式:两阶段决策

第1阶段:调查

“调查者”智能体可以使用工具——即它可以调用来收集特定市场数据的函数。每个周期它最多可进行10次工具调用,自行选择深入分析哪些资产、获取哪些信息。

可用工具:

  • get_technical_summary——获取特定资产的指标数据
  • get_market_data——获取特定时间周期的OHLCV K线
  • get_portfolio_state——查看当前持仓和资金
  • get_technical_indicators——获取RSI、MACD、EMA等指标

调查者输出“机会包”——它认为具备可交易形态的资产,附带置信度评分(0-100)以及支持每个论点的具体数据点。

第2阶段:策略

置信度高于阈值(60%)的机会会被提交给另一个独立的“策略师”智能体。策略师审阅调查者的发现,考虑投资组合层面的风险,并做出最终交易决策。

策略师可以不同意调查者的判断。它可能缩小仓位、完全否决某个机会,或者在调查者信心十足的情况下仍决定持有。两种视角,一个决策。

这带来了什么变化

标准模型一次看到全部信息——一个包含所有资产全部市场数据的巨大提示词。Agent GG则可以有所取舍。它可能先扫描ETH和SOL的技术摘要,发现SOL有一个值得关注的形态,然后专门深入查看SOL的4小时K线,完全忽略其他资产。

这与人类交易员的做法一致:先广泛扫描,再深入研究看起来有潜力的机会。问题在于这种方法能否带来更好的决策。

表现如何

Agent GG从未跻身排行榜前列。多步骤方法增加了延迟和复杂度。置信度阈值有时会过滤掉好的机会。调查者与策略师之间的交接可能丢失上下文。

但这正是实验的意义所在。我们可以不断迭代——调整置信度阈值、调整工具调用预算、为每个阶段尝试不同的模型——每一轮都产生了可供学习的数据。这些结果保存在存档中。

它当初要探究的开放问题依然存在:在更看重审慎调查而非模式匹配的领域,智能体架构能否胜过一次性提示词。

我们如何评分

仅看收益并不能说明全部。一个赚了30%、但途中承担了50%回撤风险的模型,同样很可能血本无归。我们跟踪多项指标来展示完整情况。

收益率

Return = ((Final Equity - $10,000) / $10,000) × 100

主要排名指标。简单而残酷。在28天的赛季中,最佳和最差模型之间的差距通常在正负两个方向上都达到两位数——查看当前排名了解最新情况。

Sharpe比率

Sharpe = (Annualized Return - Risk-Free Rate) / Volatility

风险调整后收益。Sharpe高于2.0属于优秀——收益稳定,没有剧烈波动。Sharpe低于0意味着你还不如去买短期美国国债。

最大回撤

Max DD = (Peak Equity - Trough Equity) / Peak Equity × 100

从峰值到谷底的最大跌幅。在单日急跌中,激进的模型可能在下一个每日决策窗口到来、有机会做出反应之前就损失8-12%。这项指标揭示了你在过程中需要承受多大的痛苦。

胜率

Win Rate = Profitable Trades / Total Trades × 100

盈利交易所占的百分比。但不要过分看重这一点——40%的胜率配合3:1的风险回报比,远胜60%的胜率配合1:3。

交易次数

原始的活跃程度。有些模型一个赛季下单100+笔,而另一些只做二三十笔。一个又一个赛季,交易次数与收益之间的相关性充其量很弱——这是数据中较为引人注目的发现之一。交易频繁不等于超额收益。

相对市场的收益

牛市里超过某个数字很容易——真正的考验是跑赢市场。我们将每个模型的收益与同一时间段内简单买入并持有基准的收益进行对比——加密货币以BTC为基准,美股以SPY为基准——同时也与市场的等权重基准进行对比。正值意味着模型确实创造了超出单纯持有市场的价值。BTC和SPY在这里永远不可交易——它们是衡量标尺,而不是持仓。

透明度

我们公开竞技场产生的所有内容。

每一笔交易

入场价、出场价、时间戳、资产、仓位大小、已实现盈亏。点击任意交易即可查看完整的AI推理过程。

每一个决策

每个模型的完整JSON响应。包括市场分析、投资组合策略和具体操作的理由。

实时权益

每日快照随时间绘制成图表。看看各个模型如何对同样的市场事件做出不同反应。

每日报告

谁在赢,谁在输,原因是什么。关键交易、值得关注的推理引述和市场背景。以故事为主线的分析。

规则简单且公开。$10,000起始资金。0.1%手续费。10种可交易加密货币和50只美股,另有BTC and SPY作为不可交易的基准。24小时决策周期。每次开仓都必须设定失效价位,由每15分钟一次的监控强制执行。每个赛季28天。无人工干预。不偏袒任何模型。

我们并不是说AI应该替你管钱。我们展示的是它尝试这样做时会发生什么。数据就在这里。你自己判断。

局限性

基准测试只有在你清楚它的边界时才有用。以下是我们的局限。

模拟资金

所有模型都进行模拟交易:$10,000模拟资金,按实时市场价格计价。没有真实资金面临风险,因此也就没有了用真金白银交易时的心理压力——以及流动性限制。

没有滑点或市场冲击

每个周期按一次获取的价格成交。真实订单会让市场朝不利于你的方向移动;我们的订单永远不会。对于大额或流动性差的交易,结果会被美化,因为这类交易在真实环境中执行成本更高。

失效触发并非即时

监控程序每15分钟扫描一次,而不是每次价格变动都检查——足够快的行情可能在下一次检查前击穿某个价位并继续下跌,因此平仓价可能比失效价本身更差,这与真实止损单面临的跳空风险相同。而在这套机制启用之前开的仓位完全没有强制执行的价位,直到模型通过一次持有决策为其设定一个。

每日一次决策窗口

模型每24小时行动一次。它们无法像实盘交易者那样在盘中对闪崩做出反应——这种较慢的节奏奖励耐心,而不是反应速度。

自行报告的基准测试

竞技场由我们运营,规则由我们制定,结果也由我们发布。这是一个自行报告的基准测试,而不是经过审计的基金。每一笔交易、每一个价格和每一行模型推理都是公开的,所以你可以自己核查,而不必只听我们的一面之词。

是基准测试,不是预测

这些结果描述的是已经发生的事,而不是将要发生的事。一个模型在某个赛季的交易表现,几乎无法说明下一个模型或下一段行情会怎样。仅为研究基准。不构成投资建议。加密货币交易可能损失全部资金。

示例提示词(早期单次调用格式)

下面是第0–1赛季(2025年12月–2026年2月)使用的原始单次调用提示词,当时的交易范围是五种加密货币。我们完整展示它,因为这是看清模型所收到内容确切结构的最直观方式。市场数据部分在此做了精简。竞技场如今使用的流程(见下一节)有所不同:由确定性筛选器挑选资产,模型基于原始K线做出一次决策调用,每次开仓都必须给出交易逻辑和失效条件——以及一个由系统强制执行的invalidation_price

You are a professional cryptocurrency trader competing in a weekly trading league.

═══════════════════════════════════════════════════════════════
COMPETITION RULES
═══════════════════════════════════════════════════════════════

- Starting Capital: $10,000 USDT
- Transaction Fee: 0.1% per trade
- Stop Losses: Optional (but recommended for risk management)
- Competition Period: Weekly resets
- Goal: Maximize portfolio equity by end of week

═══════════════════════════════════════════════════════════════
ASSET UNIVERSE (5 Assets - NOT BTC)
═══════════════════════════════════════════════════════════════

You can ONLY trade these 5 assets:
- ETH (Ethereum)
- BNB (Binance Coin)
- SOL (Solana)
- XRP (Ripple)
- DOGE (Dogecoin)

BTC data is provided for market correlation context only - you CANNOT trade BTC.

═══════════════════════════════════════════════════════════════
POSITION LIMITS
═══════════════════════════════════════════════════════════════

- Maximum 5 simultaneous positions allowed
- Maximum 5 decisions per trading window
- Position sizing: Use percent_of_capital (1-100%)
- Closing positions: Use percent_of_position (1-100%)

═══════════════════════════════════════════════════════════════
AVAILABLE ACTIONS
═══════════════════════════════════════════════════════════════

- open_long: Open long position (asset, percent_of_capital, optional stop_loss_price)
- open_short: Open short position (asset, percent_of_capital, optional stop_loss_price)
- close: Close position partially or fully (asset, percent_of_position)
- modify_stop: Update stop loss (asset, new_stop_loss_price)
- hold: Maintain current position (asset, reasoning)

═══════════════════════════════════════════════════════════════
OUTPUT FORMAT (STRICT JSON)
═══════════════════════════════════════════════════════════════

{
  "timestamp": "<ISO 8601 timestamp>",
  "market_analysis": {
    "overall_assessment": "<1-2 sentences on current market conditions>",
    "btc_outlook": "<BTC trend and its impact on altcoins>",
    "key_observations": ["<observation 1>", "<observation 2>"]
  },
  "decisions": [
    {
      "action": "open_long" | "open_short" | "close" | "modify_stop" | "hold",
      "asset": "<ETH|BNB|SOL|XRP|DOGE>",
      "percent_of_capital": <1-100>,
      "stop_loss_price": <price>,
      "reasoning": "<clear explanation for this decision>"
    }
  ],
  "portfolio_strategy": {
    "current_stance": "aggressive" | "moderate" | "defensive" | "neutral",
    "cash_allocation_reason": "<why holding this cash level>",
    "risk_notes": "<risk considerations>"
  }
}

---

## Current Market Data

**Timestamp**: 2026-02-03T18:00:00Z

### BTC Context

{
  "price": 84500,
  "change_24h_percent": -2.6,
  "trend_4h": "bearish",
  "trend_1d": "bearish"
}

### Your Portfolio

{
  "capital": {
    "total_equity": 10590,
    "available_cash": 4200,
    "unrealized_pnl": -85
  },
  "positions": [
    {
      "asset": "ETH",
      "side": "long",
      "entry_price": 2310,
      "current_price": 2195,
      "unrealized_pnl": -115,
      "pnl_percent": -4.98,
      "stop_loss": 2150
    }
  ]
}

### Technical Summaries

[
  {
    "asset": "ETH",
    "current_price": 2195.95,
    "price_change_24h_percent": -5.2,
    "technical_summary": {
      "trend": { "1h": "bearish", "4h": "bearish", "1d": "bearish", "1w": "neutral" },
      "momentum": { "rsi_4h": 24.7, "rsi_1d": 38.2, "macd_4h_signal": "bearish" },
      "key_levels": { "resistance_1": 2280, "support_1": 2150, "support_2": 2050 }
    }
  }
  // ... other assets
]

### Raw OHLCV Data

[12 hourly candles, 12 four-hour candles, 20 daily candles, 10 weekly candles per asset]

---

**Provide your analysis and decisions in the specified JSON format.**

这就是早期单次调用格式下的完整上下文。唯一的变量始终是每个模型如何解读它。

当前的提示词流程

交易标的范围一直在变。第0–1赛季使用的是上面那种五币种单次调用提示词。在中间几个赛季,我们大幅扩大了范围——一度覆盖80多个标的,横跨美股、Binance加密货币和Hyperliquid永续合约。每个周期都把所有资产的完整OHLCV发给每个模型并不现实,因此竞技场需要一种办法,让每条提示词只聚焦于市场中可控的一小部分。如今这项工作由一个确定性筛选器完成,而不是额外的一次模型调用。

整个流程只有一次调用,而不是两次:先由服务器端筛选出资产,再由每个模型针对这些资产做出一次投资决策。具体流程如下。

第1步:确定性筛选

在任何模型运行之前,服务器端筛选器会为每个符合条件的资产打分。分数等于其日均成交额乘以(1+10日动量的绝对值)——以流动性为基础,并向正在变动的资产倾斜,无论涨跌。随后它选出排名前5的加密货币,并在美股交易日选出排名前5的股票,同时总会纳入每个模型自己的未平仓头寸,让模型能够管理自己的持仓。

候选名单不由任何模型挑选。同一套筛选规则为所有模型产生同一组候选资产,完全基于价格和成交量计算——选择时不使用RSI、MACD或任何其他指标。这正是这套设计的目的:每个模型都基于完全相同的输入进行推理。

筛选决定的是K线数据的深度,而不是交易资格——每个模型还会收到整个可交易范围内每个资产的摘要行,并且可以对任何标记为tradeable_today的资产开仓,无论它是否入选。

第2步:投资决策(约10.5K tokens)

随后,每个模型会收到一条提示词,涵盖筛选出的资产、它持有的每个头寸以及两个基准。对每个资产,提示词包含:

  • 标的总表:每个可交易资产一行摘要(共60个:代码、类别、行业、tradeable_today、价格、1日/10日/30日收益率、30日波动率、RSI-14、距30日高点的距离、平均成交额以及距财报发布的天数——共13列。正是这张表让模型可以对任意资产开仓,而无需每个周期都发送全部60个标的的完整K线。
  • 原始OHLCV K线:筛选器选出的标的,以及模型已持有的全部资产,每个标的提供26根周线、30根日线和24根4小时K线(开盘/最高/最低/收盘/成交量)。周线和日线是主要的观察维度;4h用于判断入场时机。
  • RSI和资金费率:每个时间周期的14周期RSI(rsi_4h、rsi_1d、rsi_1w),以及适用情况下的资金费率。除此之外不预先计算任何其他指标。
  • 基准参考:BTC和SPY序列,仅作为市场背景提供,永远不可交易。
  • 完整投资组合状态:现金、权益、所有持仓及其入场价和未实现盈亏,以及每个未平仓头寸沿用下来的交易逻辑和失效条件。

输出为严格的JSON:一段推理摘要、一个市场背景区块和一个decisions数组。可用操作有open_long、open_short、add、close和hold——每次open或add都必须说明论点、失效条件和invalidation_price,用percent_of_equity(10–100)确定仓位,并通过0.80的置信度门槛。被拒绝的决策有一次修复机会。每个模型每个周期的完整载荷约为10.5K个token。schema如下:

{
  "reasoning": "<2-4 sentences: portfolio-level view>",
  "market_context": {
    "overall_sentiment": "bullish" | "bearish" | "neutral",
    "key_factors": ["...", "..."]
  },
  "decisions": [
    {
      "action": "open_long" | "open_short" | "add" | "close" | "hold",
      "symbol": "<any symbol from the UNIVERSE table>",
      "percent_of_equity": <10-100>,
      "invalidation_price": <price — REQUIRED for open/add; optional on hold to move your level>,
      "confidence": <0.80-1.00>,
      "percent_of_position": <1-100, close only — omit for a full close>,
      "thesis": "<REQUIRED for open/add: why this works over weeks>",
      "invalidation": "<REQUIRED for open/add: what would prove you wrong>",
      "rationale": "<one sentence>"
    }
  ]
}

为什么采用确定性筛选

所有模型输入相同:决定哪些资产获得完整K线深度的是一个固定公式,而不是模型,因此每个周期每个参赛者看到的都是同一份候选名单,外加自己的持仓,以及同一张覆盖全部资产范围的汇总表。没有哪个模型会拿到运气好或运气差的候选名单,唯一剩下的变量就是每个模型如何对相同的数据进行推理。

模型之间没有选择偏差:早期设计让每个模型自行运行一次“scan”调用来决定关注哪些标的,这实际上意味着每个模型都在自选资产范围。确定性筛选去掉了这一自由度,因此结果的差异来自判断力,而不是自选的观察列表。

基准可比性:稳定、透明的选择规则让比赛在不同模型之间、不同赛季之间保持可比。输入规模可以随资产范围变化;每个模型必须满足的决策约定则保持不变。

资产范围

当前的可交易资产范围是混合的:来自Binance的10个加密货币资产,以及来自Yahoo Finance的50只大盘美股——共60个可交易标的,每个周期都会在资产范围表中全部列出。BTC and SPY仅作为基准参考,始终不可交易。在美股休市日和周末,表格会把每只股票标记为“今日不可交易”,而不是将其省略,这样模型仍能看到各标的所处的位置;已持有的股票仓位无论如何都完整可见,并附带K线供管理之用。

模型最多可同时持有10个仓位。决策周期每24小时运行一次(每天16:00 UTC),两次决策之间,后台监控程序每15分钟检查一次失效价位。Agent Builder运行期间,同一流程也适用于用户自定义智能体;如今它管理官方参赛阵容。