AQAI QuantAI research lab for systematic strategies

Automated analysis

This analysis was drafted by our research engine and has not been checked by a human editor. It may contain errors. It separates the paper’s own results from our tests, and any figures called ours come from our own backtest.

Our automated analysisOur backtest

One exponent decides whether waiting to sell has value

Carr and Sturm reduce liquidation timing to a Skorokhod embedding; the barrier needs inputs a trader lacks

2026-09-08 · 8 min read · US equities and liquid US ETFs

Reviewing: When to Sell an Asset? - A Distribution Builder Approach · Peter Carr and Stephan Sturm · Read it on arxiv

Our backtest of this idea

Our automated quick test, not the paper's

Point-in-Time Log-Normal Azema-Yor Liquidation for Liquid US Equities

Backtest period 2020-01-01 to 2024-07-01 · hypothetical, net of modelled costs

Why these figures are not the paper's (3)

The paper reports no results of its own

This is a theoretical paper — derivations and proofs, with no measurement on market data. The backtest below is a strategy we built from its idea, not a test of anything the authors claimed.

This is not a replication of the paper (2)

  • The theoretical stopping rule assumes continuously observed diffusion paths, whereas the platform observes only daily or one-minute OHLCV bars. Implement the rule as a discrete-bar approximation using bar high/low/close information; this tests a discretized implementation rather than exact continuous-time barrier hitting.
  • The assumed GBM/diffusion dynamics and their drift and volatility parameters must be estimated from historical prices and are unlikely to be stable for individual equities.

The figures below measure what we could run, not the paper's own method, so they are not evidence for or against its claim.

Our own audit found this run does not follow the paper faithfully (7)

  • deviation left undescribed by the audit (invalidates: Exact attainment X_tau ~ F under continuous-time GBM; almost-sure finite stopping-time behavior cannot be verified within the finite daily sample; the exact continuous-monitoring maximum-distribution property)
  • deviation left undescribed by the audit (invalidates: Exact attainment X_tau ~ F; exact Azema-Yor maximum first-order stochastic-dominance result)
  • deviation left undescribed by the audit (invalidates: The empirical claim that the implemented rule maximizes the running maximum in first-order stochastic dominance)
  • deviation left undescribed by the audit (invalidates: Empirical proof of almost-sure finite stopping; unconditional empirical equality X_tau ~ F over all initiated trades)

3 further finding(s) are described in the note.

These are our findings about our own implementation, not criticisms of the paper. Read the figures below as a description of what we ran.

Jan 2020Total 60.8%Jul 2024
Sharpe
0.59
Total Return
60.8%
Max Drawdown
-39.2%
CAGR
11.2%
Volatility
22.9%
Beta vs SPY
0.61
Trades
119

Carr and Sturm derive an exact selling rule under geometric Brownian motion, yet running it requires three unavailable inputs: the asset's true drift, the seller's subjective discount rate, and a complete distribution for the discounted sale price. The final rule could be coded before lunch. The difficult work comes earlier. The paper aims to reflect the seller's preferences while avoiding "the use of utility functions that are hard to estimate in practice". In their place, it requires two parameters and an elicited distribution.

The paper reports no empirical result of its own. There are no data, sample period, simulation study, or comparison with other selling rules. Its numerical content consists of two hand-chosen parameter sets and the quantities derived from them. We make no comparison between our figures and theirs because the paper supplies no such figures.

The payoff comes first

The central substitution is direct. Rather than assume a utility function and maximise expected utility across stopping times, the seller specifies the desired proceeds. She chooses a distribution F for the discounted price at sale. The paper uses the distribution builder of Sharpe, Goldstein and Blythe, which elicits a target distribution directly in place of a risk aversion coefficient.

The resulting question asks whether an almost surely finite stopping time tau exists such that X_tau has distribution F. This is the Skorokhod embedding problem inside the asset's own diffusion.

The paper distinguishes two demands. A distribution F is attainable when some stopping time produces it exactly. It is super-attainable when a stopping time produces a distribution that dominates F in first order. Under super-attainability, the seller may discard a random non-negative amount, an operation the paper compares with superhedging. The weaker standard can therefore deliver a payoff different from the one originally specified.

Under geometric Brownian motion, with discounted dynamics dX = (mu - r) X dt + sigma X dW, feasibility reduces to one exponent. A distribution over the positive reals is attainable if and only if the integral of (z/x)^A against F is at most 1, where A = 1 - 2(mu - r)/sigma^2. The paper calls distributions optimal when the condition holds with equality. Every later result in the GBM section follows from the location of A.

Where can waiting pay?

