Skip to content
All strategies

Strategies

Hummingbot HedgeAssetController: SOL Inventory Hedge with Exact Zero-Ratio Defaults

Outcome: Abandoned

SolHummingbotZeroRatioInventoryHedge

Outcome Summary

SolHummingbotZeroRatioInventoryHedge preserved Hummingbot’s zero-ratio SOL hedge defaults with a fixed spot inventory fixture worth 20% of starting capital. Sandbox verification evaluated 1,439 one-minute bars and produced the expected zero hedge trades. After three iterations, the strategy was abandoned at Layer 3 for producing no trades; backtest review, optimization, analyst review, and risk review were not reached.

Hypothesis

Faithful port of HedgeAssetController by hummingbot, Apache-2.0, from https://github.com/hummingbot/hummingbot/blob/9af100d6822da7d2d0291a906c730ef172284ee2/controllers/generic/hedge_asset.py. Maintain a short SOL perpetual position equal to the configured fraction of existing Binance spot SOL inventory. Preserve hedge_ratio=0, min_notional_size=10, cooldown_time=10.0 seconds, leverage=20 and total_amount_quote=0 exactly. The source requests HEDGE mode but manages only a short position; faithfully substitute the……Show moreShow less

Faithful port of HedgeAssetController by hummingbot, Apache-2.0, from https://github.com/hummingbot/hummingbot/blob/9af100d6822da7d2d0291a906c730ef172284ee2/controllers/generic/hedge_asset.py. Maintain a short SOL perpetual position equal to the configured fraction of existing Binance spot SOL inventory. Preserve hedge_ratio=0, min_notional_size=10, cooldown_time=10.0 seconds, leverage=20 and total_amount_quote=0 exactly. The source requests HEDGE mode but manages only a short position; faithfully substitute the platform's single net short position, with BUY adjustments reducing it without opening a long. SOLUSDC spot is the inventory reference; SOLUSDT perpetual is the traded hedge. The controller does not buy spot inventory. For an isolated research fixture, initialize spot SOL inventory worth 20% of starting capital at the first available spot price, deduct its purchase value from cash, and keep its quantity constant; this is an explicitly chosen account initialization, not a source entry rule. Evaluate at each 1-minute perpetual bar close using current account inventory and that close as the market-price proxy. This sampling preserves the strict 10-second cooldown condition but does not reproduce continuous sub-minute polling. With the exact default hedge ratio of zero and no initial short, the correct result is no hedge trades. Do not change the ratio or invent signals to satisfy a trade-count gate.

The submitted source fixes SOL and Binance, so preserve them despite Binance's portfolio overweight. Spot/perpetual exposure management adds a distinct cross-venue mechanism rather than another directional indicator strategy. Corpus concentration is unavailable because the supplied map is empty. Performance history cannot justify changing the source's zero hedge ratio or declining a testable controller.

verification_loop: Verification failed (Layer 3 — sandbox backtest): No trades produced Bar type used: SOLUSDT.BINANCE-1-MINUTE-LAST-EXTERNAL, Bars processed: 1439 Diagnostics: should_enter() returned a side 0 times over 1439 evaluated bars -> your ENTRY CONDITION never triggered. Loosen the entry logic / thresholds. Ensure your strategy produces trades with the given data and parameters.

Implementation

Faithful short-only SOL inventory hedge controller evaluated at aligned one-minute closes. Preserves zero hedge ratio, 10 quote-unit minimum adjustment, strict 10-second cooldown and 20x collateral leverage. Tracks a constant-quantity, 20%-of-capital spot inventory fixture separately from venue accounting. The exact defaults correctly produce no hedge trades.

Layer 3 observed the behavior explicitly required by the hypothesis: zero ratio and zero initial short imply zero hedge gap, below the fixed minimum notional. Loosening entry or changing the ratio would violate the frozen research contract. The smallest revision adds a scalar expected-idle diagnostic while preserving previously passing imports, signal logic and order rules. This cannot resolve the generic minimum-trade gate; engineering must evaluate this controller with a contract-specific zero-trade acceptance……Show moreShow less

Layer 3 observed the behavior explicitly required by the hypothesis: zero ratio and zero initial short imply zero hedge gap, below the fixed minimum notional. Loosening entry or changing the ratio would violate the frozen research contract. The smallest revision adds a scalar expected-idle diagnostic while preserving previously passing imports, signal logic and order rules. This cannot resolve the generic minimum-trade gate; engineering must evaluate this controller with a contract-specific zero-trade acceptance rule. Leverage remains a collateral setting and must not multiply the source inventory target. The runner must initialize actual spot inventory and deduct its purchase value from cash before reporting portfolio performance; the strategy's fixture attributes do not modify venue balances. Same-timestamp alignment prevents future spot bars entering the calculation. No verification was run and no final-exam data was read. The required outbox file could not be written because the environment permits read-only filesystem access; this JSON carries the exact task binding for direct delivery.

Verification Results

Verification failed (Layer 3 — sandbox backtest): No trades produced Bar type used: SOLUSDT.BINANCE-1-MINUTE-LAST-EXTERNAL, Bars processed: 1439 Diagnostics: should_enter() returned a side 0 times over 1439 evaluated bars -> your ENTRY CONDITION never triggered. Loosen the entry logic / thresholds. Ensure your strategy produces trades with the given data and parameters.

Outcome Summary

Verification must accommodate expected inactivity when faithfully preserving zero-ratio defaults, rather than requiring changes that contradict the source behavior.

After three iterations, the strategy was abandoned because Layer 3 verification required trades. Zero hedge trades were the expected behavior with hedge_ratio=0 and no initial short.

Faithfully port Hummingbot’s SOL inventory hedge controller with a zero hedge ratio and a fixed spot inventory fixture worth 20% of starting capital.

Layer 3 sandbox verification evaluated 1,439 one-minute bars and produced zero trades, with no entry side returned. No return or Sharpe metrics were supplied, and optimization was not reached.

Analysis

HedgeAssetController

Backtest and paper results are hypothetical. Trading involves risk of loss.