HERCULEAN / index.html
Xueqing's picture
HERCULEAN leaderboard site (from xueqingpeng/herculean docs/ @ 76f5121)
c58bef8 verified
Raw History Blame Contribute Delete
16.9 kB
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>HERCULEAN · An Agentic Benchmark for Financial Intelligence · The Fin AI</title>
<meta name="description" content="HERCULEAN: end-to-end, workflow-level evaluation of financial agents. Leaderboard of agent systems across Trading, Hedging, Market Insights and Auditing." />
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link href="https://fonts.googleapis.com/css2?family=Cinzel:wght@600;700&family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;1,6..72,400;1,6..72,500&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet" />
<link rel="icon" href="./assets/finai-logo.png" />
<link rel="stylesheet" href="./style.css" />
</head>
<body>
<div class="progress" id="progress"></div>
<!-- page frame: soft colour glows behind everything, and vertical marks on both edges -->
<div class="glow" aria-hidden="true"></div>
<div class="edge edge-l" aria-hidden="true"><span class="e-name">HERCULEAN</span></div>
<div class="edge edge-r" aria-hidden="true"><span class="e-name">The Fin AI</span></div>
<div class="tip" id="tip" role="tooltip"></div>
<!-- ============ HEADER ============ -->
<header class="header" id="header">
<div class="wrap nav">
<a href="https://thefin.ai/" class="brand" target="_blank" rel="noreferrer"><img src="./assets/finai-logo.png" alt="" />The Fin AI<span class="brand-sep">/</span><span class="brand-herc">HERCULEAN</span></a>
<div class="nav-right">
<nav class="links" id="navLinks">
<a href="#rankings" data-sec="rankings">Rankings</a>
<a href="#leaderboard" data-sec="leaderboard">Leaderboard</a>
<a href="#replay" data-sec="replay">Replay</a>
<a href="#workflows" data-sec="workflows">Benchmark</a>
<a href="#resources" data-sec="resources">Cite</a>
</nav>
<a class="btn btn--sm" href="https://arxiv.org/abs/2605.14355" target="_blank" rel="noreferrer">Paper <span class="arrow">↗</span></a>
</div>
</div>
</header>
<main id="top">
<!-- ============ HERO ============ -->
<section class="hero" id="hero">
<!-- background: one thin gradient line per stock (real offline prices), drifting slowly left -->
<svg class="flow" id="flow" aria-hidden="true" preserveAspectRatio="none"></svg>
<div class="wrap hero-grid">
<div class="hero-copy">
<a class="award reveal-up" id="award" href="#rankings" style="transition-delay:.05s">
<span class="medal" id="lion" aria-hidden="true"></span>Agentic benchmark · <b id="awardN">5 architectures × 6 backbones</b> →
</a>
<h1 class="wordmark reveal-up" style="transition-delay:.15s">HERCULEAN</h1>
<p class="hero-sub reveal-up" style="transition-delay:.3s"><em>End-to-end</em>, <em>workflow-level</em> evaluation of financial&nbsp;agents.</p>
<p class="lead reveal-up" style="transition-delay:.4s">Every agent system, <span class="rotator" id="rotator"></span>, trades, hedges, writes market reports and audits filings under the same date-bounded environment, and is scored on its whole trajectory.</p>
<div class="stats reveal-up" id="stats" style="transition-delay:.5s"></div>
<div class="hero-ctas reveal-up" style="transition-delay:.6s">
<a class="btn btn--lg btn--trade magnetic" href="./play.html">Trade with an agent <svg class="dol" viewBox="0 0 18 18" aria-hidden="true"><circle cx="9" cy="9" r="8.5" fill="currentColor"/><text x="9" y="13.1" text-anchor="middle" font-size="11.5" font-weight="700" font-family="Inter,system-ui,sans-serif">$</text></svg></a>
<a class="btn btn--lg btn--ghost magnetic" href="https://arxiv.org/abs/2605.14355" target="_blank" rel="noreferrer">Read the paper</a>
</div>
</div>
<figure class="hero-viz tilt reveal-up" style="transition-delay:.55s">
<figcaption><span id="vizCap">Top 8 · Overall score</span><a href="#leaderboard">Full ranking →</a></figcaption>
<div class="podium" id="podium"></div>
<div class="hero-legend" id="heroLegend"></div>
<div class="hero-leaders" id="heroLeaders"></div>
<p class="hero-claim">No agent system is a <em>generalist</em>: every workflow has its own leader.</p>
</figure>
</div>
<!-- pixel Hercules: meets the Nemean lion and dons its skin, walking on the ticker's top line -->
<div class="scene press js-ground" id="herc-top" aria-hidden="true"></div>
<!-- after the fight, the lion-skin hero walks back right-to-left along the bottom price line -->
<div class="scene rev solo" id="herc-bot" aria-hidden="true"></div>
<!-- ticker: all agent systems by Overall, looping (pause on hover, click to open) -->
<div class="ticker" id="ticker" aria-label="Overall ranking ticker"><div class="ticker-track" id="tickerTrack"></div></div>
</section>
<!-- ============ 2b · RANKINGS ============ -->
<section class="section" id="rankings" style="padding-top:36px">
<div class="wrap">
<div class="rk-head" data-reveal>
<div class="rk-copy">
<span class="kicker">Rankings</span>
<h2 class="sec-h2">Rankings <em>reshuffle</em> across workflows</h2>
</div>
<div class="picker" id="picker" aria-label="Choose an agent system, an architecture or a backbone"></div>
</div>
<div class="rk-chart" id="rkChart" data-reveal>
<div class="rk-view" id="rkView" role="tablist" aria-label="Chart view"><span class="seg-pill"></span>
<button role="tab" aria-selected="true" data-v="flow"><svg viewBox="0 0 22 16" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linecap="round"><path d="M1 13 C6 13 7 3 11 3 S16 12 21 6"/><path d="M1 4 C6 4 8 12 12 12 S17 4 21 10" opacity=".55"/></svg><b>Rank flow</b><i class="go">›</i></button>
<button role="tab" aria-selected="false" data-v="field"><svg viewBox="0 0 22 16" fill="none" stroke="currentColor" stroke-width="1.3" stroke-linecap="round"><path d="M1 3h20M1 8h20M1 13h20" opacity=".55"/><circle cx="6" cy="3" r="2" fill="currentColor"/><circle cx="14" cy="8" r="2" fill="currentColor"/><circle cx="9" cy="13" r="2" fill="currentColor"/></svg><b>Field</b><i class="go">›</i></button>
<button role="tab" aria-selected="false" data-v="floor"><svg viewBox="0 0 22 16" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linecap="round"><path d="M4 4h12M2 8h16M6 12h10"/><circle cx="16" cy="4" r="1.8" fill="currentColor"/><circle cx="18" cy="8" r="1.8" fill="currentColor"/><circle cx="16" cy="12" r="1.8" fill="currentColor"/></svg><b>Floor → Overall</b><i class="go">›</i></button>
</div>
</div>
</div>
</section>
<!-- ============ 2 · LEADERBOARD ============ -->
<section class="section section--tint" id="leaderboard" style="padding-top:20px">
<div class="wrap">
<div class="sec-head lb-head" data-reveal>
<div>
<span class="kicker" id="lbKicker">Leaderboard</span>
<h2 class="sec-h2">Who <em>leads</em>, workflow by workflow</h2>
<p class="note" id="lbSub"></p>
</div>
</div>
<div class="controls" data-reveal>
<div class="arch-chips" id="archChips" aria-label="Show or hide an architecture"></div>
<div class="arch-chips model-chips" id="modelChips" aria-label="Show or hide a backbone"></div>
</div>
<div class="board" id="board" data-reveal>
<div class="lb-cols">
<span class="c-pos">#</span><span>Agent system</span><button type="button" class="sort-h on" id="colScore" data-v="Overall" title="Rank by Overall">Overall <i class="arr">↓</i></button>
<span class="c-cells" id="colCells"></span><span></span>
</div>
<div class="lb-rows" id="lbRows"></div>
<button class="lb-more" id="lbMore" type="button" aria-expanded="false"></button>
</div>
<div class="board-foot" data-reveal>
<p id="lbNote"></p>
<p class="keys"><span class="ring-key"></span>best score in each workflow. Darker purple = higher score. <span class="ramp"></span></p>
</div>
</div>
</section>
<!-- ============ 2c · REPLAY ============ -->
<section class="section" id="replay" style="padding-top:20px">
<div class="wrap">
<div class="sec-head rp-head" data-reveal>
<div><span class="kicker">Replay</span><h2 class="sec-h2">Watch an agent <em>trade</em> and <em>hedge</em></h2>
<p class="note" id="rpSub"></p></div>
</div>
<div class="controls rp-pick" data-reveal>
<div class="arch-chips" id="rpArch" aria-label="Architecture"></div>
<div class="arch-chips model-chips" id="rpModel" aria-label="Backbone"></div>
<div class="rp-ctl">
<div class="rp-tk rp-run" id="rpRun" role="tablist" aria-label="Run"></div>
<button class="btn btn--ghost btn--sm rp-again" id="rpAgain" type="button"><svg class="play-ico" viewBox="0 0 16 16" aria-hidden="true"><circle cx="8" cy="8" r="7.5" fill="currentColor"/><path d="M6.4 4.9v6.2l4.9-3.1z" fill="#fff"/></svg>Replay</button>
</div>
</div>
<div class="rp-grid" data-reveal>
<article class="rp-card" style="--c:#d6304a">
<div class="rp-top"><span class="rp-kick"><span class="wdot" style="--c:#d6304a"></span>Trading</span><div class="rp-tk" id="rpTk" role="tablist" aria-label="Ticker"></div></div>
<div class="rp-chart" id="rpTrade"></div>
<div class="rp-legend"><span><i class="a-B"></i>BUY</span><span><i class="a-S"></i>SELL</span><span><i class="a-H"></i>HOLD</span><span><i class="a-x"></i>no record (scored as HOLD)</span></div>
<div class="rp-foot" id="rpTradeFoot"></div>
</article>
<article class="rp-card" style="--c:#8a3ce0">
<div class="rp-top"><span class="rp-kick"><span class="wdot" style="--c:#8a3ce0"></span>Hedging</span><span class="rp-pair" id="rpPair"></span></div>
<div class="rp-chart" id="rpHedge"></div>
<div class="rp-legend"><span><i class="p-L"></i>Long-Short</span><span><i class="p-R"></i>Short-Long</span><span><i class="p-F"></i>Flat</span><span><i class="p-dia"></i>Close</span></div>
<div class="rp-foot" id="rpHedgeFoot"></div>
</article>
</div>
</div>
</section>
<!-- ============ 1 · WORKFLOWS ============ -->
<section class="section" id="workflows" style="padding-top:20px">
<div class="wrap">
<div class="sec-head" data-reveal>
<div><span class="kicker">Benchmark</span><h2 class="sec-h2 one-line"><em>Four</em> workflows, <em>one</em> benchmark</h2>
<p class="note recipe-note">Every workflow = <b>Environment</b> + <b>Interaction Protocol</b> + <b>Trajectory Evaluation</b>.</p></div>
</div>
<div class="wf-grid" id="wfGrid"></div>
</div>
</section>
<!-- ============ GAME CARD (links to play.html) ============ -->
<section class="cta-sec" id="play">
<div class="wrap">
<a class="cta-card game-card" href="./play.html" data-reveal>
<div class="mesh" aria-hidden="true"><i></i><i></i></div>
<div class="cta-text">
<span class="game-kick">Mini-game · Trading workflow</span>
<h3>Trade with an <em>agent</em></h3>
<p>Pick a stock, then choose which agent system trades it each day. Its real recorded decisions play out over the 61-day window. Can your picks beat Buy &amp; Hold?</p>
</div>
<svg class="game-k" id="gameK" aria-hidden="true"></svg>
<span class="btn btn--light btn--trade game-go">Trade <svg class="dol" viewBox="0 0 18 18" aria-hidden="true"><circle cx="9" cy="9" r="8.5" fill="currentColor"/><text x="9" y="13.1" text-anchor="middle" font-size="11.5" font-weight="700" font-family="Inter,system-ui,sans-serif">$</text></svg></span>
</a>
</div>
</section>
<!-- ============ 3 · CITE · RESOURCES · PARTNERS ============ -->
<section class="section" id="resources" style="padding-top:84px;padding-bottom:12px">
<div class="wrap">
<div class="sec-head" data-reveal>
<div><span class="kicker">Cite</span><h2 class="sec-h2">Cite <em class="herc">HERCULEAN</em><span class="medal cite-lion" id="citeLion" aria-hidden="true"></span></h2></div>
</div>
<div class="bib spot" data-reveal>
<div class="bib-top"><span class="res-h">Citation</span>
<div class="bib-actions"><a class="paper-link" href="https://arxiv.org/abs/2605.14355" target="_blank" rel="noreferrer">Paper · arXiv 2605.14355 <span>↗</span></a><button class="copy-btn" id="copyBib" type="button">Copy BibTeX</button></div></div>
<pre id="bib">@misc{peng2026herculeanagenticbenchmarkfinancial,
title={Herculean: An Agentic Benchmark for Financial Intelligence},
author={Xueqing Peng and Zhuohan Xie and Yupeng Cao and Haohang Li and Lingfei Qian and Yan Wang and Vincent Jim Zhang and Huan He and Xuguang Ai and Linhai Ma and Ruoyu Xiang and Yueru He and Yi Han and Shuyao Wang and Yuqing Guo and Mingyang Jiang and Yilun Zhao and Youzhong Dong and Xiaoyu Wang and Yankai Chen and Ye Yuan and Qiyuan Zhang and Fuyuan Lyu and Haolun Wu and Yonghan Yang and Zichen Zhao and Yuyang Dai and Fan Zhang and Rania Elbadry and Ayesha Gull and Muhammad Usman Safder and Nuo Chen and Fengbin Zhu and Tianshi Cai and Zimu Wang and Polydoros Giannouris and Yuechen Jiang and Zhiwei Liu and Mohsinul Kabir and Yuyan Wang and Yixiang Zheng and Yangyang Yu and Weijin Liu and Wenbo Cao and Anke Xu and Peng Lu and Jerry Huang and Mingquan Lin and Prayag Tiwari and Yijia Zhao and Víctor Gutiérrez-Basulto and Xiao-Yang Liu and Kaleb E Smith and Jiahuan Pei and Arman Cohan and Jimin Huang and Yuehua Tang and Alejandro Lopez-Lira and Xi Chen and Xue Liu and Junichi Tsujii and Jian-Yun Nie and Sophia Ananiadou},
year={2026},
eprint={2605.14355},
archivePrefix={arXiv},
primaryClass={cs.AI},
url={https://arxiv.org/abs/2605.14355},
}</pre>
</div>
<!-- partners: logos in order, then the remaining institutions as names (no panel) -->
<div class="partners" data-reveal>
<div class="p-logos">
<a href="https://thefin.ai/" target="_blank" rel="noreferrer" class="p-finai" data-tip="The Fin AI"><img src="./assets/finai-logo.png" alt="" /><span>The Fin AI</span></a>
<a href="https://deepkin.ai/" target="_blank" rel="noreferrer" class="p-pair p-dk" data-tip="DeepKin"><img src="./assets/deepkin-mark.svg" alt="" class="crest" /><span class="p-dkw">DeepKin</span></a>
<a href="https://www.nactem.ac.uk/" target="_blank" rel="noreferrer" data-tip="National Centre for Text Mining (NaCTeM)"><img src="./assets/nactem.png" alt="NaCTeM" /></a>
<a href="https://www.ufl.edu/" target="_blank" rel="noreferrer" data-tip="University of Florida (UF)"><img src="./assets/uf.svg" alt="University of Florida" /></a>
</div>
<div class="p-logos">
<a href="https://www.manchester.ac.uk/" target="_blank" rel="noreferrer" data-tip="The University of Manchester (UoM)"><img src="./assets/manchester.png" alt="The University of Manchester" /></a>
<a href="https://www.yale.edu/" target="_blank" rel="noreferrer" class="p-pair" data-tip="Yale University"><img src="./assets/yale-shield.svg" alt="" class="crest" /><img src="./assets/yale.svg" alt="Yale University" /></a>
<a href="https://www.mcgill.ca/" target="_blank" rel="noreferrer" class="p-pair" data-tip="McGill University"><img src="./assets/mcgill-coa.svg" alt="" class="crest" /><span class="p-word">McGill</span></a>
<a href="https://mbzuai.ac.ae/" target="_blank" rel="noreferrer" data-tip="Mohamed bin Zayed University of Artificial Intelligence (MBZUAI)"><img src="./assets/mbzuai.png" alt="Mohamed bin Zayed University of Artificial Intelligence" class="p-mbz" /></a>
<a href="https://www.nvidia.com/" target="_blank" rel="noreferrer" data-tip="NVIDIA"><img src="./assets/nvidia-full.svg" alt="NVIDIA" /></a>
</div>
<p class="p-names" id="pNames"></p>
</div>
</div>
</section>
</main>
<footer class="footer">
<div class="wrap footer-bottom">
<a class="brand sm" href="https://thefin.ai/" target="_blank" rel="noreferrer"><img src="./assets/finai-logo.png" alt="" />The Fin AI</a>
<span class="copy">© 2026 The Fin AI · HERCULEAN benchmark</span>
<a href="#top" class="to-top" aria-label="Back to top">↑</a>
</div>
</footer>
<script src="./data.js"></script>
<script src="./app.js"></script>
<script src="./herc_scene.js"></script>
</body>
</html>