There are three regimes. When mu - r is at least sigma^2/2, A is at most 0. Every distribution is then super-attainable, leaving no reason to schedule a sale. When mu is at most r, A is at least 1. Every super-attainable distribution then has a mean no greater than the current price x, so immediate sale follows. An optimal target can have a mean above the current price only in the middle band, 0 < mu - r < sigma^2/2, which gives 0 < A < 1. The extra mean comes with dispersion.

A mean-variance frontier emerges inside that middle band. For a log-normal target, attainability becomes m^{2(2-A)} <= x^2 (m^2 + s^2)^{1-A}. Carr and Sturm plot the attainable frontiers for log-normal, Pareto and gamma targets at A = 0.2, 0.5 and 0.8, using x = 1. Their standard deviations run from 0.3 to 1.0 and their means from 1.00 to 1.30.

The axes matter. The plotted region ends at a mean of 1.30 with x = 1 and s as high as 1.0. Log-normal, Weibull and Gamma targets permit arbitrarily large means as variance increases. Pareto targets have a ceiling, m <= 2x((2-A)/2)^{1/A}. At A = 0.11, my arithmetic puts that ceiling at roughly 1.20x the current price. Distributional shape constrains the frontier beyond the first two moments.

A barrier with expensive inputs

The stopping rule comes from the Azéma-Yor construction, carried into GBM through the log transform and the Grandits and Falkner result for drifted Brownian motion. Track the running maximum M_t of the discounted price. Sell the first time that M_t reaches a barrier Psi(X_t), evaluated at the current price.

For a log-normal target, the barrier is a ratio of standard normal CDFs raised to the power 1/A and scaled by exp(b + a^2 A/2). The Pareto barrier is piecewise linear: it stays flat at x below x0, then becomes (x/x0)z. The middle band 0 < mu - r < sigma^2/2 also yields a closed form for expected sale time. It equals 2/(sigma^2 - 2(mu - r)) times the integral of log(x/z) against F, provided the integral of |log z| against F is finite.

Both illustrations begin from X0 = 100, mu = 0.05, r = 0.01 and sigma = 0.3, producing A of about 0.11. With a = 0.8, the log-normal target has a mean of about 132.90 and a standard deviation of about 125.84. Its expected sale time is about 7.11. The Pareto target uses tail index 3.5, has a mean of about 104.72 and a standard deviation of about 45.70, with expected time about 0.93.

The asset and regime are identical, yet the holding periods differ by a factor of roughly eight. Distributional shape drives the holding period at least as forcefully as the location on the mean-variance frontier. The illustrations each show a single sample path, and their captions identify the chosen parameters.

Sensitivity is where the rule becomes hard to trade.

At sigma = 0.3, the entire middle band for excess drift is only 0 to 0.045 wide. With one year of daily data and that volatility, the standard error of a drift estimate is about 0.30. The band spans about 15 per cent of one standard error. In the illustration, the expected-time denominator is 0.09 - 0.08 = 0.01. Its prefactor is therefore 2/0.01, or 200, and diverges near the boundary.

The parameter r brings another estimation problem. It represents the seller's own time preference. The paper explicitly says that r need not equal a riskless rate and that its analysis uses no hedging arguments at all.

Bounded horizons narrow the result further. An optimal log-normal target can be reached before T when a^2 <= sigma^2 T. For a = 0.8 and sigma = 0.3, T is about 7.1 in the units used for mu and sigma, meaning years when they are annual. In the Pareto case, no tail index satisfies the sufficient condition. The Weibull condition fails for every finite T. These are sufficient conditions only, so failure does not establish infeasibility. A seller facing a deadline receives a result for log-normal targets satisfying a^2 <= sigma^2 T. The propositions offer no answer for Pareto at any p or Weibull at any finite T.

One contrast belongs on a trading desk. In Pedersen and Peskir and in Leung and Wang, the optimal barrier may lie above the initial price and never be reached. A non-hitting event contributes zero. Carr and Sturm describe those stopping times as defective and instead require almost sure finiteness. We view the running-maximum barrier as the cost of imposing that requirement. Their rule always produces a sale. An upper-price-target rule may leave the position open.

The choice of dynamics can collapse the recommendation. For drifted arithmetic Brownian motion, the intermediate regime disappears entirely. Under Ornstein-Uhlenbeck and exponential Ornstein-Uhlenbeck dynamics, the scale function is unbounded in both directions, making every distribution attainable. In the paper's words, one would "never sell the asset". Modelling a single stock as log mean-reverting therefore produces degenerate liquidation advice in this framework.

Our daily approximation

