Skip to content
Canli Capital

Research

Crypto perpetual carry: trial lineage, capacity failure, and live evidence boundary

Short title: AlphaForge crypto carry: complete trial lineage

Author: Arhan Canli, Founder, System Architect, and Quantitative Researcher, Canli Capital
Research system: ALPHAC / AlphaForge
Family key: crypto_carry
Status: public research record; not peer reviewed; not an investment solicitation
Evidence date: 2026-08-22

Abstract

AlphaForge studies cross-sectional carry in USDT-margined perpetual futures. Its canonical signal is the negative trailing mean of observed funding rates: contracts whose longs have recently paid high funding rank as short candidates, while contracts with negative funding rank as long candidates. This paper reconciles all 25 charged hypothesis identities in the family, recorded from 2026-06-16 14:36:20 UTC through 2026-06-25 10:32:26 UTC.

The family contains a positive selected historical artifact and later carry/blend experiments that do not validate deployment. The selected weekly carry_fund_21 walk-forward grew a simulated $100,000 to $138,236.27 from 2022-02-08 through 2026-06-01, with annualized Sharpe 0.6766 and maximum drawdown 19.60%. It nevertheless failed its own DSR gate. A later eight-configuration grand matrix reported PBO 0.8818, no deflated winner, and a NO-DEPLOY verdict—but seven of its eight identities are a broad crypto multi-factor engine, not pure carry. Its capacity sweep is therefore system-level context and cannot establish carry capacity. The sole carry-tilted matrix arm reported Sharpe 0.0618.

The forward record is weaker still. AlphaForge is a locally simulated paper broker, not an Alpaca account and not externally attested. Its first live configuration was signal-dead; funding cashflows were omitted until a forward-only repair; its intended hourly loop has completed only 40.8% of expected cycles; and the stored live universe remains frozen at 2026-06-01 with four commodity-linked contracts among 20 members. The correct conclusion is not that crypto carry is a validated sleeve. It is an incumbent paper experiment with a plausible mechanism, severe selection and capacity evidence, known operational defects, and an unmet forward burden of proof.

Claim boundary

This paper supports five claims only:

  1. The funding-carry hypothesis and point-in-time implementation can be stated precisely.
  2. Every charged family identity is enumerated in a public machine-readable manifest.
  3. The selected positive artifact and later negative carry/blend evidence are published together.
  4. A related multi-factor engine's capacity degradation is contextual evidence only and is not presented as carry capacity or investable capacity.
  5. The paper record, defects, corrections, and unresolved production gaps are disclosed.

It does not establish a forward Sharpe, expected maximum drawdown, future return, live-money performance, riskless arbitrage, or externally verified execution. It does not establish that the current live universe is the same strategy as the selected historical artifact.

Economic mechanism and falsifiable hypothesis

Perpetual futures have no expiry date, so exchanges use recurring funding transfers to pull the contract toward its reference index. When the funding rate is positive, long holders pay short holders; when it is negative, shorts pay longs. A cross-sectional carry strategy therefore takes the opposite side of expensive positioning: it shorts persistently positive-funding contracts and buys persistently negative-funding contracts.

The mechanism is compensation for constrained arbitrage, speculative demand, margin and liquidation risk—not a guaranteed convergence trade. It is falsified for this implementation if a point-in-time, net-of-fee, impact-aware walk-forward cannot remain positive after the complete search is charged, if the return disappears at useful capital, or if operational constraints make the intended decisions untradeable.

The literature supplies a prior, never proof of this implementation:

  • He, Manela, Ross, and von Wachter show how funding anchors perpetuals to spot while margin, liquidation, and trading frictions prevent a riskless arbitrage interpretation (Fundamentals of Perpetual Futures).
  • Ackerer, Hugonnier, and Jermann develop no-arbitrage pricing for perpetual futures and the funding mechanism (NBER working paper).
  • Schmeling, Schrimpf, and Todorov document large, time-varying crypto carry and connect it to trend chasing and scarce arbitrage capital (Crypto Carry).
  • Gornall, Rinaldi, and Xiao emphasize basis risk, constrained arbitrage capital, and speculative demand in perpetual markets (Perpetual Futures and Basis Risk).
  • Chi and coauthors find that basis is the strongest of the crypto-futures cross-sectional signals they study, while signal frequency matters (Journal of Futures Markets, 2023).

