syBTC hedge BTCETH mm

SyBTC hedge mm strategy

Version & Metadata

  • Strategy Version: 1.0

  • Last Updated: 2026-02-12

  • Backtest Period: [To be populated from data]

  • Network: Arbitrum

  • Pool: Uniswap V3 WBTC/WETH 0.05%


1. EXECUTIVE SUMMARY

SyBTC Strategy A is a concentrated liquidity market making strategy on Uniswap V3 that earns swap fees while maintaining delta-neutral exposure through Aave V3 hedging. The strategy deploys capital across 403 narrow price ranges and automatically rebalances when price exits the active range, compounding fees to maximize returns.

Key Performance Metrics

Metric
Value
Notes

Starting Equity

10.0 WBTC

Initial deposit

Ending Equity

[X] WBTC

After [N] swaps

Total Return

[X]%

Simple APR: [Y]%

Fee Capture

[X] WBTC

Gross fees earned

Borrow Cost

[Y] WBTC

Aave interest

Net Profit

[Z] WBTC

Fees - Costs

Rebalances

[N]

[MM only] / [Both]

Max Drawdown

[X]%

From peak equity


2. STRATEGY OVERVIEW

2.1 Concept

Concentrated liquidity market making on Uniswap V3 WBTC/WETH pool with delta-neutral hedge via Aave V3.

Profit Formula:

2.2 Architecture

2.3 Two-Leg Breakdown

MM Leg:

  • Deploys 2/3 of capital into Uniswap V3

  • 403 pre-configured positions, each 10 ticks wide

  • Earns 0.05% swap fees when in range

  • Rebalances only when price exits range

Hedge Leg:

  • Deposits 1/3 of capital as WBTC collateral on Aave

  • Borrows WETH to match MM's WETH exposure

  • Target LTV: 50%

  • Rebalances only when LTV >= 60% (liquidation protection)


3. MATHEMATICAL FOUNDATION

3.1 Price Mechanics

Tick to Price Conversion:

Price Normalization (sqrtPriceX96):

3.2 Capital Allocation Constraint

Safety Bound Derivation:

For a strategy benchmarked to WBTC with LTV target l:

Note: The mathematical safety bound limits LP allocation to 33.3% for LTV=50%.

3.3 Liquidity Optimization

Goal: Maximize liquidity given single-token budget

Mathematical Formulation:

Solution Approach: The optimization is solved numerically using bounded scalar optimization over the token0 budget allocation.

Example:

3.4 Hedge Mechanics

LTV Calculation:

Leverage:

Target vs Emergency:

3.5 Equity Calculations

MM Leg Equity:

Hedge Leg Equity:

Net Equity:

3.6 Exposure Calculations

Token0 (WBTC) Exposure:

Token1 (WETH) Exposure:

Verification:

3.7 Fee Accrual

Fee Formula:

Step-by-Step Example:


4. REBALANCE LOGIC

4.1 Decision Framework

4.2 Trigger Conditions

Leg
Trigger
Condition
Action

MM

Out of Range

tick < lower_tick OR tick >= upper_tick

Move to active range

Hedge

Liquidation Risk

LTV >= 60%

Reduce to 50% LTV

Neither

Exposure Drift

abs(amount1_mm - debt) / amount1_mm > threshold

IGNORED

Key Design Decision:

  • MM and Hedge rebalance independently

  • Hedge only rebalance on upper LTV bound breach (not lower)

  • No rebalance on exposure drift alone

4.3 MM Leg Rebalance Flow

4.4 Hedge Leg Rebalance Flow

4.5 Transaction Costs

Cost Components:

Type
Rate
Applied To

Swap Fee

0.05%

Every swap (Uniswap pool)

Slippage

0.05%

Every swap (execution)

Flashloan

0%

Aave/Balancer (typically)

Gas

Variable

Arbitrum network

Cost Example (MM Rebalance):

Monthly Cost Estimate:


5. OPERATIONAL PARAMETERS

5.1 Position Architecture

Parameter
Value
Details

Total Positions

403

Pre-minted NFTs

Range Width

10 ticks

~0.1% price coverage each

Tick Spacing

Adjacent

No gaps between positions

Coverage Range

262,590 - 266,620

Total span: 4,030 ticks (~40%)

Pool Fee Tier

0.05%

WBTC/WETH on Arbitrum

Position Distribution:

5.2 Capital Allocation Matrix

Phase
MM Leg %
Hedge Leg %
Total Deployed

Initial Setup

66.7%

33.3%

100%

After MM Rebalance

66.7% of equity

33.3% of equity

100%

After Hedge Rebalance

Unchanged

Adjusted to match MM

100%

Fee Accumulation

Added to MM

Unchanged

>100% temporarily

5.3 Risk Parameters

Parameter
Value
Rationale

Target LTV

50%

Optimal capital efficiency

Max Safe LTV

60%

10-13% buffer before liquidation

Liquidation LTV

70-73%

Aave protocol threshold

Max Drawdown

15%

Circuit breaker trigger

Min Position Size

Dust threshold

Avoid dust positions

