Strategy S2c (hedge-harvest / grid) — pre-implementation smell test — 2026-06-01

Status: exploratory research / learning capturenot a build gate. Third sibling to the S2a
(trend) and S2b (mean-reversion) smell tests. Explores the maintainer’s idea: in “relatively calm”
markets, open both a long and a short (delta-zero), then close legs when profitable and
“close/re-open to mark intermediate profits”, holds 1d–1mo — “worst case 0 minus fees”.

⚠️ This is NOT a backtest. In-sample, single-window, optimistic fills (the grid assumes every
limit order fills at its level — real maker fills suffer adverse selection / missed fills). Grid
funding omitted (negligible at fine resolution). The grid’s positive net is regime-flattered (the
sample ended up). Numbers perishable (~2026-06-01). Re-run: make smell-test-grid.

Question

Four things the maintainer wanted to understand: (1) can you “harvest” PnL from a both-legs hedge in calm
markets; (2) does closing legs to “mark intermediate profits” work; (3) does it need fine-resolution
data
(“you can’t see these oscillations on a zoomed-out candle graph”); (4) what are the legitimate
versions (symmetric grid, trend-stopped grid, the literal ratchet, pairs)?

The core result: you cannot manufacture PnL from a delta-zero position

Holding long 1 + short 1 of the same instrument over the full BTC history:

cumulative PRICE PnL (long+short): +0.000000%   ← identically zero, every day, by construction
cumulative FUNDING PnL:            +0.000000%   ← long pays it, short receives it → cancels

While both legs are open there is nothing to harvest — the price legs cancel exactly, the perp
funding cancels exactly, and the only PnL is the fees you pay (~0.28% per round-trip pair). “Worst case
0 minus fees” is also the best case. The instant you “close the winner to bank it”, you hold the
losing leg, naked and directional — the hedge is gone and you’ve made a bet that price reverts. So
acted upon, the idea becomes a directional / mean-reversion bet (= S2b) plus double the fees. Any
“harvest” is a risk you’ve taken on somewhere — there is no free lunch in a hedge.

The legitimate version is a GRID — and resolution is the whole story

“Close the winner, hold the loser, wait for reversion, repeat” is grid trading. A long grid (buy
each −g dip, sell each lot +g up) genuinely harvests — and the maintainer’s instinct that you need fine
resolution
is half right. Same 90-day BTC window (B&H +4.9%), grid run at every timeframe, taker vs
maker
fills:

timeframegrid gharvestsTAKER netMAKER net
1d1%22+0.6%+0.8%
4h0.5%110+2.6%+3.8%
1h0.5%193+4.2%+6.2% ← best
15m0.2%523−1.3%+4.0%
5m0.1%806−7.7%+0.4%
1m0.05%1,658−17.9%−3.2%
1m0.2%703−4.2%+2.9%

Reading this is the lesson:

  • Finer resolution → far more oscillations. Harvests go 1d ~15 → 1m ~1,100–1,658. The oscillations
    the maintainer suspected are real and multiply at fine scale. ✅
  • But every harvest must clear the fee hurdle (taker ≈ 0.14% round-trip; maker ≈ 0.04%). With taker
    fees, finer = worse — at 1m the oscillation amplitude is far below 0.14%, so 1,658 harvests lose
    −17.9%. ❌
  • A grid is naturally a maker/limit strategy. With maker fees the picture flips positive — but the
    sweet spot is intermediate (~1h / 0.5% → +6.2%), not the finest: at 1m even maker fees barely break
    even (the amplitude drops below ~0.04% too).
  • Even the best grid barely beats buy-and-hold (+6.2% vs the window’s +4.9%) — on optimistic fills
    (no adverse selection / no missed limits) and with −8…−13% inventory drawdown, in a benign regime.

Verdict on the resolution hypothesis: correct that fine resolution surfaces the oscillations — but
harvesting them is a fee / microstructure game (maker rebates, fill quality, latency, co-location),
not a “free money in calm markets” game. The binding constraint is cost, not oscillation count.

Long grid, full daily history (2% spacing):

symbolgrid netbuy & holdmaxDDend state
BTC+122%+773%−32%full-long (10/10 lots)
ETH+112%+1,529%−29%full-long
SOL+130%+3,101%−42%full-long

It books 250–470 small wins and ends net-positive — it feels like it works — but captures a small
fraction of buy-and-hold
(BTC ~1/6th, SOL ~1/24th: it sells winners early) and ends holding a full
inventory bag. The regime split is the tell:

BTC, 2% gridnetB&HmaxDD
Ranging (2023-04→2024-02)+17%+50%−3%
Bear (2022)−35%−64%−45% (maxed long, riding it down)

Classic short-gamma: profits in ranges (tiny drawdown), bleeds in trends (accumulates a losing bag),
caps upside everywhere. Its full-history net is positive only because the sample ended up — the terminal
bag was bailed out by the bull.

The four probes

ProbeResult
Symmetric long/short grid (harvest both ways)RUIN on BTC/ETH/SOL — the short side’s loss is unbounded in a bull market (a real account is liquidated). +121% long-only → wiped.
Grid + trend stop (flatten below 200-MA)Cuts drawdown (−33%→−20%) but also return (+121%→+33%); still far below B&H. A stop trades return for risk — it doesn’t create edge.
Literal ratchet (open both, bank a leg at +θ, re-open, repeat)RUIN. Stays delta-hedged yet bleeds: banking fixed +θ steps undercounts the loser leg’s compounding loss, and that leg would liquidate. “Marking intermediate profits” actively destroys value — reinforcing the core result.
Pairs (OLS hedge ratio, spread z-score)All negative (−90…−100%): ETH/BTC −90% (Sharpe −0.63), SOL/ETH −100%, SOL/BTC −99%, BNB/ETH −99%. No crypto pair is stationary enough — the spreads trend; naive stat-arb gets run over.

Verdict

Yellow→red — and the most conceptually valuable of the three. Proven three ways (the no-op hold, the
bleeding ratchet, the arithmetic) that you cannot conjure PnL from a delta-zero position; every version of
“harvest the hedge” collapses into something that isn’t free:

  • a directional bet (the naked leg = S2b, plus fees),
  • a grid (a sell-volatility bet — capped upside, an inventory tail, viable only with maker fills at
    intermediate resolution, and even then it barely beats buy-and-hold on optimistic assumptions), or
  • a pairs/spread bet that needs real cointegration, which crypto lacks.

The deep lesson — a hedge has no harvestable PnL; resolution surfaces oscillations but the fee hurdle and
fill quality decide everything
— is one of the most important in trading, and the maintainer reasoned
their way to the doorstep of it. The value here is the learning, not a deployable strategy.

Reproduce

Read-only, no auth, writes nothing. Source of truth: bot/src/richie_bot/cli/smell_test_grid.py (golden
self-test first: asserts the double-leg nets exactly 0, and that a grid harvests on an oscillation but caps
upside on a trend). The --only resolution 1m pull is the slow part (~1–2 min).

make smell-test-grid                                   # all sections (reproduces this memo)
make smell-test-grid ARGS="--only resolution --res-days 90"
make smell-test-grid ARGS="--only pairs"

See also

  • docs/research/2026-06-01-strategy-2-smell-test.md (S2a trend) and
    …-strategy-2b-mean-reversion-smell-test.md (S2b). Contrast: S2c is where the “harvest” idea
    reduces to a directional bet (S2b), a grid, or pairs — there is no separate free edge.
  • docs/research/2026-05-30-binance-funding-screen.md — the one genuinely market-neutral edge Richie
    does run (funding capture): it’s contractual, not a price-oscillation harvest.