You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+9-7Lines changed: 9 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -41,7 +41,7 @@ flowchart LR
41
41
42
42
## What is this
43
43
44
-
-**Multi-protocol DeFi environment** — Uniswap V3 / Balancer v2 / Curve / Aave v3 / GMX v2are all provisioned on a single Anvil, and enabled pluggably through the protocol adapter registry (`sdk/src/protocols/`).
44
+
-**Multi-protocol DeFi environment** — Uniswap V3 / Balancer v2 / Curve / Aave v3 / GMX v2, plus a liquid-staking venue (a wstETH-style vault and its LST/WETH market), are all provisioned on a single Anvil and enabled pluggably through the protocol adapter registry (`sdk/src/protocols/`).
45
45
-**Multi-agent competition** — agents run as fully independent processes, subscribe to blocks at their own pace, and sign and send directly themselves. In-block ordering is determined by anvil `--order fees` (descending priority fee).
46
46
-**Controllable fair price** — the coordinator generates a SEED-derived deterministic fair price every block and writes it to the on-chain `PriceFeed` and mock oracles. Aave health factors and GMX mark prices follow it.
47
47
-**Market stress & liquidation** — price spikes/crashes can be injected to trigger the Aave liquidation path.
@@ -93,15 +93,17 @@ To skip LLMs entirely and run the same strategies rule-based (`agent.ts`), remov
93
93
# Separate terminal: start anvil + deploy all venues via deployer (do not pass --exit)
94
94
cd deployer && npm run deploy -- --keep-fresh
95
95
96
-
# poc side (repository root): import the deploy addresses and run in local deploy mode
96
+
# poc side (repository root): import the deploy addresses and run
#The roster is the inline agents in config/local.yaml (edit the YAML to swap it out.
101
-
#backtest supports swapping via --agents <roster.yaml>)
98
+
npm run sim:realtime
99
+
# The roster and every run knob come from config/local.yaml (edit the YAML to swap them out;
100
+
#backtest supports swapping the roster via --agents <roster.yaml>). One-off overrides are CLI
101
+
#flags: npm run sim:realtime -- --seed 2 --blocks 40
102
102
```
103
103
104
-
> The `--local-deploy` flag (or config `run.localDeploy: true`) switches to local deploy mode. The CLI entry point detects this at startup, sets `ERIS_LOCAL_DEPLOY=1` internally, and `sdk/src/constants.ts` overlays the locally-deployed addresses (WETH/USDC/WBTC, etc.) — no need to pass the env by hand.
104
+
> `config/example.yaml` ships with `run.localDeploy: true`, so no flag is needed. The CLI entry point detects it at startup, sets `ERIS_LOCAL_DEPLOY=1` internally, and `sdk/src/constants.ts` overlays the locally-deployed addresses (WETH/USDC/WBTC, etc.) — no need to pass the env by hand. `--local-deploy` still works as a one-off override for a config that does not set it.
105
+
106
+
> To run against an Arbitrum fork instead, set `run.localDeploy: false` in `config/local.yaml`, remove `lst` from `run.protocols` (its vault is deployed by us and has no Arbitrum counterpart), put `ARB_RPC_URL` in `.env.local`, and start `npm run anvil` in another terminal.
105
107
106
108
> LLM decisions take ~10s each, hence the 100-block / 300s run above (rule-based runs are fine with 24 blocks / 70s). If the trading agents only emit `noop`, you probably skipped [Choose an LLM backend](#choose-an-llm-backend) — check `runs/<run_id>/agents/<id>.jsonl` for `llm cycle skipped`.
0 commit comments