Slippage Tolerance

0.05%

Execution protection

5.4 Fee Handling

Accumulation:

  • Fees tracked per token: fee_token0_accum, fee_token1_accum

  • Updated on every swap while in range

  • Fees remain in pool until collected

Collection:

  • Collected during MM rebalance (when removing liquidity)

  • Added to available capital for new position

  • Effectively compounds into strategy

Fee Impact on Returns:


6. BACKTEST VALIDATION

6.1 Methodology

Data Source: production.uniswap_v3_swap Period: [Start Date] to [End Date] Swaps Analyzed: [N] Simulation Parameters:

  • Starting Equity: 10 WBTC

  • Slippage: 0.05% per swap

  • Borrow APY: [X]% (from Aave historical)

  • No gas costs (Arbitrum negligible)

6.2 Overall Performance

Summary Table:

Metric
Value
Annualized

Starting Equity

10.00 WBTC

-

Ending Equity

[X] WBTC

-

Gross Fees

[Y] WBTC

[Y * 12] WBTC

Borrow Costs

[Z] WBTC

[Z * 12] WBTC

Transaction Costs

[W] WBTC

[W * 12] WBTC

Net Profit

[P] WBTC

[P * 12] WBTC

Simple APR

[P]%

[P * 12]%

Max Drawdown

[D]%

-

Sharpe Ratio

[S]

-

6.3 Rebalance Analysis

Frequency Statistics:

Metric
Value

Total Rebalances

[N]

MM Only

[N1] ([P1]%)

Hedge Only

[N2] ([P2]%)

Both (MM + Hedge)

[N3] ([P3]%)

Avg Rebalances/Day

[R]

Avg Time Between

[T] hours

Longest Streak w/o Rebalance

[D] days

Cost Attribution:

Cost Type
Total (WBTC)
% of Fees
% of Equity

Swap Fees (paid)

[X]

[Y]%

[Z]%

Slippage

[X]

[Y]%

[Z]%

Borrow Interest

[X]

[Y]%

[Z]%

Total Costs

[T]

[P]%

[Q]%

Net after Costs

[N]

-

-

6.4 Monthly Performance Breakdown

Month
Fees Earned
Borrow Cost
Trans. Cost
Net Return
Rebalances
Max LTV

Jan

[X]

[Y]

[Z]

[N]

[R]

[L]

Feb

[X]

[Y]

[Z]

[N]

[R]

[L]

Mar

[X]

[Y]

[Z]

[N]

[R]

[L]

...

...

...

...

...

...

...

6.5 Scenario Analysis

BEST CASE: [Date Range]

Market Conditions:

  • Low volatility (stable price)

  • High trading volume

  • Minimal range crossings

Performance:

WORST CASE: [Date Range]

Market Conditions:

  • High volatility

  • Choppy price action (whipsaw)

  • Rapid range crossings

Performance:

TYPICAL CASE: Average Period

Market Conditions:

  • Normal volatility

  • Moderate volume

  • Occasional range crossings

Performance:


7. LIVE TRADING CONSIDERATIONS

7.1 System Architecture

7.2 Event Processing Flow

7.3 State Monitoring

Critical Metrics (Updated every swap):

  • Current tick and price

  • Active position liquidity

  • Aave collateral and debt

  • LTV ratio

  • Net equity

  • WETH exposure (should be ~0)

Data Sources:

  • Uniswap V3 Pool (slot0 for tick/sqrtPrice)

  • NFPM (positions for liquidity)

  • Chainlink (WBTC/USD, ETH/USD prices)

  • Aave (aWBTC balance, debtToken balance)

7.4 Transaction Construction

Batch Operations: Multiple operations batched into single transaction via merkle verification:

  1. MM Rebalance Only:

    • Decrease liquidity (remove from old range)

    • Collect fees

    • [Optional] Swap tokens

    • Increase liquidity (add to new range)

  2. Hedge Rebalance Only:

    • Flashloan (if needed)

    • Repay/borrow debt

    • Withdraw/supply collateral

    • Swap tokens

    • Repay flashloan

  3. Both Legs:

    • Combine all operations

    • Execute atomically

7.5 Execution Considerations

Gas Management:

  • Arbitrum gas estimation: ~0.5-2 gwei

  • Transaction limit: 8M gas

  • Priority fee: 0 (Arbitrum uses base fee only)

Timing:

  • State fetch: ~100-200ms (multicall)

  • Rebalance calc: ~10-50ms

  • TX construction: ~50ms

  • Submission: ~2-5s (relayer latency)

Failure Modes:

  • Slippage exceeded: Retry with higher tolerance

  • Gas spike: Skip non-critical rebalances

  • Relayer failure: Fallback to direct RPC

  • Stale price: Use last known good price

7.6 Operational Checklist

Daily:

  • [ ] Verify swap events processing

  • [ ] Check LTV is within bounds (< 55%)

  • [ ] Confirm active position in range

  • [ ] Review rebalance history

  • [ ] Check gas costs vs budget