These sources do not validate ALPHAC's market data, universe, costs, trial selection, or paper execution.

Exact ALPHAC implementation

For instrument i, decision time t, and the last K funding settlements known by t, the historical feature is:

carry(i,t) = -mean(funding_rate(i, settlements <= t)) * 3 * 365

The negative sign makes a high positive funding rate unattractive to a long position. The factor uses a backward point-in-time as-of join: only settlements whose stored publication timestamp is available by t may enter the feature. carry_fund_21 uses 21 settlements, historically about seven days at three settlements per day; carry_fund_90 uses 90 settlements, historically about 30 days.

The 3 * 365 annualization is an implementation assumption, not a universal exchange rule. Binance exposes fundingIntervalHours because intervals can be adjusted. Its official market-data API separately exposes funding history and current interval information (Binance USD-M Futures market data). The ranking sign and settlement count remain meaningful when intervals change, but the annualized scale is then approximate unless the contemporaneous interval is applied. This limitation is disclosed rather than silently treating every period as eight hours.

The selected artifact uses rank allocation, 25 legs, weekly rebalancing (168 hourly bars), a 10-basis-point no-trade band, 6,048 training bars, 1,512 test bars, 72 purge bars, and 168 embargo bars across 58 Binance perpetual instruments. Other charged identities change the funding horizon, blend, cadence, allocator, no-trade band, or regime treatment. Each change remains a distinct hypothesis identity even though all belong to one economic family.

Trial lineage

The public manifest binds 25 distinct return identities to crypto_carry. The labels below sum exactly to the family total; they are an accounting view and do not collapse the trial denominator.

Machine-label group Charged identities Research question
carry_fund_21 10 Primary seven-day funding rank under cadence, allocator, band, and regime changes
carry_fund_21 + carry_fund_90 + carry_z_252 3 Whether three carry horizons improve robustness
carry_fund_21 + carry_fund_90 + carry_z_252 + carry_mom_21_63 6 Whether carry dynamics add information across the original and recovered legacy ledgers
carry_fund_90 2 Whether a slower funding window is more persistent
carry_z_252 2 Whether long-window normalization improves ranking
carry_fund_21 + carry_fund_90 + carry_mom_21_63 1 Whether a reduced dynamic blend improves carry
carry_fund_21 + carry_fund_90 + mr_res_72 1 Whether a carry-plus-residual-reversal tilt improves the multi-factor engine
Total 25 Every identity remains charged to the union search burden

Twenty-one identities use the original crypto-perpetual research profiles. Four recovered legacy identities were filed with their durable result artifacts: one original carry experiment, two shorter-window carry experiments, and the grand matrix's carry-plus-reversal tilt. Their recorded annualized Sharpe observations range from -1.3945 to +0.6766. That range is not a confidence interval; it is direct evidence of specification sensitivity.

The machine-readable source of truth is /glassbox/trial_packet_manifest.json. Select identities where research_family_key equals crypto_carry; each row includes its exact hypothesis key, immutable first measurement, source ledger, paper binding, and missing packet sections.

Results and decisions

Selected historical survivor

The persisted crypto_carry_wk artifact covers 1,575 daily observations from 2022-02-08 through 2026-06-01. It reports:

Measure Persisted value
Initial / final simulated equity $100,000 / $138,236.27
Total return / CAGR 38.24% / 7.80%
Annualized Sharpe / volatility 0.6766 / 11.83%
Maximum drawdown 19.60%
Annual turnover 33.22x
Fees paid $7,372.72
Net funding cashflow $19,500.02
DSR / DSR gate 0.0386 / failed

