Stocks sometimes continue moving in the direction of an earnings surprise for weeks or even months after the announcement.This phenomenon is known as Post-Earnings Announcement Drift, or PEAD. Quantpedia describes PEAD as a well-documented anomaly in which abnormal returns can persist for several weeks or months after positive earnings news. We wanted to see whether that effect is still economically interesting in today’s market. So we took the Post-Earnings Announcement Effect strategy from Quantpedia, investigated the original methodology, audited the data required to reproduce it, built a live-tradable variation, backtested it over the last decade, and then deployed it through an Alpaca Paper agent on Scalar Field. Follow the live experiment: Combined SPY-IWM Analyst PEAD
What is PEAD?
Suppose a company reports substantially better earnings than expected. Its stock jumps 7%. If investors immediately incorporated everything contained in the report, there should be no systematic reason for the stock to continue outperforming afterward. PEAD says that historically, this has not always been the case. One common explanation is underreaction: investors initially adjust prices in the correct direction but do not immediately incorporate the full implications of the new information. Quantpedia notes underreaction as one of the main explanations proposed for PEAD. But simply buying every company that beats EPS estimates would be a very crude interpretation of the research. An earnings release contains far more information than one number. A company can beat EPS while simultaneously reporting:- weak revenue;
- deteriorating margins;
- lower guidance;
- unexpected capital expenditures;
- changes in demand;
- management commentary that changes the outlook.
Were the earnings unusually good?and
Did the market itself react as though something important happened?
Two signals: SUE and EAR
The Quantpedia strategy combines two measures: SUE and EAR. The original methodology takes the intersection of stocks ranking highly on both rather than relying on only one signal.SUE: How surprising were the earnings?
SUE stands for Standardized Unexpected Earnings. For the production agent, we begin with:Reported EPS − pre-announcement consensus EPSBut a 10-cent beat does not mean the same thing for every company. So the strategy compares today’s forecast error with the company’s previous eight earnings forecast errors. A company that routinely beats estimates by 10 cents should not receive the same signal as a company for which a 10-cent beat is extremely unusual. The result asks:
How abnormal was this earnings surprise relative to this company’s recent history?
EAR: How surprising was the market reaction?
EAR stands for Earnings Announcement Return. Instead of looking only at accounting earnings, EAR measures the stock’s abnormal return around the earnings announcement. This is important because the price reaction can incorporate information that EPS alone misses: revenue, margins, investment, guidance and other information released alongside earnings. The source research explicitly describes EAR as capturing this broader information set. So our strategy does not say:EPS beat → buy.It says:
Extreme positive earnings surprise + extreme positive market reaction → candidate.
Both signals have to agree
This is the central rule. Every quarter, Scalar Field calculates the previous quarter’s distribution of SUE and EAR. A new earnings event qualifies only if it independently exceeds:the 80th percentile for SUEand
the 80th percentile for EAR.A huge EPS beat with an unconvincing stock reaction does not qualify. A stock that rockets after mediocre reported earnings does not qualify either. Both signals need to be unusually strong. This follows the core structure documented by Quantpedia: stocks are independently sorted on SUE and EAR, and the long portfolio is formed from the intersection of the highest quintiles.
We first tried to reproduce the paper exactly
This is where the project became more interesting. The source-paper methodology does not primarily define SUE using analyst consensus EPS. Its primary definition uses quarterly Income Before Extraordinary Items from Compustat and estimates expected earnings with a seasonal earnings model. EAR is also not simply the stock’s return relative to SPY. The academic version compares the stock against a portfolio of companies with similar size and book-to-market characteristics. Our first instinct was to reproduce that as faithfully as possible. Before trusting the backtest, however, we audited the historical data. And that stopped the replication.The point-in-time data problem
The exact Compustat earnings field required by the paper was not available in Scalar Field’s fundamental dataset. There were nearby fields—such as FactSet net income—but they were not definitionally identical. More importantly, the historical observations were associated with fiscal-period dates, not auditable first-publication timestamps. That creates a classic backtesting problem. Imagine a company’s quarter ends on June 30. Today, a historical database knows exactly what the company earned in that quarter and may associate the observation with June 30. But investors on June 30 did not know the number yet. It might not have been reported until several weeks later. If a backtest accidentally uses that value before it became public, it gains information that a real investor never had. That is look-ahead bias. Our audit found that the fundamental dates behaved like fiscal-period dates rather than publication timestamps, so we could not prove the exact earnings information would have been known at the proposed trade time. Rather than silently use a substitute and call the result a faithful replication, we stopped.Building the live-tradable version
The earnings-event dataset gives us something much more useful operationally:- reported EPS;
- the associated pre-announcement consensus estimate;
- earnings date;
- earnings release time; and
- fiscal-period information.
Combined SPY-IWM Analyst PEADIt is not an exact reproduction of the original academic strategy. It is a production adaptation designed around data that can actually be observed around an earnings event.
The production rules
The live agent operates across contemporaneous SPY and IWM constituents, giving the strategy exposure to both large and smaller US companies. Smaller companies are particularly relevant because PEAD research has often found a stronger effect among small-cap stocks. The final rules are:
The academic implementation uses a much broader stock universe, an uncapped portfolio, and different benchmark construction, so these are meaningful production deviations rather than cosmetic changes.
Earnings timing matters
There is another important difference between historical research and a live agent. We know when an earnings release occurred. Suppose a company reports at 4:15 p.m. ET on Monday. Monday’s regular-session stock movement cannot have been caused by information that was not released until after the market closed. So the agent is session-aware. For a pre-market or during-market report, that trading session becomes the effective earnings session. For an after-market report, the next trading session becomes the effective session. Weekend and holiday reports similarly map to the next trading day. The strategy then waits for the complete reaction window to become observable before entering at the t+2 open. That distinction is fundamental to what we’re testing. This is not an earnings-news latency strategy. We are deliberately allowing the market to react first. The question is whether the reaction continues afterward.Why hold for 60 trading days?
The original Quantpedia implementation enters on the second trading day following the earnings announcement and holds for approximately 60 trading days. That is the anomaly. We’re not trying to predict the first 30 seconds after earnings. We’re testing whether new information continues being incorporated into prices over the following weeks. If the company reports another earnings result before the holding period ends, however, the information set changes. The new report becomes a new event. The agent recalculates SUE and EAR. If the stock qualifies again, its 60-day clock restarts. If it fails to qualify—or there is insufficient information to requalify—it exits.We also stopped replacing winners
The first production-style backtest allowed a newly qualifying stock with a stronger SUE/EAR score to displace an existing holding whenever all 20 portfolio slots were occupied. That generated substantial turnover. More importantly, it introduced a second strategy on top of PEAD:Instead of simply holding an earnings-drift signal, the portfolio was constantly rotating toward whichever current signal ranked highest.So we changed the rule. In the final agent:
An existing active holding is not removed merely because a stronger new PEAD candidate appears.A position remains until its 60-session period ends or a new earnings announcement causes it to fail requalification. If all 20 positions are occupied, new qualifying events are still recorded, but they do not automatically displace an existing holding. This also gives us an interesting future comparison: the live agent records uncapped shadow signals, allowing us to study what happened to qualifying stocks that could not enter the 20-position production portfolio.
Does the production strategy work historically?
After fixing the final production rules, Scalar Field re-ran the Combined portfolio using:- exactly eight prior earnings forecast errors;
- no rank-based replacement of existing positions; and
- the final production portfolio logic.
The most recent five-year period produced a 10.12% CAGR.
These are the numbers that matter for the live version.
They supersede the earlier backtest that allowed rank replacement.
And the drawdown remains important.
A -31.61% historical maximum drawdown is not the profile of a riskless anomaly.
That is one reason we are running this in paper trading rather than treating the historical result as proof of a durable edge.
Historical performance still has an important caveat
Even the analyst-based backtest is not fully point-in-time audited. The historical earnings dataset identifies the consensus estimate associated with each report, but it does not contain a complete archive of daily analyst-estimate snapshots, individual analyst forecasts, revision histories, or an independently auditable estimate timestamp. So the historical analysis should be interpreted as:Evidence worth testing prospectively.Not:
A perfect recreation of what could definitely have been traded at every point in history.That distinction is one of the main reasons for running the live experiment. From this point forward, there is no historical-vintage ambiguity. The agent only sees the information available to it as events occur.
Risk controls
The historical drawdown made one thing clear: the agent needs explicit risk controls. There are two layers.15% peak-NAV entry pause
If strategy NAV falls 15% from its previous peak:Stop opening new positions.Existing positions continue to be managed according to their normal rules. The idea is not that every existing PEAD signal suddenly becomes invalid. The drawdown is instead a warning:
Something may have changed. Stop adding risk and review the strategy.
25% initial-capital hard stop
The agent also has a separate emergency hard stop at a 25% loss relative to its initial $25,000 economic strategy capital. That is intentionally wider than the entry-pause threshold. The first control pauses risk-taking. The second is an emergency boundary.Turning a backtest into a real agent
Deploying the strategy surfaced problems that a notebook backtest never has to think about. For example, the agent needed to handle:- earnings released after the final run of the day;
- weekend and holiday announcements;
- revised or delayed earnings records;
- duplicate event discovery;
- holdings that receive a new earnings report but lack enough data to requalify;
- pending mandatory sell orders; and
- preventing new purchases from relying on proceeds that have not yet been reconciled.
The live experiment
The Combined SPY-IWM Analyst PEAD agent is now active on Scalar Field using Alpaca Paper. It has an isolated strategy ledger of:$25,000even though the connected paper brokerage account contains unrelated positions. The PEAD agent does not claim or manage those other holdings. At initialization:
- NAV/cash was $25,000;
- there were no PEAD positions;
- there were no PEAD orders;
- current peak drawdown was 0%; and
- 78 historical Q3 qualifying events had been recorded as shadow signals rather than converted into stale trades.
Monday, August 17, 2026 at 9:30 a.m. ET.From there, the live record can begin accumulating prospectively. Follow the agent: Combined SPY-IWM Analyst PEAD
What are we actually testing?
The goal is not simply to see whether the portfolio makes money. There are several more interesting questions.Does PEAD still exist in modern markets?
The anomaly has been studied for decades. Today’s market has machine-readable filings, algorithmic trading, instant earnings alerts, social media, automated analyst models and much faster information processing. If stocks with extreme positive SUE and EAR signals still drift upward afterward, that would suggest earnings information is still not incorporated instantaneously.Does the market reaction add information beyond the EPS beat?
This is perhaps the most interesting part of the strategy. EAR asks whether the market itself confirms that the earnings event was unusually important. The source research found EAR and SUE contained distinct information and that combining the two could improve the signal.Does the small-cap component survive actual execution?
Quantpedia notes that small-cap stocks have historically been important contributors to PEAD. But small caps also introduce different liquidity, spread and execution characteristics. The IWM portion of the universe therefore matters not just for return, but for testing whether the apparent small-cap anomaly survives practical trading.Does the 20-position cap help or hurt?
The academic strategy can hold every qualifying stock. The production portfolio cannot. So the agent records qualifying shadow signals even when there is no portfolio capacity. Over time, we can compare:Stocks actually held by the 20-position portfoliowith
Qualifying PEAD signals that could not enter.That lets us measure the impact of the portfolio constraint rather than guessing.
Does the signal survive truly point-in-time data?
This is the most important test. A historical database can accidentally know the future. The live agent cannot. From here forward, every earnings report, consensus estimate, price reaction, entry decision and fill occurs in sequence.Where we go from here
The historical result is interesting:13.20% CAGR, 0.711 Sharpe, -31.61% maximum drawdown.But that is not the conclusion of the experiment. It is the reason to run the experiment. The universe is now fixed. The SUE definition is fixed. The EAR definition is fixed. The eligibility thresholds are fixed. The entry timing is fixed. The 60-day holding rule is fixed. The 20-position constraint is fixed. The risk controls are fixed. And, most importantly, future signals will be generated using information actually available when the agent sees it. The question is no longer:
Can PEAD be made to look interesting in historical data?It is:
Does the earnings drift survive when we have to trade it prospectively?Follow the Combined SPY-IWM Analyst PEAD agent on Scalar Field →