Weekly:

  • [ ] Analyze fee accumulation rate

  • [ ] Review hedge effectiveness

  • [ ] Check oracle prices vs market

  • [ ] Verify circuit breakers

  • [ ] Update performance metrics

Monthly:

  • [ ] Full strategy health review

  • [ ] Compare live vs backtest

  • [ ] Parameter tuning assessment

  • [ ] Documentation update


8. RISK MANAGEMENT

8.1 Risk Matrix

Risk
Likelihood
Impact
Mitigation Strategy

Liquidation

Low

Critical

60% LTV circuit breaker; 10-13% buffer

Oracle Manipulation

Low

Critical

Multi-source validation; pause on >2% divergence

High Churn

Medium

High

Rebalance rate limiter; >5/hour = cooldown

Drawdown >15%

Medium

High

Drawdown pause; manual review required

Gas Spike

Medium

Medium

Gas checks; skip non-critical rebalances

Smart Contract Bug

Low

Critical

Audits; gradual rollout; insurance

8.2 Circuit Breakers (Detailed)

Breaker
Threshold
Immediate Action
Recovery

LTV Emergency

>= 65%

- Pause all rebalancing - Allow ONLY deleverage - Alert critical

Manual review + gradual restart

Drawdown

> 15% from peak

- Pause 60 minutes - Hedge-only mode - Alert warning

Auto resume after cooldown

Oracle Divergence

> 2% between sources

- Full pause - Investigation mode - Log forensics

Manual investigation required

Gas Spike

> 5 gwei

- Skip MM rebalances - Allow hedge if LTV >= 60% - Log skip events

Auto resume when < 5 gwei

Rate Limit

> 5 rebalances/hour

- 30-minute cooldown - Skip non-urgent - Alert churn warning

Auto resume after cooldown

Manual Pause

Admin call

- Full stop all operations - Alert all stakeholders - Lock state

Manual unpause only

8.3 Emergency Procedures

Scenario: LTV approaching 60%


9. CONFIGURATION & DEPLOYMENT

9.1 Parameter Reference

Config
Current
Range
Description

TARGET_LTV

0.50

0.30-0.55

Desired leverage level

MAX_LTV

0.60

0.55-0.65

Emergency threshold

SLIPPAGE_BPS

50

10-100

Max slippage (basis points)

MM_RATIO

0.667

0.60-0.75

MM leg capital allocation

FEE_TIER

500

Fixed

Pool fee (0.05%)

MAX_DRAWDOWN

0.15

0.10-0.20

Drawdown circuit breaker

MAX_GAS_GWEI

5

3-10

Gas price limit

REBALANCE_LIMIT

5

3-10

Max rebalances per hour

9.2 Tuning Guidelines

Conservative Settings:

  • Target LTV: 45%

  • Max LTV: 55%

  • Max Drawdown: 10%

  • Result: Lower returns, lower risk

Aggressive Settings:

  • Target LTV: 55%

  • Max LTV: 65%

  • Max Drawdown: 20%

  • Result: Higher returns, higher risk

9.3 Deployment Checklist

Pre-Deployment:

  • [ ] All 403 NFT positions minted

  • [ ] Aave markets activated

  • [ ] Merkle tree leafs generated

  • [ ] Emergency multisig configured

  • [ ] Monitoring dashboards ready

  • [ ] Discord webhooks tested

Initial Capital:

  • [ ] 10 WBTC deposited to vault

  • [ ] 2/3 allocated to MM leg

  • [ ] 1/3 allocated to Hedge leg

  • [ ] LTV verified at 50%

  • [ ] Zero WETH exposure confirmed

Post-Deployment:

  • [ ] First swap detected

  • [ ] Fees accruing correctly

  • [ ] Rebalance triggers working

  • [ ] Alerts receiving

  • [ ] Emergency pause tested


10. APPENDIX

10.1 Glossary

Term
Definition

Tick

Smallest price increment in Uniswap V3 (0.01%)

LTV

Loan-to-Value ratio; debt divided by collateral

Liquidity (L)

Abstract measure of position size in AMM

Range

Price bounds where position earns fees

Rebalance

Adjusting position to maintain strategy parameters

Delta

Exposure to underlying asset price movement

Impermanent Loss

Value lost vs holding due to price changes

Hedge

Offsetting position to reduce risk

Flashloan

Uncollateralized loan repaid in same transaction

Slippage

Difference between expected and executed price

Dust

Negligible token amounts below useful threshold

Churn

Excessive rebalancing due to volatility

10.2 Formula Quick Reference

10.3 Key File References

File
Purpose
Key Functions

backtest1.py

Backtesting

run_backtest(), compute_rebalance()

strategy.py

Core logic

compute_rebalance(), tick_to_price()

engine.py

Live execution

on_swap_event(), execute_rebalance()

actions.py

Transactions

increase_position(), decrease_position()

helper.py

Utilities

PositionReader, constants

positions.py

Position config

403 position definitions

10.4 Changelog

Version
Date
Changes

1.0

2026-02-12

Updated documentation with ASCII diagrams, mathematical foundations, and live trading considerations


END OF DOCUMENT

Last updated