<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: T-row</title>
    <description>The latest articles on DEV Community by T-row (@trow126).</description>
    <link>https://dev.to/trow126</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4050142%2F9ed08458-415f-44cb-b36c-6f42d9f59e72.png</url>
      <title>DEV Community: T-row</title>
      <link>https://dev.to/trow126</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/trow126"/>
    <language>en</language>
    <item>
      <title>The most-starred LLM trading paper claims buy-and-hold lost 5.23%. It actually gained 9.12%.</title>
      <dc:creator>T-row</dc:creator>
      <pubDate>Mon, 27 Jul 2026 20:50:37 +0000</pubDate>
      <link>https://dev.to/trow126/the-most-starred-llm-trading-paper-claims-buy-and-hold-lost-523-it-actually-gained-912-1jj6</link>
      <guid>https://dev.to/trow126/the-most-starred-llm-trading-paper-claims-buy-and-hold-lost-523-it-actually-gained-912-1jj6</guid>
      <description>&lt;p&gt;&lt;a href="https://github.com/trow126/falsify-ledger" rel="noopener noreferrer"&gt;falsify-ledger&lt;/a&gt;.*&lt;/p&gt;

&lt;p&gt;TradingAgents (arXiv:2412.20138, ~94,700 GitHub stars) is probably the most visible&lt;br&gt;
"LLM agents trade stocks" project right now. The headline result: a multi-agent LLM&lt;br&gt;
framework earned a 26.62% cumulative return on AAPL with a Sharpe ratio of 8.21 between&lt;br&gt;
2024-06-19 and 2024-11-19, while buy-and-hold supposedly lost 5.23% over the same&lt;br&gt;
window.&lt;/p&gt;

&lt;p&gt;That last number takes one API call to check. So I checked it. With a twist: I wrote&lt;br&gt;
down the test, the verdict rule, and my predicted outcome, and committed all of it to a&lt;br&gt;
public repo before touching any data.&lt;/p&gt;

&lt;h2&gt;
  
  
  The test I froze
&lt;/h2&gt;

&lt;p&gt;From commit &lt;a href="https://github.com/trow126/falsify-ledger/commit/60e8e2b" rel="noopener noreferrer"&gt;&lt;code&gt;60e8e2b&lt;/code&gt;&lt;/a&gt;,&lt;br&gt;
registered before anything was computed:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Recompute AAPL buy-and-hold total return over 2024-06-19 → 2024-11-19 using Yahoo&lt;br&gt;
Finance dividend-adjusted daily closes. KILL if the result is ≥ 0.0% — because then&lt;br&gt;
the stated −5.23% baseline is off by more than five points and has the wrong sign.&lt;br&gt;
Predicted P(kill): 0.90.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  What came back
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Series&lt;/th&gt;
&lt;th&gt;2024-06-20&lt;/th&gt;
&lt;th&gt;2024-11-19&lt;/th&gt;
&lt;th&gt;Buy &amp;amp; hold&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Adjusted close&lt;/td&gt;
&lt;td&gt;207.88&lt;/td&gt;
&lt;td&gt;226.83&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;+9.12%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Raw close (robustness)&lt;/td&gt;
&lt;td&gt;209.68&lt;/td&gt;
&lt;td&gt;228.28&lt;/td&gt;
&lt;td&gt;+8.87%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;AAPL went up about nine percent over the paper's own evaluation window. The reported&lt;br&gt;
baseline is off by roughly 14 percentage points, sign included. Whatever the agent&lt;br&gt;
returned, the paper's central contrast — "buy-and-hold lost money, our agent made 26%"&lt;br&gt;
— is built on a number that the price series contradicts. Verdict: KILL. Full record&lt;br&gt;
and reproduction script are in&lt;br&gt;
&lt;a href="https://github.com/trow126/falsify-ledger/blob/main/verification/01/result.md" rel="noopener noreferrer"&gt;verification/01&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;A few things I noted but kept out of the verdict: a Sharpe of 8.21 over ~105 trading&lt;br&gt;
days with a 0.91% max drawdown implies an equity curve that barely ever dips, which in&lt;br&gt;
a single-name equity strategy usually points to an evaluation artifact rather than&lt;br&gt;
alpha. The repo's own issue tracker has a look-ahead bias report (Issue #203). Costs&lt;br&gt;
aren't modeled.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why bother preregistering a five-minute check?
&lt;/h2&gt;

&lt;p&gt;Because post-hoc criticism is cheap. Nobody can tell whether a critic ran ten tests and&lt;br&gt;
published the one that landed. Writing the prediction down first — with a probability&lt;br&gt;
attached — makes the critic auditable too.&lt;/p&gt;

&lt;p&gt;I keep these in a public ledger. Five entries so far, each with the verdict rule&lt;br&gt;
committed before the data was touched. Predictions: 0.90 / 0.95 / 0.30 / 0.85 / 0.70.&lt;br&gt;
Outcomes: KILL / KILL / SURVIVE / SURVIVE / KILL. The survivors are real: entry 03 was&lt;br&gt;
a volatility strategy I expected to pass, and it reproduced almost exactly&lt;br&gt;
(&lt;a href="https://github.com/trow126/falsify-ledger/blob/main/entries/03-concretum-vix-strategy.md" rel="noopener noreferrer"&gt;entry&lt;/a&gt;).&lt;br&gt;
Entry 04 survived its frozen test on a technicality in my own cost wording, and the&lt;br&gt;
entry says so right at the verdict, along with the reading under which it would have&lt;br&gt;
failed. Misses cost me Brier score, publicly.&lt;/p&gt;

&lt;h2&gt;
  
  
  If you own a claim
&lt;/h2&gt;

&lt;p&gt;If you're about to commit money or engineering time to a quantitative claim — yours or&lt;br&gt;
a vendor's — and want it tested this way first,&lt;br&gt;
&lt;a href="https://github.com/trow126/falsify-ledger/issues" rel="noopener noreferrer"&gt;open an issue&lt;/a&gt;. The verdict rule&lt;br&gt;
gets frozen before either of us sees the result.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;This is methodological review of public claims. It is not investment advice, and it is&lt;br&gt;
not directed at any individual.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>machinelearning</category>
      <category>datascience</category>
      <category>python</category>
    </item>
  </channel>
</rss>
