{
 "generated_at": "2026-11-03T12:07:03.475377+00:00",
 "releases": [
  {
   "schema": "think-tank.release/1",
   "strategy": "think-tank/btc-volatility-range-3sigma",
   "version": "2.0.0",
   "binding": "wbtc-usdc-3000-ethereum",
   "candidate": "lp-wbtc-usdc-fee3000-eth-sigma-regime-hold",
   "title": "BTC volatility range at 3 sigma, recenter after an hour out",
   "idea": "Keep the WBTC/USDC range wide: size it from the last day of hourly volatility at 3 sigma (about +-7 % in an ordinary BTC day, never narrower than 10 tick spacings, never wider than 50 %) so that normal moves earn fees without recenters. Recenter only after the price has been out of range for an hour, at most once in 6 hours. No regime filter: the simple model must prove itself on live paper trading first.",
   "playbook": [
    {
     "when": "At start",
     "do": "Open one position in WBTC/USDC 0.30% on Ethereum. Range width comes from volatility: ±3σ of the expected 24 h price move (σ from hourly pool prices over the last 24 h), never narrower than −3% … +3% and never wider than 50% in total. Centered on the pool price at entry. Both tokens go in, in the ratio the range needs; the missing part is swapped at entry. 5% of the capital stays outside the position as a reserve."
    },
    {
     "when": "Price is inside the range",
     "do": "Do nothing. The position earns swap fees; they stay in the position and are not reinvested."
    },
    {
     "when": "Price stays outside the range for 1 h",
     "do": "Close the position and reopen it around the current price with the same width rule (σ recomputed). Costs gas and a swap. Not more often than once per 6 h."
    },
    {
     "when": "Chainlink price feed of either token is stale or missing",
     "do": "Make no changes until the feed is fresh again."
    },
    {
     "when": "End of the 30d horizon",
     "do": "Remove the liquidity and keep both tokens as they are, without a swap."
    },
    {
     "when": "Never",
     "do": "Sell because the price falls (there is no stop-loss); move liquidity to another pool."
    }
   ],
   "manager_type": "volatile",
   "risk_class": "volatile",
   "chain_id": 1,
   "pools": [
    {
     "role": "main",
     "label": "WBTC/USDC fee 3000 ts 60",
     "chain_id": 1,
     "pool_id": "0xb98437c7ba28c6590dd4e1cc46aa89eed181f97108e5b6221730d41347bc817f",
     "pool_key": {
      "currency0": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
      "currency1": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
      "fee": 3000,
      "tick_spacing": 60,
      "hooks": "0x0000000000000000000000000000000000000000"
     },
     "fee": 3000,
     "tick_spacing": 60,
     "tokens": [
      {
       "symbol": "WBTC",
       "address": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
       "decimals": 8
      },
      {
       "symbol": "USDC",
       "address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
       "decimals": 6
      }
     ],
     "width_ticks": null,
     "allocation_share": 1.0
    }
   ],
   "horizon": "30d",
   "capital_usd": 10000.0,
   "status": "active",
   "stage": {
    "name": "paper",
    "state": "running",
    "since": "2026-11-01T08:10:54Z"
   },
   "released_at": "2026-11-01T08:10:54Z",
   "expires_at": "2027-01-30T08:10:54Z",
   "envelop": {
    "id": "think-tank/btc-volatility-range-3sigma--wbtc-usdc-3000-ethereum",
    "sha256": "9e8bcb456c2f45c2124edfd11b58152fee077e622080749e03c308a0ada7a705",
    "exact": true,
    "gaps": []
   },
   "evidence": {
    "backtest_sha256": "ccee885d3041a8a3ec93f8b65e534356693ae5d521813afab0e5a179afbea16e",
    "live": true,
    "works_on": [
     "30d"
    ],
    "expected_return_pct": 3.1858,
    "expected_hodl_return_pct": 3.1827,
    "drawdown_limit_pct": 10.0,
    "capital_usd": 10000.0,
    "holdout": {
     "history_days": 150,
     "from_block": 25242701,
     "test_from_block": 25995883,
     "to_block": 26318591,
     "test_share": 0.3
    }
   },
   "history": [
    {
     "at": "2026-11-01T08:10:55Z",
     "event": "released",
     "detail": "horizon 30d; position $10,000; lifetime 90 days"
    }
   ],
   "path": "strategies/btc-volatility-range-3sigma/wbtc-usdc-3000-ethereum",
   "slug": "btc-volatility-range-3sigma--wbtc-usdc-3000-ethereum",
   "manager": {
    "schema": "think-tank.manager-template/1",
    "strategy": "think-tank/btc-volatility-range-3sigma",
    "version": "2.0.0",
    "binding": "wbtc-usdc-3000-ethereum",
    "chain_id": 1,
    "manager_type": "volatile",
    "oracle_type": 3001,
    "pools": [
     {
      "role": "main",
      "label": "WBTC/USDC fee 3000 ts 60",
      "pool_key": {
       "currency0": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
       "currency1": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
       "fee": 3000,
       "tick_spacing": 60,
       "hooks": "0x0000000000000000000000000000000000000000"
      },
      "allocation_share": 1.0,
      "pool_id": "0xb98437c7ba28c6590dd4e1cc46aa89eed181f97108e5b6221730d41347bc817f"
     }
    ],
    "range": "chosen on every placement; recenter moves it",
    "oracle": {
     "required": true,
     "why": "operator swaps inside allocate/recenter/move settle only at the manager's oracle price (setPriceOracle) with fresh feeds for both currencies"
    },
    "operator": {
     "required": true,
     "actions": [
      "recenter"
     ],
     "note": "the operator cannot withdraw funds — exits and pool changes are the owner's"
    },
    "create": "https://unisafe.envelop.is/app?create=volatile"
   },
   "paper": {
    "updated_at": "2026-11-03T12:06:46Z",
    "started_at": "2026-11-01T08:10:35+00:00",
    "horizon_days": 30,
    "verdict": "hold",
    "detail": null,
    "checks": 50,
    "metrics": {
     "capital": 10000.0,
     "nav": 9959.016652,
     "hodl": 9947.723157,
     "return_pct": -0.4098,
     "hodl_return_pct": -0.5228,
     "fees_pct": 0.3456,
     "costs_pct": 0.1537,
     "exit_costs_pct": 0.0015,
     "il_pct": -0.079,
     "max_drawdown_pct": 1.7396,
     "time_in_range_pct": 100.0,
     "swaps": 165,
     "rebalances": 0,
     "regime_holds": 0,
     "widened": 0,
     "days": 2.135,
     "beats_hodl": true,
     "price": 76838.7,
     "price_lower": 75270.2,
     "price_upper": 80405.3,
     "in_range": true,
     "capital_usd": 10000.0,
     "drawdown_limit_pct": 10.0,
     "horizon_days": 30,
     "expected_return_pct": 3.1858,
     "lag_blocks": 0
    }
   }
  },
  {
   "schema": "think-tank.release/1",
   "strategy": "think-tank/eth-usdc-fee500-wide-recenter",
   "version": "1.0.0",
   "binding": "eth-usdc-fee-500-ts-10",
   "candidate": "lp-eth-usdc-fee500-wide-recenter",
   "title": "ETH/USDC fee 500 wide ±1000 ticks (UniSafe Volatile default), recenter after 24h",
   "idea": "ETH/USDC fee 500 wide ±1000 ticks (UniSafe Volatile default), recenter after 24h out of range",
   "playbook": [
    {
     "when": "At start",
     "do": "Open one position in ETH/USDC 0.05% on Arbitrum One with a fixed range 2,000 ticks wide: −9.5% … +10.5% from the pool price at entry. Both tokens go in, in the ratio the range needs; the missing part is swapped at entry."
    },
    {
     "when": "Price is inside the range",
     "do": "Do nothing. The position earns swap fees; they stay in the position and are not reinvested."
    },
    {
     "when": "Price stays outside the range for 24 h",
     "do": "Close the position and reopen it around the current price with the same width rule. Costs gas and a swap."
    },
    {
     "when": "End of the 30d horizon",
     "do": "Remove the liquidity and keep both tokens as they are, without a swap."
    },
    {
     "when": "Never",
     "do": "Sell because the price falls (there is no stop-loss); move liquidity to another pool."
    }
   ],
   "manager_type": "volatile",
   "risk_class": "volatile",
   "pools": [
    {
     "role": "main",
     "label": "ETH/USDC fee 500 ts 10",
     "pool_id": "0x864abca0a6202dba5b8868772308da953ff125b0f95015adbf89aaf579e903a8",
     "chain_id": 42161,
     "pool_key": {
      "currency0": "0x0000000000000000000000000000000000000000",
      "currency1": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
      "fee": 500,
      "tick_spacing": 10,
      "hooks": "0x0000000000000000000000000000000000000000"
     },
     "fee": 500,
     "tick_spacing": 10,
     "width_ticks": 2000,
     "allocation_share": 1.0,
     "tokens": [
      {
       "symbol": "ETH",
       "address": "0x0000000000000000000000000000000000000000"
      },
      {
       "symbol": "USDC",
       "address": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831"
      }
     ]
    }
   ],
   "horizon": "30d",
   "status": "active",
   "stage": {
    "name": "paper",
    "state": "running",
    "since": "2026-10-28T07:59:17Z"
   },
   "released_at": "2026-10-28T07:59:17Z",
   "expires_at": "2027-01-26T07:59:17Z",
   "envelop": {
    "id": "think-tank/eth-usdc-fee500-wide-recenter--eth-usdc-fee-500-ts-10",
    "sha256": "2d4a9324c97b00ee77558f6acc62a00b2b638ddaa53e674c84179510cb241fad",
    "exact": true,
    "gaps": []
   },
   "evidence": {
    "backtest_sha256": "09d841e9ae86cca5dac02bcc166dbd438991d1fe1fcfa632f891941781703190",
    "live": true,
    "works_on": [
     "30d"
    ],
    "expected_return_pct": 4.5825,
    "expected_hodl_return_pct": 3.9713,
    "drawdown_limit_pct": 10.0,
    "holdout": {
     "history_days": 150,
     "from_block": 465198582,
     "test_from_block": 501359215,
     "to_block": 516006640,
     "test_share": 0.3
    },
    "capital_usd": 100.0
   },
   "history": [
    {
     "at": "2026-10-28T07:59:18Z",
     "event": "released",
     "detail": "horizon 30d; lifetime 90 days"
    },
    {
     "at": "2026-10-31T07:43:25Z",
     "event": "stage:paper:restarted",
     "detail": "paper restarted with a $100 position (was $10 since 2026-10-27)"
    }
   ],
   "capital_usd": 100.0,
   "path": "strategies/eth-usdc-fee500-wide-recenter/eth-usdc-fee-500-ts-10",
   "slug": "eth-usdc-fee500-wide-recenter--eth-usdc-fee-500-ts-10",
   "manager": {
    "schema": "think-tank.manager-template/1",
    "strategy": "think-tank/eth-usdc-fee500-wide-recenter",
    "version": "1.0.0",
    "binding": "eth-usdc-fee-500-ts-10",
    "chain_id": 42161,
    "manager_type": "volatile",
    "oracle_type": 3001,
    "pools": [
     {
      "role": "main",
      "label": "ETH/USDC fee 500 ts 10",
      "pool_key": {
       "currency0": "0x0000000000000000000000000000000000000000",
       "currency1": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
       "fee": 500,
       "tick_spacing": 10,
       "hooks": "0x0000000000000000000000000000000000000000"
      },
      "allocation_share": 1.0,
      "pool_id": "0x864abca0a6202dba5b8868772308da953ff125b0f95015adbf89aaf579e903a8",
      "width_ticks": 2000
     }
    ],
    "range": "chosen on every placement; recenter moves it",
    "oracle": {
     "required": true,
     "why": "operator swaps inside allocate/recenter/move settle only at the manager's oracle price (setPriceOracle) with fresh feeds for both currencies"
    },
    "operator": {
     "required": true,
     "actions": [
      "recenter"
     ],
     "note": "the operator cannot withdraw funds — exits and pool changes are the owner's"
    },
    "create": "https://unisafe.envelop.is/app?create=volatile"
   },
   "chain_id": 42161,
   "paper": {
    "updated_at": "2026-11-03T12:06:18Z",
    "started_at": "2026-10-31T07:23:56+00:00",
    "horizon_days": 30,
    "verdict": "hold",
    "detail": null,
    "checks": 139,
    "metrics": {
     "capital": 100.0,
     "nav": 100.466971,
     "hodl": 100.435691,
     "return_pct": 0.467,
     "hodl_return_pct": 0.4357,
     "fees_pct": 0.2006,
     "costs_pct": 0.15,
     "exit_costs_pct": 0.05,
     "il_pct": -0.0193,
     "max_drawdown_pct": 1.3823,
     "time_in_range_pct": 100.0,
     "swaps": 13073,
     "rebalances": 0,
     "regime_holds": 0,
     "widened": 0,
     "days": 3.195,
     "beats_hodl": true,
     "price": 2262.41,
     "price_lower": 2028.44,
     "price_upper": 2480.0,
     "in_range": true,
     "capital_usd": 100.0,
     "drawdown_limit_pct": 10.0,
     "horizon_days": 30,
     "expected_return_pct": 4.5825,
     "lag_blocks": 0
    }
   }
  },
  {
   "schema": "think-tank.release/1",
   "strategy": "think-tank/static-range-no-recenter",
   "version": "1.0.0",
   "binding": "eth-usdc-3000-base",
   "candidate": "lp-eth-usdc-fee3000-base-sigma-regime-hold",
   "title": "Static moderate range, no recenters",
   "idea": "Place one moderate range (about plus or minus 6 percent) around the price and leave it alone for the whole horizon. No recenter means no realised loss from buying the top and selling the bottom and almost no gas; the price is expected to spend enough time inside the range for the fees to outweigh impermanent loss. When the price leaves the range the position simply waits, fully in one token, and the owner is told.",
   "playbook": [
    {
     "when": "At start",
     "do": "Open one position in ETH/USDC 0.30% on Base with a fixed range 1,200 ticks wide: −5.8% … +6.2% from the pool price at entry. Both tokens go in, in the ratio the range needs; the missing part is swapped at entry."
    },
    {
     "when": "Price is inside the range",
     "do": "Do nothing. The position earns swap fees; they stay in the position and are not reinvested."
    },
    {
     "when": "Price stays outside the range for 1 h",
     "do": "Leave the range where it is — it does not follow the price. If ETH rises above the range, the position is all USDC; if it falls below, all ETH. It earns no fees until the price returns. Notify the owner."
    },
    {
     "when": "Every 24 h",
     "do": "Review the position. Allowed action: hold, nothing else. Not modelled in the backtest."
    },
    {
     "when": "End of the 30d horizon",
     "do": "Remove the liquidity and keep both tokens as they are, without a swap."
    },
    {
     "when": "Never",
     "do": "Move the range after the price; sell because the price falls (there is no stop-loss); move liquidity to another pool."
    }
   ],
   "manager_type": "volatile",
   "risk_class": "volatile",
   "chain_id": 8453,
   "pools": [
    {
     "role": "main",
     "label": "ETH/USDC fee 3000 ts 60",
     "chain_id": 8453,
     "pool_id": "0xe070797535b13431808f8fc81fdbe7b41362960ed0b55bc2b6117c49c51b7eb9",
     "pool_key": {
      "currency0": "0x0000000000000000000000000000000000000000",
      "currency1": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "fee": 3000,
      "tick_spacing": 60,
      "hooks": "0x0000000000000000000000000000000000000000"
     },
     "fee": 3000,
     "tick_spacing": 60,
     "tokens": [
      {
       "symbol": "ETH",
       "address": "0x0000000000000000000000000000000000000000",
       "decimals": 18
      },
      {
       "symbol": "USDC",
       "address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
       "decimals": 6
      }
     ],
     "width_ticks": 1200,
     "allocation_share": 1.0
    }
   ],
   "horizon": "30d",
   "capital_usd": 100.0,
   "status": "active",
   "stage": {
    "name": "paper",
    "state": "running",
    "since": "2026-10-31T07:42:43Z"
   },
   "released_at": "2026-10-31T07:42:43Z",
   "expires_at": "2027-01-29T07:42:43Z",
   "envelop": {
    "id": "think-tank/static-range-no-recenter--eth-usdc-3000-base",
    "sha256": "8ae606d67d5228dddd6782e101ed7bbddbbe391df565769a8d38870ab1522fb3",
    "exact": true,
    "gaps": []
   },
   "evidence": {
    "backtest_sha256": "41632ec3fdfb058f6ca26dfb2cc756a0248139a54e98dad0cbdef713e1f0980e",
    "live": true,
    "works_on": [
     "30d"
    ],
    "expected_return_pct": 2.8682,
    "expected_hodl_return_pct": 0.9373,
    "drawdown_limit_pct": 10.0,
    "capital_usd": 100.0,
    "holdout": {
     "history_days": 150,
     "from_block": 46841126,
     "test_from_block": 51377126,
     "to_block": 53321126,
     "test_share": 0.3
    }
   },
   "history": [
    {
     "at": "2026-10-31T07:42:43Z",
     "event": "released",
     "detail": "horizon 30d; position $100; lifetime 90 days"
    }
   ],
   "path": "strategies/static-range-no-recenter/eth-usdc-3000-base",
   "slug": "static-range-no-recenter--eth-usdc-3000-base",
   "manager": {
    "schema": "think-tank.manager-template/1",
    "strategy": "think-tank/static-range-no-recenter",
    "version": "1.0.0",
    "binding": "eth-usdc-3000-base",
    "chain_id": 8453,
    "manager_type": "volatile",
    "oracle_type": 3001,
    "pools": [
     {
      "role": "main",
      "label": "ETH/USDC fee 3000 ts 60",
      "pool_key": {
       "currency0": "0x0000000000000000000000000000000000000000",
       "currency1": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
       "fee": 3000,
       "tick_spacing": 60,
       "hooks": "0x0000000000000000000000000000000000000000"
      },
      "allocation_share": 1.0,
      "pool_id": "0xe070797535b13431808f8fc81fdbe7b41362960ed0b55bc2b6117c49c51b7eb9",
      "width_ticks": 1200
     }
    ],
    "range": "chosen on every placement; recenter moves it",
    "oracle": {
     "required": true,
     "why": "operator swaps inside allocate/recenter/move settle only at the manager's oracle price (setPriceOracle) with fresh feeds for both currencies"
    },
    "operator": {
     "required": false,
     "actions": [],
     "note": "the operator cannot withdraw funds — exits and pool changes are the owner's"
    },
    "create": "https://unisafe.envelop.is/app?create=volatile"
   },
   "paper": {
    "updated_at": "2026-11-03T12:06:29Z",
    "started_at": "2026-10-31T07:42:41+00:00",
    "horizon_days": 30,
    "verdict": "hold",
    "detail": null,
    "checks": 71,
    "metrics": {
     "capital": 100.0,
     "nav": 100.6683,
     "hodl": 100.511804,
     "return_pct": 0.6683,
     "hodl_return_pct": 0.5118,
     "fees_pct": 0.2684,
     "costs_pct": 0.0702,
     "exit_costs_pct": 0.01,
     "il_pct": -0.0417,
     "max_drawdown_pct": 0.9439,
     "time_in_range_pct": 100.0,
     "swaps": 1120,
     "rebalances": 0,
     "regime_holds": 0,
     "widened": 0,
     "days": 3.165,
     "beats_hodl": true,
     "price": 2264.13,
     "price_lower": 2104.89,
     "price_upper": 2387.53,
     "in_range": true,
     "capital_usd": 100.0,
     "drawdown_limit_pct": 10.0,
     "horizon_days": 30,
     "expected_return_pct": 2.8682,
     "lag_blocks": 0
    }
   }
  },
  {
   "schema": "think-tank.release/1",
   "strategy": "think-tank/static-wide-no-recenter",
   "version": "1.0.0",
   "binding": "eth-usdc-3000-ethereum",
   "candidate": "lp-eth-usdc-fee3000-eth-static-wide",
   "title": "Static wide range, never recenter",
   "idea": "On ETH/USDC 0.3 % every recenter swaps part of the position and locks in impermanent loss at the worst moment, after a move. Instead, place one wide range (about +/-9 %) around the entry price and never move it: fees are earned while the price is inside, and when it leaves, the position simply waits as all ETH or all USDC for the price to come back. After a week outside the range the owner is notified; only the owner can exit.",
   "playbook": [
    {
     "when": "At start",
     "do": "Open one position in ETH/USDC 0.30% on Ethereum with a fixed range 1,800 ticks wide: −8.6% … +9.4% from the pool price at entry. Both tokens go in, in the ratio the range needs; the missing part is swapped at entry."
    },
    {
     "when": "Price is inside the range",
     "do": "Do nothing. The position earns swap fees; they stay in the position and are not reinvested."
    },
    {
     "when": "Price stays outside the range for 168 h",
     "do": "Leave the range where it is — it does not follow the price. If ETH rises above the range, the position is all USDC; if it falls below, all ETH. It earns no fees until the price returns. Notify the owner."
    },
    {
     "when": "Chainlink price feed of either token is stale or missing",
     "do": "Make no changes until the feed is fresh again."
    },
    {
     "when": "Every 24 h",
     "do": "Review the position. Allowed action: hold, nothing else. Not modelled in the backtest."
    },
    {
     "when": "End of the 7d horizon",
     "do": "Remove the liquidity and keep both tokens as they are, without a swap."
    },
    {
     "when": "Never",
     "do": "Move the range after the price; sell because the price falls (there is no stop-loss); move liquidity to another pool."
    }
   ],
   "manager_type": "volatile",
   "risk_class": "volatile",
   "chain_id": 1,
   "pools": [
    {
     "role": "main",
     "label": "ETH/USDC fee 3000 ts 60",
     "chain_id": 1,
     "pool_id": "0xdce6394339af00981949f5f3baf27e3610c76326a700af57e4b3e3ae4977f78d",
     "pool_key": {
      "currency0": "0x0000000000000000000000000000000000000000",
      "currency1": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
      "fee": 3000,
      "tick_spacing": 60,
      "hooks": "0x0000000000000000000000000000000000000000"
     },
     "fee": 3000,
     "tick_spacing": 60,
     "tokens": [
      {
       "symbol": "ETH",
       "address": "0x0000000000000000000000000000000000000000",
       "decimals": 18
      },
      {
       "symbol": "USDC",
       "address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
       "decimals": 6
      }
     ],
     "width_ticks": 1800,
     "allocation_share": 1.0
    }
   ],
   "horizon": "7d",
   "capital_usd": 100.0,
   "status": "active",
   "stage": {
    "name": "paper",
    "state": "running",
    "since": "2026-11-03T11:00:16Z"
   },
   "released_at": "2026-11-03T11:00:16Z",
   "expires_at": "2027-02-01T11:00:16Z",
   "envelop": {
    "id": "think-tank/static-wide-no-recenter--eth-usdc-3000-ethereum",
    "sha256": "717ff137ca1a59bc66805d68ffe4b707d76af4a293127eae200fae36fedd019f",
    "exact": true,
    "gaps": []
   },
   "evidence": {
    "backtest_sha256": "a92f38f1d1c2c9076c9bc62cbc13066c8d11b951a737f5a76e404ab21e00cd18",
    "live": true,
    "works_on": [
     "7d",
     "30d"
    ],
    "expected_return_pct": -0.947,
    "expected_hodl_return_pct": -1.2584,
    "drawdown_limit_pct": 10.0,
    "capital_usd": 100.0,
    "holdout": {
     "history_days": 150,
     "from_block": 25256903,
     "test_from_block": 26010123,
     "to_block": 26332829,
     "test_share": 0.3
    }
   },
   "history": [
    {
     "at": "2026-11-03T11:00:17Z",
     "event": "released",
     "detail": "horizon 7d; position $100; lifetime 90 days"
    }
   ],
   "path": "strategies/static-wide-no-recenter/eth-usdc-3000-ethereum",
   "slug": "static-wide-no-recenter--eth-usdc-3000-ethereum",
   "manager": {
    "schema": "think-tank.manager-template/1",
    "strategy": "think-tank/static-wide-no-recenter",
    "version": "1.0.0",
    "binding": "eth-usdc-3000-ethereum",
    "chain_id": 1,
    "manager_type": "volatile",
    "oracle_type": 3001,
    "pools": [
     {
      "role": "main",
      "label": "ETH/USDC fee 3000 ts 60",
      "pool_key": {
       "currency0": "0x0000000000000000000000000000000000000000",
       "currency1": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
       "fee": 3000,
       "tick_spacing": 60,
       "hooks": "0x0000000000000000000000000000000000000000"
      },
      "allocation_share": 1.0,
      "pool_id": "0xdce6394339af00981949f5f3baf27e3610c76326a700af57e4b3e3ae4977f78d",
      "width_ticks": 1800
     }
    ],
    "range": "chosen on every placement; recenter moves it",
    "oracle": {
     "required": true,
     "why": "operator swaps inside allocate/recenter/move settle only at the manager's oracle price (setPriceOracle) with fresh feeds for both currencies"
    },
    "operator": {
     "required": false,
     "actions": [],
     "note": "the operator cannot withdraw funds — exits and pool changes are the owner's"
    },
    "create": "https://unisafe.envelop.is/app?create=volatile"
   },
   "paper": {
    "updated_at": "2026-11-03T11:30:49Z",
    "started_at": "2026-11-03T11:00:11+00:00",
    "horizon_days": 7,
    "verdict": "hold",
    "detail": null,
    "checks": 1,
    "metrics": {
     "capital": 100.0,
     "nav": 99.599604,
     "hodl": 100.043803,
     "return_pct": -0.4004,
     "hodl_return_pct": 0.0438,
     "fees_pct": 0.0015,
     "costs_pct": 0.4455,
     "exit_costs_pct": 0.15,
     "il_pct": -0.0002,
     "max_drawdown_pct": 0.0,
     "time_in_range_pct": 100.0,
     "swaps": 7,
     "rebalances": 0,
     "regime_holds": 0,
     "widened": 0,
     "days": 0.005,
     "beats_hodl": false,
     "price": 2263.79,
     "price_lower": 2054.98,
     "price_upper": 2475.04,
     "in_range": true,
     "capital_usd": 100.0,
     "drawdown_limit_pct": 10.0,
     "horizon_days": 7,
     "expected_return_pct": -0.947,
     "lag_blocks": 0
    }
   }
  },
  {
   "schema": "think-tank.release/1",
   "strategy": "think-tank/static-wide-range",
   "version": "1.0.0",
   "binding": "usdc-cbbtc-500-base-static",
   "candidate": "lp-usdc-cbbtc-fee500-base-sigma-entropy",
   "title": "Static wide range, no recenter",
   "idea": "Place one wide range (about -9.5 % / +10.5 %, the UniSafe Volatile default) around the price on a high-turnover BTC/stable pool and leave it alone: no recenters and no regime filter. A recenter on a narrow range locks in impermanent loss on every move; a wide static range gives up some fee concentration in exchange for realising almost no loss and paying gas only on entry and exit.",
   "playbook": [
    {
     "when": "At start",
     "do": "Open one position in USDC/cbBTC 0.05% on Base with a fixed range 2,000 ticks wide: −9.5% … +10.5% from the pool price at entry. Both tokens go in, in the ratio the range needs; the missing part is swapped at entry."
    },
    {
     "when": "Price is inside the range",
     "do": "Do nothing. The position earns swap fees; they stay in the position and are not reinvested."
    },
    {
     "when": "Price stays outside the range for 1 h",
     "do": "Leave the range where it is — it does not follow the price. If cbBTC rises above the range, the position is all USDC; if it falls below, all cbBTC. It earns no fees until the price returns. Notify the owner."
    },
    {
     "when": "Chainlink price feed of either token is stale or missing",
     "do": "Make no changes until the feed is fresh again."
    },
    {
     "when": "End of the 7d horizon",
     "do": "Remove the liquidity and keep both tokens as they are, without a swap."
    },
    {
     "when": "Never",
     "do": "Move the range after the price; sell because the price falls (there is no stop-loss); move liquidity to another pool."
    }
   ],
   "manager_type": "volatile",
   "risk_class": "volatile",
   "chain_id": 8453,
   "pools": [
    {
     "role": "main",
     "label": "USDC/cbBTC fee 500 ts 10",
     "chain_id": 8453,
     "pool_id": "0x12d76c5c8ec8edffd3c143995b0aa43fe44a6d71eb9113796272909e54b8e078",
     "pool_key": {
      "currency0": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "currency1": "0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf",
      "fee": 500,
      "tick_spacing": 10,
      "hooks": "0x0000000000000000000000000000000000000000"
     },
     "fee": 500,
     "tick_spacing": 10,
     "tokens": [
      {
       "symbol": "USDC",
       "address": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
       "decimals": 6
      },
      {
       "symbol": "cbBTC",
       "address": "0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf",
       "decimals": 8
      }
     ],
     "width_ticks": 2000,
     "allocation_share": 1.0
    }
   ],
   "horizon": "7d",
   "capital_usd": 100.0,
   "status": "active",
   "stage": {
    "name": "paper",
    "state": "running",
    "since": "2026-11-01T10:01:18Z"
   },
   "released_at": "2026-11-01T10:01:18Z",
   "expires_at": "2027-01-30T10:01:18Z",
   "envelop": {
    "id": "think-tank/static-wide-range--usdc-cbbtc-500-base-static",
    "sha256": "59354da28bb3c6e6c514a7a376e5f914b7283bd3801ccef8909f2a5b9117d3de",
    "exact": true,
    "gaps": []
   },
   "evidence": {
    "backtest_sha256": "fd879e30f31bbc1cf3ae30e9d2b1c6f634c25a0e8033d106c452c95d92be10b4",
    "live": true,
    "works_on": [
     "7d",
     "30d"
    ],
    "expected_return_pct": 0.9253,
    "expected_hodl_return_pct": 0.907,
    "drawdown_limit_pct": 10.0,
    "capital_usd": 100.0,
    "holdout": {
     "history_days": 120,
     "from_block": 48143145,
     "test_from_block": 51771945,
     "to_block": 53327145,
     "test_share": 0.3
    }
   },
   "history": [
    {
     "at": "2026-11-01T10:01:19Z",
     "event": "released",
     "detail": "horizon 7d; position $100; lifetime 90 days"
    }
   ],
   "path": "strategies/static-wide-range/usdc-cbbtc-500-base-static",
   "slug": "static-wide-range--usdc-cbbtc-500-base-static",
   "manager": {
    "schema": "think-tank.manager-template/1",
    "strategy": "think-tank/static-wide-range",
    "version": "1.0.0",
    "binding": "usdc-cbbtc-500-base-static",
    "chain_id": 8453,
    "manager_type": "volatile",
    "oracle_type": 3001,
    "pools": [
     {
      "role": "main",
      "label": "USDC/cbBTC fee 500 ts 10",
      "pool_key": {
       "currency0": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
       "currency1": "0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf",
       "fee": 500,
       "tick_spacing": 10,
       "hooks": "0x0000000000000000000000000000000000000000"
      },
      "allocation_share": 1.0,
      "pool_id": "0x12d76c5c8ec8edffd3c143995b0aa43fe44a6d71eb9113796272909e54b8e078",
      "width_ticks": 2000
     }
    ],
    "range": "chosen on every placement; recenter moves it",
    "oracle": {
     "required": true,
     "why": "operator swaps inside allocate/recenter/move settle only at the manager's oracle price (setPriceOracle) with fresh feeds for both currencies"
    },
    "operator": {
     "required": false,
     "actions": [],
     "note": "the operator cannot withdraw funds — exits and pool changes are the owner's"
    },
    "create": "https://unisafe.envelop.is/app?create=volatile"
   },
   "paper": {
    "updated_at": "2026-11-03T11:36:32Z",
    "started_at": "2026-11-01T10:01:17+00:00",
    "horizon_days": 7,
    "verdict": "hold",
    "detail": null,
    "checks": 49,
    "metrics": {
     "capital": 0.001281,
     "nav": 0.00129,
     "hodl": 0.00129,
     "return_pct": 0.6462,
     "hodl_return_pct": 0.6503,
     "fees_pct": 0.1023,
     "costs_pct": 0.0632,
     "exit_costs_pct": 0.0067,
     "il_pct": -0.0432,
     "max_drawdown_pct": 0.7406,
     "time_in_range_pct": 100.0,
     "swaps": 6315,
     "rebalances": 0,
     "regime_holds": 0,
     "widened": 0,
     "days": 2.066,
     "beats_hodl": false,
     "price": 1.29823e-05,
     "price_lower": 1.15846e-05,
     "price_upper": 1.41635e-05,
     "in_range": true,
     "capital_usd": 100.0,
     "drawdown_limit_pct": 10.0,
     "horizon_days": 7,
     "expected_return_pct": 0.9253,
     "lag_blocks": 0
    }
   }
  },
  {
   "schema": "think-tank.release/1",
   "strategy": "think-tank/volatility-range-regime-widen",
   "version": "1.1.0",
   "binding": "eth-usdc-500-base",
   "candidate": "lp-eth-usdc-fee500-base-sigma-regime-widen",
   "title": "Volatility range on a 5 bps pool, wider when volatility spikes",
   "idea": "Linear control for the phase-space run. On a thin, active 5 bps ETH/USDC pool the range is sized from the last day of volatility and recentred after 30 minutes out of range. When one-day volatility of 15-minute returns is unusually high, a recenter is postponed for up to 12 hours, as the price often comes back; a recenter made then uses a range twice as wide.",
   "playbook": [
    {
     "when": "At start",
     "do": "Open one position in ETH/USDC 0.05% on Base. Range width comes from volatility: ±2σ of the expected 24 h price move (σ from hourly pool prices over the last 24 h), never narrower than −0.99% … +1% and never wider than 30% in total. Centered on the pool price at entry. Both tokens go in, in the ratio the range needs; the missing part is swapped at entry."
    },
    {
     "when": "Price is inside the range",
     "do": "Do nothing. The position earns swap fees; they stay in the position and are not reinvested."
    },
    {
     "when": "Price stays outside the range for 30 min",
     "do": "Close the position and reopen it around the current price with the same width rule (σ recomputed). Costs gas and a swap. Not more often than once per hour."
    },
    {
     "when": "Market regime indicator says “unstable” (score above the 80th percentile of the training period)",
     "do": "Postpone any recenter for up to 12 h. If a recenter happens while unstable, the range is 2× as wide."
    },
    {
     "when": "End of the 7d horizon",
     "do": "Remove the liquidity and keep both tokens as they are, without a swap."
    },
    {
     "when": "Never",
     "do": "Sell because the price falls (there is no stop-loss); move liquidity to another pool."
    }
   ],
   "manager_type": "volatile",
   "risk_class": "volatile",
   "chain_id": 8453,
   "pools": [
    {
     "role": "main",
     "label": "ETH/USDC fee 500 ts 10",
     "chain_id": 8453,
     "pool_id": "0x96d4b53a38337a5733179751781178a2613306063c511b78cd02684739288c0a",
     "pool_key": {
      "currency0": "0x0000000000000000000000000000000000000000",
      "currency1": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
      "fee": 500,
      "tick_spacing": 10,
      "hooks": "0x0000000000000000000000000000000000000000"
     },
     "fee": 500,
     "tick_spacing": 10,
     "tokens": [
      {
       "symbol": "ETH",
       "address": "0x0000000000000000000000000000000000000000",
       "decimals": 18
      },
      {
       "symbol": "USDC",
       "address": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
       "decimals": 6
      }
     ],
     "width_ticks": null,
     "allocation_share": 1.0
    }
   ],
   "horizon": "7d",
   "capital_usd": 100.0,
   "status": "active",
   "stage": {
    "name": "paper",
    "state": "running",
    "since": "2026-11-02T08:19:43Z"
   },
   "released_at": "2026-11-02T08:19:43Z",
   "expires_at": "2027-01-31T08:19:43Z",
   "envelop": {
    "id": "think-tank/volatility-range-regime-widen--eth-usdc-500-base",
    "sha256": "48647fb8acc81e1232777ea2ed3cde8745ed7eb7e33e2af76bcb3b3157397540",
    "exact": false,
    "gaps": [
     "rule unstable-hold-widen: the engine has no regime signal — left out of the projection"
    ]
   },
   "evidence": {
    "backtest_sha256": "59ddb391f174c9f39ce46422329addeb29de63b41f34def278c79c4ebaead71d",
    "live": true,
    "works_on": [
     "7d"
    ],
    "expected_return_pct": -1.1183,
    "expected_hodl_return_pct": -1.7413,
    "drawdown_limit_pct": 10.0,
    "capital_usd": 100.0,
    "holdout": {
     "history_days": 120,
     "from_block": 48224484,
     "test_from_block": 51853284,
     "to_block": 53408484,
     "test_share": 0.3
    }
   },
   "history": [
    {
     "at": "2026-11-02T08:19:44Z",
     "event": "released",
     "detail": "horizon 7d; position $100; lifetime 90 days"
    }
   ],
   "path": "strategies/volatility-range-regime-widen/eth-usdc-500-base",
   "slug": "volatility-range-regime-widen--eth-usdc-500-base",
   "manager": {
    "schema": "think-tank.manager-template/1",
    "strategy": "think-tank/volatility-range-regime-widen",
    "version": "1.1.0",
    "binding": "eth-usdc-500-base",
    "chain_id": 8453,
    "manager_type": "volatile",
    "oracle_type": 3001,
    "pools": [
     {
      "role": "main",
      "label": "ETH/USDC fee 500 ts 10",
      "pool_key": {
       "currency0": "0x0000000000000000000000000000000000000000",
       "currency1": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
       "fee": 500,
       "tick_spacing": 10,
       "hooks": "0x0000000000000000000000000000000000000000"
      },
      "allocation_share": 1.0,
      "pool_id": "0x96d4b53a38337a5733179751781178a2613306063c511b78cd02684739288c0a"
     }
    ],
    "range": "chosen on every placement; recenter moves it",
    "oracle": {
     "required": true,
     "why": "operator swaps inside allocate/recenter/move settle only at the manager's oracle price (setPriceOracle) with fresh feeds for both currencies"
    },
    "operator": {
     "required": true,
     "actions": [
      "recenter"
     ],
     "note": "the operator cannot withdraw funds — exits and pool changes are the owner's"
    },
    "create": "https://unisafe.envelop.is/app?create=volatile"
   },
   "paper": {
    "updated_at": "2026-11-03T11:36:43Z",
    "started_at": "2026-11-02T08:19:37+00:00",
    "horizon_days": 7,
    "verdict": "hold",
    "detail": null,
    "checks": 27,
    "metrics": {
     "capital": 100.0,
     "nav": 99.810022,
     "hodl": 99.499658,
     "return_pct": -0.19,
     "hodl_return_pct": -0.5003,
     "fees_pct": 0.4575,
     "costs_pct": 0.0699,
     "exit_costs_pct": 0.01,
     "il_pct": -0.0773,
     "max_drawdown_pct": 1.5691,
     "time_in_range_pct": 100.0,
     "swaps": 4035,
     "rebalances": 0,
     "regime_holds": 0,
     "widened": 0,
     "days": 1.136,
     "beats_hodl": true,
     "price": 2264.29,
     "price_lower": 2212.81,
     "price_upper": 2363.77,
     "in_range": true,
     "capital_usd": 100.0,
     "drawdown_limit_pct": 10.0,
     "horizon_days": 7,
     "expected_return_pct": -1.1183,
     "lag_blocks": 0
    }
   }
  },
  {
   "schema": "think-tank.release/1",
   "strategy": "think-tank/wide-volatility-range-recenter",
   "version": "2.0.0",
   "binding": "wbtc-usdc-3000-unichain",
   "candidate": "lp-wbtc-usdc-fee3000-unichain-wide-hold",
   "title": "Wide volatility-sized range, recenter after an hour out",
   "idea": "On a thin, low-fee-yield BTC/USD pool, keep a wide range sized from recent volatility (never narrower than about +-6 %, never wider than 40 %) so ordinary moves earn fees without recenters. When the price leaves the range and stays out for an hour, recenter around the current price with a freshly sized range. Recenters are rare; swap cost, not gas, is what limits them.",
   "playbook": [
    {
     "when": "At start",
     "do": "Open one position in WBTC/USDC 0.30% on Unichain. Range width comes from volatility: ±3σ of the expected 24 h price move (σ from hourly pool prices over the last 24 h), never narrower than −5.8% … +6.2% and never wider than 40% in total. Centered on the pool price at entry. Both tokens go in, in the ratio the range needs; the missing part is swapped at entry."
    },
    {
     "when": "Price is inside the range",
     "do": "Do nothing. The position earns swap fees; they stay in the position and are not reinvested."
    },
    {
     "when": "Price stays outside the range for 1 h",
     "do": "Close the position and reopen it around the current price with the same width rule (σ recomputed). Costs gas and a swap. Not more often than once per 4 h."
    },
    {
     "when": "Chainlink price feed of either token is stale or missing",
     "do": "Make no changes until the feed is fresh again. Notify the owner."
    },
    {
     "when": "Every hour",
     "do": "Review the position. Allowed action: notify the owner, nothing else. Not modelled in the backtest."
    },
    {
     "when": "End of the 30d horizon",
     "do": "Remove the liquidity and keep both tokens as they are, without a swap."
    },
    {
     "when": "Never",
     "do": "Sell because the price falls (there is no stop-loss); move liquidity to another pool."
    }
   ],
   "manager_type": "volatile",
   "risk_class": "volatile",
   "chain_id": 130,
   "pools": [
    {
     "role": "main",
     "label": "WBTC/USDC fee 3000 ts 60",
     "chain_id": 130,
     "pool_id": "0xbd0f3a7cf4cf5f48ebe850474c8c0012fa5fe893ab811a8b8743a52b83aa8939",
     "pool_key": {
      "currency0": "0x0555e30da8f98308edb960aa94c0db47230d2b9c",
      "currency1": "0x078d782b760474a361dda0af3839290b0ef57ad6",
      "fee": 3000,
      "tick_spacing": 60,
      "hooks": "0x0000000000000000000000000000000000000000"
     },
     "fee": 3000,
     "tick_spacing": 60,
     "tokens": [
      {
       "symbol": "WBTC",
       "address": "0x0555e30da8f98308edb960aa94c0db47230d2b9c",
       "decimals": 8
      },
      {
       "symbol": "USDC",
       "address": "0x078d782b760474a361dda0af3839290b0ef57ad6",
       "decimals": 6
      }
     ],
     "width_ticks": null,
     "allocation_share": 1.0
    }
   ],
   "horizon": "30d",
   "capital_usd": 100.0,
   "status": "active",
   "stage": {
    "name": "paper",
    "state": "running",
    "since": "2026-10-31T10:48:21Z"
   },
   "released_at": "2026-10-31T10:48:21Z",
   "expires_at": "2027-01-29T10:48:21Z",
   "envelop": {
    "id": "think-tank/wide-volatility-range-recenter--wbtc-usdc-3000-unichain",
    "sha256": "ae5b03d47f452cc05880602055928e5e32ca13a5b6df6554247bce3806541398",
    "exact": true,
    "gaps": []
   },
   "evidence": {
    "backtest_sha256": "4ad3fef5a1741f348b84711980a719bd78607382f14bc502d097622e02dbef5c",
    "live": true,
    "works_on": [
     "30d"
    ],
    "expected_return_pct": 4.649,
    "expected_hodl_return_pct": 3.9231,
    "drawdown_limit_pct": 10.0,
    "capital_usd": 100.0,
    "holdout": {
     "history_days": 150,
     "from_block": 49724362,
     "test_from_block": 58796362,
     "to_block": 62684362,
     "test_share": 0.3
    }
   },
   "history": [
    {
     "at": "2026-10-31T10:48:21Z",
     "event": "released",
     "detail": "horizon 30d; position $100; lifetime 90 days"
    }
   ],
   "path": "strategies/wide-volatility-range-recenter/wbtc-usdc-3000-unichain",
   "slug": "wide-volatility-range-recenter--wbtc-usdc-3000-unichain",
   "manager": {
    "schema": "think-tank.manager-template/1",
    "strategy": "think-tank/wide-volatility-range-recenter",
    "version": "2.0.0",
    "binding": "wbtc-usdc-3000-unichain",
    "chain_id": 130,
    "manager_type": "volatile",
    "oracle_type": 3001,
    "pools": [
     {
      "role": "main",
      "label": "WBTC/USDC fee 3000 ts 60",
      "pool_key": {
       "currency0": "0x0555e30da8f98308edb960aa94c0db47230d2b9c",
       "currency1": "0x078d782b760474a361dda0af3839290b0ef57ad6",
       "fee": 3000,
       "tick_spacing": 60,
       "hooks": "0x0000000000000000000000000000000000000000"
      },
      "allocation_share": 1.0,
      "pool_id": "0xbd0f3a7cf4cf5f48ebe850474c8c0012fa5fe893ab811a8b8743a52b83aa8939"
     }
    ],
    "range": "chosen on every placement; recenter moves it",
    "oracle": {
     "required": true,
     "why": "operator swaps inside allocate/recenter/move settle only at the manager's oracle price (setPriceOracle) with fresh feeds for both currencies"
    },
    "operator": {
     "required": true,
     "actions": [
      "recenter"
     ],
     "note": "the operator cannot withdraw funds — exits and pool changes are the owner's"
    },
    "create": "https://unisafe.envelop.is/app?create=volatile"
   },
   "paper": {
    "updated_at": "2026-11-03T12:06:40Z",
    "started_at": "2026-10-31T10:48:00+00:00",
    "horizon_days": 30,
    "verdict": "hold",
    "detail": null,
    "checks": 69,
    "metrics": {
     "capital": 100.0,
     "nav": 99.712364,
     "hodl": 99.787428,
     "return_pct": -0.2876,
     "hodl_return_pct": -0.2126,
     "fees_pct": 0.1671,
     "costs_pct": 0.2353,
     "exit_costs_pct": 0.002,
     "il_pct": -0.0069,
     "max_drawdown_pct": 1.1546,
     "time_in_range_pct": 100.0,
     "swaps": 557,
     "rebalances": 0,
     "regime_holds": 0,
     "widened": 0,
     "days": 3.016,
     "beats_hodl": false,
     "price": 76873.0,
     "price_lower": 72608.8,
     "price_upper": 82358.3,
     "in_range": true,
     "capital_usd": 100.0,
     "drawdown_limit_pct": 10.0,
     "horizon_days": 30,
     "expected_return_pct": 4.649,
     "lag_blocks": 0
    }
   }
  }
 ]
}