The rule assumes continuous observation of a diffusion, while our data consist of daily bars. We approximated it in discrete time. The running maximum was updated from discounted daily highs, and the barrier was tested at discounted closes. This exercise tests a discretised rule rather than exact continuous-time hitting. Historical estimates must supply the GBM drift and volatility, neither of which is stable for individual equities.

We introduced two additional choices. The paper begins with a seller who already owns the asset at X0 = x and contains no entry rule, so we used the regime test as a monthly buy signal. We also fixed the target scale a at one estimated volatility-year. This choice forces a model-implied expected sale time of one year. Carr and Sturm take F from the seller. We manufactured it.

Our universe contains the top 50 US non-ADR stocks by trailing one-year dollar volume. Entries occur monthly on the first trading day and require 0 < mu-hat - r < sigma-hat^2/2. Estimates use a 252-day window, cut off at the previous close. We set the subjective discount rate at 1 per cent. Positions are equal weight with a 10 per cent cap, using daily bars from 2020-01-01 to 2024-07-01.

The resulting book returned 60.77% in total from 2020-01-01 to 2024-07-01. Sharpe was 0.59, Sortino 0.83 and Calmar 0.28. Annualised volatility reached 22.95%, with a maximum drawdown of -39.16%. These are our figures from a construction inspired by the paper, rather than a test of the paper itself.

Three limitations keep those figures narrow. First, the book is long-only and equal-weighted across a period containing the March 2020 crash and a large-cap bull market. We attribute most of the 22.95% annualised volatility and -39.16% maximum drawdown to the market, although the run cannot separate the stopping rule's contribution from the market's.

Second, the executed run charged $0.004 per share, subject to a 1 per cent commission cap, and assumed zero modelled slippage. We had intended to charge 2 bps commission plus 3 bps slippage per side. The looser executed assumptions flatter exits.

Third, positions lacking a barrier hit at the end of the sample are right-censored. The almost sure finiteness that separates this rule from a defective barrier cannot be tested over four and a half years. A weak result from this run bears on our entry rule and invented target. Theorem 3.1 remains untouched.

We previously used a path-dependent boundary as an entry filter in our note on a drawdown floor and the Kelly fraction, where we constructed an ETF strategy around it. The same warning applies in both cases: the paper supplied a constraint, and we supplied the trade.

The feasibility result survives

The characterisation is the paper's defensible contribution. It reduces the possibility of holding out for a chosen payoff distribution to a single moment inequality in A. It also separates target families that allow unbounded means from Pareto targets that impose a ceiling. Practitioners often approach the same question with a price target and a shrug; this is a cleaner answer.

The barrier is far less likely to survive estimation error. At the illustrative parameters, A is about 0.11. Misestimating drift by half a percentage point changes the recommendation to never sell.

The paper states that all its content was completed before Carr's death and that Sturm made only minimal edits. An empirical extension remains open. Evidence that the regime test, estimated through a trailing window, sorts realised liquidation outcomes across a wide equity cross-section would change my view. The paper cites the distribution-builder literature without showing that elicited distributions remain stable. An elicitation study would supply the other half of the evidence.

Our backtest stops at 2024-07-01, and everything after that date is deliberately left untouched so the same strategy can be checked out of sample later.

How our backtest worked

The steps the code we ran actually executed, from its strategy card. Ours, not the paper's — it is one automated implementation of the idea, not the authors' own.

On the first trading day of each month, for each annual point-in-time universe member:
    1. Require no existing position and 252 valid closes ending at the prior session.
    2. Estimate log returns q = log(C_t / C_{t-1}).
       sigma = std(q) * sqrt(252)
       mu = 252 * mean(q) + sigma² / 2
       A = 1 - 2 * (mu - r) / sigma²
    3. Enter only if sigma &gt; 0 and 0 &lt; mu-r &lt; sigma²/2.
    4. At the current close, set x equal to the observed entry close.
       a = sigma * sqrt(1 year)
       b = log(x) - A*a²/2
       Validate exp(A*(b + A*a²/2)) / x^A = 1 within 1e-10.
    5. Buy at the close, equal-weighted subject to a 10% position cap,
       one open position per symbol, and the portfolio leverage constraint.
    6. Freeze mu, sigma, A, a, b, and r for the life of the trade.

For each subsequent daily observation:
    t = calendar days since entry / 365.25
    X_t = close_t * exp(-r*t)
    H_t = high_t * exp(-r*t)
    M_t = max(x, H_1, ..., H_t)
    Compute the stable log-normal barrier Psi(X_t) using Gaussian log-CDFs.
    If M_t &gt;= Psi(X_t), sell at that session's observed close.

If no hit is observed by the sample end, retain the trade as right-censored.
In parallel, track shadow exits at 252 trading days and at a 20% discounted trailing-stop drawdown.