chore(sim): gas-budgeted micro-trade scenario and support doc

Made-with: Cursor
This commit is contained in:
defiQUG
2026-04-07 22:45:56 -07:00
parent 589ebaff86
commit f7f3e3b020
2 changed files with 91 additions and 0 deletions

View File

@@ -0,0 +1,33 @@
{
"scenario": "micro_support_usd_wrappers_1_56_137",
"graphMode": "design",
"topology": "full_quote",
"chainsIncluded": ["1", "56", "137"],
"tokensIncluded": ["cWUSDT", "cWUSDC"],
"epochBlocks": 300,
"epochs": 720,
"orderflowModel": {
"distribution": "uniform",
"volumeMinUnits": 1000,
"volumeMaxUnits": 80000,
"tradesPerEpoch": 35
},
"microTradePolicy": {
"enabled": true,
"tokens": ["cWUSDT", "cWUSDC"],
"quoteTokens": ["USDT", "USDC"],
"preferMatchedQuote": true,
"mode": "inventory_or_alternate",
"tradeSizeUnits": 250,
"tradesPerEpoch": 8,
"gasCostPerTradeUnits": 2,
"gasBudgetPerEpochUnits": 16,
"inventoryBandFraction": 0.05,
"maxFractionOfTarget": 0.0025
},
"oracleModel": "static",
"latencyModel": {
"finalityBlocksPerChainPair": {},
"rhoPerBlockBps": 0.5
}
}

View File

@@ -0,0 +1,58 @@
# Gas-Budgeted Micro-Trade Support
Use a small, explicit gas budget to run **tiny support trades** in the most important wrapped USD rails:
- `cWUSDC` against `USDC`
- `cWUSDT` against `USDT`
- fallback to the chain hub stable only when the matched rail is unavailable
## What this is for
The goal is to give wrapped assets:
- observable turnover
- fresher route discovery
- tighter quote confidence
- inventory-sensitive support when a pool drifts away from target stock
This is a **liquidity and price-discovery support lane**. It does **not** create reserve backing or intrinsic value on its own.
## Operating rule
Use the support lane only when all of these remain true:
- the trades stay **micro** relative to `I_T^*`
- gas is capped per epoch or time window
- matched rails are preferred: `cWUSDC/USDC`, `cWUSDT/USDT`
- inventory correction happens first
- alternating buys/sells are allowed only inside a small inventory band
## Suggested control surface
Model or enforce these knobs:
- `tradeSizeUnits`
- `tradesPerEpoch`
- `gasCostPerTradeUnits`
- `gasBudgetPerEpochUnits`
- `inventoryBandFraction`
- `maxFractionOfTarget`
- `preferMatchedQuote`
## Recommended interpretation
Think of this as paying a small amount of gas to keep the wrapper corridor **economically live**:
- If pool inventory is too low, sell a tiny amount of cW into the pool.
- If pool inventory is too high, buy a tiny amount of cW from the pool.
- If inventory is already near target, allow only very small alternating trades, still under the gas cap.
## Scenario
The repo includes a ready-made scenario for the first three high-signal public rails:
```bash
node scripts/run-scenario.cjs micro_support_usd_wrappers_1_56_137
```
This runs on chains `1`, `56`, and `137` with `cWUSDT` and `cWUSDC`, full-quote topology, and a separate micro-trade policy budget.