Funding contributed roughly half of the artifact's dollar gain. The result is therefore mechanically dependent on accurate funding settlement and cannot be validated by a live ledger that records price and fees but omits funding. The full-history Sharpe also hides a severe 2022 tail: the recorded 2022 segment was approximately -1.63 Sharpe and the full artifact's maximum drawdown was 19.60% around the LUNA/FTX period.

Related system-level robustness study

The later grand backtest used a 2021-01-01 through 2026-06-01 window and eight distinct configurations. It must not be described as a pure carry replication. Seven configurations use the engine's default, broad crypto multi-factor signal set (alpha_names: null) while varying ML, regime, cadence, band, or allocator. Only the eighth explicitly tilts to carry_fund_21 + carry_fund_90 + mr_res_72, and that arm reported Sharpe 0.0618. The seven multi-factor configurations belong to the separate crypto_multifactor_engine research family; the carry-tilted arm remains charged to crypto_carry because carry is its primary named input.

All four Block A multi-factor variants produced the same Sharpe 0.0424 and DSR 0.2112 at $1 million. Other multi-factor variants reported annualized Sharpes of -0.7901 for daily rebalancing, -0.1994 for the tighter 10-basis-point band arm, and -0.0946 for MVO. None cleared DSR 0.95.

Cross-sectional-combinatorial validation reported PBO 0.8818 against a gate below 0.20. There was no deflated winner and the persisted verdict is NO-DEPLOY (honest null). Regime and ML labels did not rescue the result; the regime path was substantially inactive during cold-start periods, so equality of outcomes is not evidence that regimes never matter.

The selected carry artifact and broad multi-factor matrix are not interchangeable. The matrix is preserved because it contains one carry-tilted arm and valuable system-level stress evidence, but its baseline, PBO, winner decision, and capacity curve cannot be represented as a direct institutional re-grade of carry_fund_21. The carry-specific conclusion comes from the weak 0.0618 tilted arm, the recovered legacy carry experiments, the complete 25-identity lineage, and the failed selected-artifact DSR—not from relabelling a broader system as carry.

Capacity: related-system decay, not measured carry capacity

The grand matrix's capacity sweep varies capital for its default broad multi-factor configuration without adding a new return hypothesis:

Initial capital Sharpe DSR Maximum drawdown Final equity
$100,000 0.4009 0.4803 13.14% $118,509.86
$1,000,000 0.0424 0.2112 13.59% $993,219.39
$10,000,000 -0.3720 0.0460 22.69% $8,043,578.96

This is evidence that the related engine is highly sensitive to market impact, not a measurement of pure carry capacity. The broad engine's edge is almost absent at $1 million and negative at $10 million under the committed model. Carry capacity is unmeasured: no persisted carry-specific capital sweep exists. It remains unestablished until a preregistered carry sweep and forward fills, order-book depth, venue fragmentation, and financing are observed at the intended scale.

Forward paper record and dated corrections

AlphaForge uses ALPHAFORGE_PAPERBROKER: locally simulated fills against live exchange order books with a local ledger. It is paper-only, not an Alpaca account, not live money, and not externally attested. ALPHAC's public composite is derived from its sleeves and is not itself a broker account.

The following defects materially limit interpretation:

  • Signal-dead start, corrected 2026-07-05. From 2026-06-23 through 2026-07-05 the public explanation said carry was compressed. The actual cause was a wiring bug that blended equity-fundamental factors—undefined for crypto—into the signal and invalidated every cycle. The loop was then restricted to carry_fund_21 with weekly rebalancing and signal-health logs.
  • Funding omitted, repaired forward-only. The live paper broker initially moved cash only on fills, so the mechanism's funding cashflows never reached the account. A live settlement path was added with point-in-time publication filtering and tests. Historical marks were not restated, which preserves continuity but leaves the early record economically incomplete.
  • Structural venue availability. As of the public state generated 2026-08-22, the loop had completed 531 of 1,302 expected hourly cycles, or 40.8%. A strategy that is unmanaged for most intended cycles is not meaningfully continuous even when its observed marks are retained.
  • Commodity contamination remains unresolved. The 2026-08-22 store still contains a 20-member universe effective from 2026-06-01. Four contracts—XAU, XAG, CL, and BZ—reference gold, silver, WTI, and Brent rather than cryptoassets. Removing them would change the strategy and therefore requires preregistration and remeasurement, not a silent filter.
  • Universe refresh remains unresolved. The newest stored crypto membership decision is 2026-06-01; the July and August decisions are absent. Catch-up logic exists in LiveLoop, but the production constructor does not pass a universe refresher. The current live book therefore remains based on stale liquidity membership. No missed historical rebalance is reconstructed.

