56 lines
No EOL
1.6 KiB
Markdown
56 lines
No EOL
1.6 KiB
Markdown
# KRAIKEN LiquidityManager Fuzzing Analysis
|
|
|
|
Tools for testing KRAIKEN's three-position strategy resilience against various market conditions and trading patterns.
|
|
|
|
## Quick Start
|
|
|
|
```bash
|
|
# Run with specific optimizer (50 runs default)
|
|
./analysis/run-fuzzing.sh BullMarketOptimizer
|
|
|
|
# Custom runs and trades
|
|
./analysis/run-fuzzing.sh WhaleOptimizer runs=100 trades=30
|
|
|
|
# Debug mode with position tracking CSV (forces runs=1)
|
|
./analysis/run-fuzzing.sh NeutralMarketOptimizer debugCSV
|
|
```
|
|
|
|
## Available Optimizers
|
|
|
|
- `BullMarketOptimizer` - Buying bias
|
|
- `NeutralMarketOptimizer` - Balanced trading
|
|
- `BearMarketOptimizer` - Selling bias
|
|
- `WhaleOptimizer` - Large positions
|
|
- `RandomScenarioOptimizer` - Random behavior
|
|
|
|
## Output Structure
|
|
|
|
Each campaign creates `fuzzing_results_[optimizer]_[timestamp]/`:
|
|
- `config.txt` - Campaign parameters
|
|
- `run_*.log` - Individual run logs
|
|
- `merged_profitable_scenarios.csv` - Profitable scenarios combined
|
|
- `summary.txt` - Statistics and cumulative P&L
|
|
- `debug_positions_*.csv` - Position data (debugCSV mode only)
|
|
|
|
## Visualization
|
|
|
|
```bash
|
|
# Automatic launch with debugCSV
|
|
./analysis/run-fuzzing.sh [optimizer] debugCSV
|
|
|
|
# Manual server (port 8000)
|
|
./analysis/view-scenarios.sh
|
|
```
|
|
|
|
## Advanced Usage
|
|
|
|
```bash
|
|
# Manual fuzzing with environment variables
|
|
FUZZING_RUNS=500 TRACK_POSITIONS=true forge script analysis/FuzzingAnalysis.s.sol --ffi --via-ir
|
|
```
|
|
|
|
Environment variables:
|
|
- `FUZZING_RUNS` - Scenarios per market (default: 100)
|
|
- `TRACK_POSITIONS` - Enable position CSV (default: false)
|
|
- `OPTIMIZER_CLASS` - Optimizer to use
|
|
- `TRADES_PER_RUN` - Trades per run (default: 20) |