These corrections are evidence about process quality only if they remain visible and are pinned by tests. They are not evidence that the return process is profitable.

Selection, diversification, and governing targets

The family is one economic sleeve candidate, not 21 independent sources of alpha. Every return hypothesis remains charged to the union ledger. It also cannot receive diversification credit from old correlations measured before commodity-linked contracts overlapped AlphaTrend's metals and energy exposures. Correlation must be remeasured on the actual contemporaneous books and stressed in risk-off periods before any sleeve-count or diversification claim is made.

The governing objective is an honest forward Sharpe of 1.5, expected maximum drawdown near 11%, and a diversified book of up to 14 sleeves. Crypto carry has established none of those targets. Its selected historical maximum drawdown already exceeds the program objective, its institutional re-grade is a null, and its forward execution record is too short and discontinuous to estimate a reliable Sharpe.

Reproduction map

Primary implementation and evidence paths:

  • src/alphaforge/features/library/carry.py — point-in-time funding features.
  • src/alphaforge/data/sources/ccxt_source.py — funding interval metadata ingestion.
  • src/alphaforge/execution/paper.py and src/alphaforge/live/loop.py — paper fills and live funding settlement.
  • docs/design/alphaDesign.md — original signal and annualization contract.
  • var*/experiments.jsonl and the four recovered artifacts/**/experiments.jsonl ledgers — immutable charged identities in the canonical durable union.
  • artifacts/walkforward/crypto_carry_wk/walkforward.json — selected historical survivor.
  • artifacts/grand_backtest/20260616T143620Z/matrix.json and verdict.md — related multi-factor robustness, PBO, capacity, and no-deploy context; only C_carry is carry-tilted.
  • artifacts/research/trial_packet_manifest.json — exact family/identity join and packet debt.
  • /glassbox/crypto_carry_selected_walkforward.json — public selected-artifact payload.
  • /glassbox/crypto_carry_grand_matrix.json — public grand-matrix payload.
  • /glassbox/crypto_carry_2022_tail.json — reproducible UTC-daily 2022 tail derivation.

Reproduction requires the pinned project environment and the underlying market-data lake. Public artifacts permit claim auditing; they do not imply that every venue dataset can be redistributed.

Packet completeness and legacy limitations

This family paper verifies shared identity, authorship, mechanism, literature, family accounting, and stable-publication sections for 25 identities. It does not retroactively manufacture identity-level preregistrations, return series, exact environment snapshots, or complete rerunnable data bundles. The manifest must therefore continue to mark all 25 trial packets incomplete until every missing required section is proved. A family-paper binding is not a completed packet.

Decision

Research decision: retain AlphaForge only as an incumbent paper experiment under observation; do not describe the historical edge as validated; do not claim positive $10 million capacity; and do not admit this family under the current evidence.

Operational decision: fail closed on promotion while the live universe is stale, commodity classification is unresolved, and intended-cycle continuity remains structurally weak. Preserve all prior marks and corrections; repair forward without reconstructing decisions that never ran.

Publication decision: publish the positive survivor, failed DSR, weak carry-tilted matrix arm, the broader engine's PBO 0.8818 and capacity decay with an explicit non-carry label, live execution provenance, and unresolved defects together under Arhan Canli's authorship. Future promotion requires continuous forward evidence under a frozen, accurately named specification and independent scrutiny—not a more favourable retrospective window.