fix: Resolve fuzzing script issues with gas limits and CSV symlinks
- Increased gas limit to 100M to prevent out-of-gas errors during large swaps - Fixed symlink path for profitable_scenario.csv to work with visualizer - Position CSVs are now always generated when recording profitable scenarios The out-of-gas error was occurring when large KRAIKEN sells tried to traverse many tick ranges in Uniswap V3. The visualizer couldn't display data because the CSV symlink was created in the wrong directory. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
c1627dd4c9
commit
fbd8170198
22 changed files with 6373 additions and 4 deletions
|
|
@ -59,7 +59,7 @@ echo -e "${YELLOW}Starting recorded fuzzing analysis...${NC}"
|
|||
FUZZING_RUNS=$RUNS_VALUE \
|
||||
OPTIMIZER_CLASS=$OPTIMIZER \
|
||||
RUN_ID=$RUN_ID \
|
||||
forge script analysis/RecordedFuzzingAnalysis.s.sol:RecordedFuzzingAnalysis -vv 2>&1 | tee $OUTPUT_DIR/fuzzing.log
|
||||
forge script analysis/RecordedFuzzingAnalysis.s.sol:RecordedFuzzingAnalysis --gas-limit 100000000 -vv 2>&1 | tee $OUTPUT_DIR/fuzzing.log
|
||||
|
||||
# Check for generated scenario files
|
||||
SCENARIO_COUNT=$(ls -1 recorded_scenario_*.json 2>/dev/null | wc -l)
|
||||
|
|
@ -169,13 +169,13 @@ if [ $POSITION_CSV_COUNT -gt 0 ] && [ $SCENARIO_COUNT -gt 0 ]; then
|
|||
FIRST_CSV=$(ls -1 $OUTPUT_DIR/improved_positions_*.csv 2>/dev/null | head -1)
|
||||
echo "CSV file: $FIRST_CSV"
|
||||
|
||||
# Create a temporary symlink to the CSV for the viewer
|
||||
TEMP_LINK="profitable_scenario.csv"
|
||||
# Create a temporary symlink to the CSV for the viewer in the analysis directory
|
||||
TEMP_LINK="analysis/profitable_scenario.csv"
|
||||
if [ -f "$TEMP_LINK" ] || [ -L "$TEMP_LINK" ]; then
|
||||
rm -f "$TEMP_LINK"
|
||||
fi
|
||||
# Use absolute path for the symlink
|
||||
ln -s "$(pwd)/$FIRST_CSV" "$TEMP_LINK"
|
||||
ln -s "$(realpath $FIRST_CSV)" "$TEMP_LINK"
|
||||
|
||||
# Check if server is already running on common ports
|
||||
SERVER_RUNNING=false
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,5 @@
|
|||
|
||||
MassiveBuy,119273,127400,127600,25563614720653619409,120200,127400,152183492855657924602025,109200,120200,2325025585294773848086493,true
|
||||
WhaleDump,120090,127400,127600,25563614720653619409,120200,127400,152183492855657924602025,109200,120200,2325025585294773848086493,true
|
||||
Discovery_Reached,119012,124800,125000,35441680661270157275,117600,124800,161630528569314481719245,106600,117600,2469355297586749026266243,true
|
||||
Final,123585,124800,125000,35441680661270157275,117600,124800,161630528569314481719245,106600,117600,2469355297586749026266243,true
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
precedingAction, currentTick, floorTickLower, floorTickUpper, floorLiquidity, anchorTickLower, anchorTickUpper, anchorLiquidity, discoveryTickLower, discoveryTickUpper, discoveryLiquidity, token0isWeth
|
||||
Initial,-123891,-127600,-127400,25561339163394654594,-127400,-120200,152230779095623270236377,-120200,-109200,2325748013960911073055759,false
|
||||
Whale_0,-121593,-127600,-127400,25561339163394654594,-127400,-120200,152230779095623270236377,-120200,-109200,2325748013960911073055759,false
|
||||
Whale_2,-119901,-127600,-127400,25561339163394654594,-127400,-120200,152230779095623270236377,-120200,-109200,2325748013960911073055759,false
|
||||
Whale_4,-119608,-127600,-127400,25561339163394654594,-127400,-120200,152230779095623270236377,-120200,-109200,2325748013960911073055759,false
|
||||
Discovery_Reached,-119608,-127600,-127400,25561339163394654594,-127400,-120200,152230779095623270236377,-120200,-109200,2325748013960911073055759,false
|
||||
Final,-119663,-127600,-127400,25561339163394654594,-127400,-120200,152230779095623270236377,-120200,-109200,2325748013960911073055759,false
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
Recorded Fuzzing Results
|
||||
========================
|
||||
Run ID: 250818-JY0U
|
||||
Date: Mo 18. Aug 21:09:58 CEST 2025
|
||||
Optimizer: BullMarketOptimizer
|
||||
Total Runs: 20
|
||||
Profitable Scenarios: 2
|
||||
|
||||
Files:
|
||||
------
|
||||
- fuzzing.log
|
||||
- improved_positions_BullMarketOptimizer_0.csv
|
||||
- improved_positions_BullMarketOptimizer_1.csv
|
||||
- index.txt
|
||||
- replay_250818-JY0U_seed0.sol
|
||||
- replay_250818-JY0U_seed1.sol
|
||||
- scenario_250818-JY0U_seed0.json
|
||||
- scenario_250818-JY0U_seed1.json
|
||||
- summary_250818-JY0U_seed0.txt
|
||||
- summary_250818-JY0U_seed1.txt
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
// Replay script for profitable scenario
|
||||
// Seed: 0
|
||||
// Optimizer: BullMarketOptimizer
|
||||
// Discovery reached: YES
|
||||
|
||||
function replayScenario() public {
|
||||
// Step 0
|
||||
_executeBuy(trader, 93019778485341734687);
|
||||
// Tick moved from 123890 to 120098
|
||||
|
||||
// Step 1
|
||||
_executeBuy(whale, 244025272055601196358);
|
||||
// Tick moved from 120098 to 119273
|
||||
|
||||
// Step 2
|
||||
_executeSell(whale, 38079345162363541473731623);
|
||||
// Tick moved from 119273 to 120090
|
||||
|
||||
// Step 3
|
||||
_executeSell(trader, 8686624801143060187044758);
|
||||
// Tick moved from 120090 to 121269
|
||||
|
||||
// Step 4
|
||||
vm.warp(3601);
|
||||
vm.prank(feeDestination);
|
||||
lm.recenter();
|
||||
// Tick moved from 121269 to 121269
|
||||
|
||||
// Step 5
|
||||
_executeBuy(trader, 45396259308851266436);
|
||||
// Tick moved from 121269 to 119012
|
||||
|
||||
// Step 6
|
||||
_executeSell(trader, 16100675243303605610895622);
|
||||
// Tick moved from 119012 to 123585
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
// Replay script for profitable scenario
|
||||
// Seed: 1
|
||||
// Optimizer: BullMarketOptimizer
|
||||
// Discovery reached: YES
|
||||
|
||||
function replayScenario() public {
|
||||
// Step 0
|
||||
_executeBuy(trader, 38215432537912335624);
|
||||
// Tick moved from -123891 to -121593
|
||||
|
||||
// Step 1
|
||||
_executeSell(trader, 2023617577713031308513047);
|
||||
// Tick moved from -121593 to -122186
|
||||
|
||||
// Step 2
|
||||
_executeBuy(whale, 132122625892942968181);
|
||||
// Tick moved from -122186 to -119869
|
||||
|
||||
// Step 3
|
||||
_executeSell(trader, 1517713183284773481384785);
|
||||
// Tick moved from -119869 to -119901
|
||||
|
||||
// Step 4
|
||||
_executeBuy(whale, 66061312946471484091);
|
||||
// Tick moved from -119901 to -119677
|
||||
|
||||
// Step 5
|
||||
_executeSell(trader, 1138284887463580111038589);
|
||||
// Tick moved from -119677 to -119701
|
||||
|
||||
// Step 6
|
||||
_executeBuy(whale, 33030656473235742045);
|
||||
// Tick moved from -119701 to -119590
|
||||
|
||||
// Step 7
|
||||
_executeSell(trader, 853713665597685083278941);
|
||||
// Tick moved from -119590 to -119608
|
||||
|
||||
// Step 8
|
||||
_executeSell(trader, 2561140996793055249836826);
|
||||
// Tick moved from -119608 to -119663
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
{"scenario":{"seed":0,"optimizer":"BullMarketOptimizer","initialEth":"200000000000000000000","traderInitialEth":"437916987905703973573","startTimestamp":1,"startBlock":1,"token0isWeth":true,"poolFee":10000},"actions":[{"step":0,"type":"BUY","timestamp":1,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"132885397836202478125","traderKraiken":"0","currentTick":123890,"poolPrice":"38813714283599478074587411019430","vwap":"0","outstandingSupply":"413226953999797390248100716"}},{"step":1,"type":"BUY","timestamp":1,"block":1,"actor":"0x9e3AD1ae79015470ed3CfF3E062E4B3EAF11a797","preState":{"traderWeth":"39865619350860743438","traderKraiken":"17373249602286120374089516","currentTick":120098,"poolPrice":"32110464384401727662944198120161","vwap":"0","outstandingSupply":"413226953999797390248100716"}},{"step":2,"type":"SELL","timestamp":1,"block":1,"actor":"0x9e3AD1ae79015470ed3CfF3E062E4B3EAF11a797","preState":{"traderWeth":"39865619350860743438","traderKraiken":"17373249602286120374089516","currentTick":119273,"poolPrice":"30812862944640364687227822880556","vwap":"0","outstandingSupply":"413226953999797390248100716"}},{"step":3,"type":"SELL","timestamp":1,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"39865619350860743438","traderKraiken":"17373249602286120374089516","currentTick":120090,"poolPrice":"32097488370004114033187034337888","vwap":"0","outstandingSupply":"413226953999797390248100716"}},{"step":4,"type":"RECENTER","timestamp":1,"block":1,"actor":"0xA4E6160eF2Ee2E58Bf1aC59ad85D5e6a6Cf811e4","preState":{"traderWeth":"90792518617702532872","traderKraiken":"8686624801143060187044758","currentTick":121269,"poolPrice":"34047907384835713843150791308680","vwap":"0","outstandingSupply":"413226953999797390248100716"}},{"step":5,"type":"BUY","timestamp":3601,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"90792518617702532872","traderKraiken":"8686624801143060187044758","currentTick":121269,"poolPrice":"34047907384835713843150791308680","vwap":"0","outstandingSupply":"394463856810240134113940061"}},{"step":6,"type":"SELL","timestamp":3601,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"45396259308851266436","traderKraiken":"16100675243303605610895622","currentTick":119012,"poolPrice":"30413683092433275221583921948281","vwap":"0","outstandingSupply":"394463856810240134113940061"}}]}
|
||||
|
|
@ -0,0 +1 @@
|
|||
{"scenario":{"seed":1,"optimizer":"BullMarketOptimizer","initialEth":"200000000000000000000","traderInitialEth":"417106981937535278860","startTimestamp":3601,"startBlock":1,"token0isWeth":false,"poolFee":10000},"actions":[{"step":0,"type":"BUY","timestamp":5401,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"152861730151649342497","traderKraiken":"0","currentTick":-123891,"poolPrice":"161723773678779450733783246","vwap":"0","outstandingSupply":"413355367821089080069727544"}},{"step":1,"type":"SELL","timestamp":5401,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"114646297613737006873","traderKraiken":"8094470310852125234052188","currentTick":-121593,"poolPrice":"181414017218734744871703229","vwap":"0","outstandingSupply":"413355367821089080069727544"}},{"step":2,"type":"BUY","timestamp":5401,"block":1,"actor":"0x9e3AD1ae79015470ed3CfF3E062E4B3EAF11a797","preState":{"traderWeth":"124842831271889337408","traderKraiken":"6070852733139093925539141","currentTick":-122186,"poolPrice":"176107254482909757175841776","vwap":"0","outstandingSupply":"413355367821089080069727544"}},{"step":3,"type":"SELL","timestamp":5401,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"124842831271889337408","traderKraiken":"6070852733139093925539141","currentTick":-119869,"poolPrice":"197743845112692177382153477","vwap":"0","outstandingSupply":"413355367821089080069727544"}},{"step":4,"type":"BUY","timestamp":5401,"block":1,"actor":"0x9e3AD1ae79015470ed3CfF3E062E4B3EAF11a797","preState":{"traderWeth":"134187673424715730835","traderKraiken":"4553139549854320444154356","currentTick":-119901,"poolPrice":"197425506811074811873956860","vwap":"0","outstandingSupply":"413355367821089080069727544"}},{"step":5,"type":"SELL","timestamp":5401,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"134187673424715730835","traderKraiken":"4553139549854320444154356","currentTick":-119677,"poolPrice":"199653425417280065710376340","vwap":"0","outstandingSupply":"413355367821089080069727544"}},{"step":6,"type":"BUY","timestamp":5401,"block":1,"actor":"0x9e3AD1ae79015470ed3CfF3E062E4B3EAF11a797","preState":{"traderWeth":"141335114312326533197","traderKraiken":"3414854662390740333115767","currentTick":-119701,"poolPrice":"199409943060289759425132754","vwap":"0","outstandingSupply":"413355367821089080069727544"}},{"step":7,"type":"SELL","timestamp":5401,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"141335114312326533197","traderKraiken":"3414854662390740333115767","currentTick":-119590,"poolPrice":"200523902363392386343308428","vwap":"0","outstandingSupply":"413355367821089080069727544"}},{"step":8,"type":"SELL","timestamp":5401,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"146744168046319825366","traderKraiken":"2561140996793055249836826","currentTick":-119608,"poolPrice":"200339639328139758352135908","vwap":"0","outstandingSupply":"413355367821089080069727544"}}]}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
=== PROFITABLE SCENARIO SUMMARY ===
|
||||
Run ID: 250818-JY0U
|
||||
Seed: 0
|
||||
Optimizer: BullMarketOptimizer
|
||||
Discovery Reached: YES
|
||||
|
||||
Financial Results:
|
||||
Initial Balance: 50 ETH
|
||||
Final Balance: 131 ETH
|
||||
Profit: 81 ETH (162%)
|
||||
|
||||
Action Sequence:
|
||||
1. BUY - Trader - Amount: 93 ETH - Tick: 123890 -> 120098
|
||||
2. BUY - Whale - Amount: 244 ETH - Tick: 120098 -> 119273
|
||||
3. SELL - Whale - Amount: 38079345 ETH - Tick: 119273 -> 120090
|
||||
4. SELL - Trader - Amount: 8686624 ETH - Tick: 120090 -> 121269
|
||||
5. RECENTER - System - Tick: 121269 -> 121269
|
||||
6. BUY - Trader - Amount: 45 ETH - Tick: 121269 -> 119012
|
||||
7. SELL - Trader - Amount: 16100675 ETH - Tick: 119012 -> 123585
|
||||
|
||||
This scenario can be replayed using the generated replay script.
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
=== PROFITABLE SCENARIO SUMMARY ===
|
||||
Run ID: 250818-JY0U
|
||||
Seed: 1
|
||||
Optimizer: BullMarketOptimizer
|
||||
Discovery Reached: YES
|
||||
|
||||
Financial Results:
|
||||
Initial Balance: 50 ETH
|
||||
Final Balance: 162 ETH
|
||||
Profit: 112 ETH (225%)
|
||||
|
||||
Action Sequence:
|
||||
1. BUY - Trader - Amount: 38 ETH - Tick: -123891 -> -121593
|
||||
2. SELL - Trader - Amount: 2023617 ETH - Tick: -121593 -> -122186
|
||||
3. BUY - Whale - Amount: 132 ETH - Tick: -122186 -> -119869
|
||||
4. SELL - Trader - Amount: 1517713 ETH - Tick: -119869 -> -119901
|
||||
5. BUY - Whale - Amount: 66 ETH - Tick: -119901 -> -119677
|
||||
6. SELL - Trader - Amount: 1138284 ETH - Tick: -119677 -> -119701
|
||||
7. BUY - Whale - Amount: 33 ETH - Tick: -119701 -> -119590
|
||||
8. SELL - Trader - Amount: 853713 ETH - Tick: -119590 -> -119608
|
||||
9. SELL - Trader - Amount: 2561140 ETH - Tick: -119608 -> -119663
|
||||
|
||||
This scenario can be replayed using the generated replay script.
|
||||
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,5 @@
|
|||
|
||||
MassiveBuy,119273,127400,127600,25563614720653619409,120200,127400,152183492855657924602025,109200,120200,2325025585294773848086493,true
|
||||
WhaleDump,120090,127400,127600,25563614720653619409,120200,127400,152183492855657924602025,109200,120200,2325025585294773848086493,true
|
||||
Discovery_Reached,119012,124800,125000,35441680661270157275,117600,124800,161630528569314481719245,106600,117600,2469355297586749026266243,true
|
||||
Final,123585,124800,125000,35441680661270157275,117600,124800,161630528569314481719245,106600,117600,2469355297586749026266243,true
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
precedingAction, currentTick, floorTickLower, floorTickUpper, floorLiquidity, anchorTickLower, anchorTickUpper, anchorLiquidity, discoveryTickLower, discoveryTickUpper, discoveryLiquidity, token0isWeth
|
||||
Initial,-123891,-127600,-127400,25561339163394654594,-127400,-120200,152230779095623270236377,-120200,-109200,2325748013960911073055759,false
|
||||
Whale_0,-121593,-127600,-127400,25561339163394654594,-127400,-120200,152230779095623270236377,-120200,-109200,2325748013960911073055759,false
|
||||
Whale_2,-119901,-127600,-127400,25561339163394654594,-127400,-120200,152230779095623270236377,-120200,-109200,2325748013960911073055759,false
|
||||
Whale_4,-119608,-127600,-127400,25561339163394654594,-127400,-120200,152230779095623270236377,-120200,-109200,2325748013960911073055759,false
|
||||
Discovery_Reached,-119608,-127600,-127400,25561339163394654594,-127400,-120200,152230779095623270236377,-120200,-109200,2325748013960911073055759,false
|
||||
Final,-119663,-127600,-127400,25561339163394654594,-127400,-120200,152230779095623270236377,-120200,-109200,2325748013960911073055759,false
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
Recorded Fuzzing Results
|
||||
========================
|
||||
Run ID: 250818-WAER
|
||||
Date: Mo 18. Aug 21:10:41 CEST 2025
|
||||
Optimizer: BullMarketOptimizer
|
||||
Total Runs: 20
|
||||
Profitable Scenarios: 2
|
||||
|
||||
Files:
|
||||
------
|
||||
- fuzzing.log
|
||||
- improved_positions_BullMarketOptimizer_0.csv
|
||||
- improved_positions_BullMarketOptimizer_1.csv
|
||||
- index.txt
|
||||
- replay_250818-WAER_seed0.sol
|
||||
- replay_250818-WAER_seed1.sol
|
||||
- scenario_250818-WAER_seed0.json
|
||||
- scenario_250818-WAER_seed1.json
|
||||
- summary_250818-WAER_seed0.txt
|
||||
- summary_250818-WAER_seed1.txt
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
// Replay script for profitable scenario
|
||||
// Seed: 0
|
||||
// Optimizer: BullMarketOptimizer
|
||||
// Discovery reached: YES
|
||||
|
||||
function replayScenario() public {
|
||||
// Step 0
|
||||
_executeBuy(trader, 93019778485341734687);
|
||||
// Tick moved from 123890 to 120098
|
||||
|
||||
// Step 1
|
||||
_executeBuy(whale, 244025272055601196358);
|
||||
// Tick moved from 120098 to 119273
|
||||
|
||||
// Step 2
|
||||
_executeSell(whale, 38079345162363541473731623);
|
||||
// Tick moved from 119273 to 120090
|
||||
|
||||
// Step 3
|
||||
_executeSell(trader, 8686624801143060187044758);
|
||||
// Tick moved from 120090 to 121269
|
||||
|
||||
// Step 4
|
||||
vm.warp(3601);
|
||||
vm.prank(feeDestination);
|
||||
lm.recenter();
|
||||
// Tick moved from 121269 to 121269
|
||||
|
||||
// Step 5
|
||||
_executeBuy(trader, 45396259308851266436);
|
||||
// Tick moved from 121269 to 119012
|
||||
|
||||
// Step 6
|
||||
_executeSell(trader, 16100675243303605610895622);
|
||||
// Tick moved from 119012 to 123585
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
// Replay script for profitable scenario
|
||||
// Seed: 1
|
||||
// Optimizer: BullMarketOptimizer
|
||||
// Discovery reached: YES
|
||||
|
||||
function replayScenario() public {
|
||||
// Step 0
|
||||
_executeBuy(trader, 38215432537912335624);
|
||||
// Tick moved from -123891 to -121593
|
||||
|
||||
// Step 1
|
||||
_executeSell(trader, 2023617577713031308513047);
|
||||
// Tick moved from -121593 to -122186
|
||||
|
||||
// Step 2
|
||||
_executeBuy(whale, 132122625892942968181);
|
||||
// Tick moved from -122186 to -119869
|
||||
|
||||
// Step 3
|
||||
_executeSell(trader, 1517713183284773481384785);
|
||||
// Tick moved from -119869 to -119901
|
||||
|
||||
// Step 4
|
||||
_executeBuy(whale, 66061312946471484091);
|
||||
// Tick moved from -119901 to -119677
|
||||
|
||||
// Step 5
|
||||
_executeSell(trader, 1138284887463580111038589);
|
||||
// Tick moved from -119677 to -119701
|
||||
|
||||
// Step 6
|
||||
_executeBuy(whale, 33030656473235742045);
|
||||
// Tick moved from -119701 to -119590
|
||||
|
||||
// Step 7
|
||||
_executeSell(trader, 853713665597685083278941);
|
||||
// Tick moved from -119590 to -119608
|
||||
|
||||
// Step 8
|
||||
_executeSell(trader, 2561140996793055249836826);
|
||||
// Tick moved from -119608 to -119663
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
{"scenario":{"seed":0,"optimizer":"BullMarketOptimizer","initialEth":"200000000000000000000","traderInitialEth":"437916987905703973573","startTimestamp":1,"startBlock":1,"token0isWeth":true,"poolFee":10000},"actions":[{"step":0,"type":"BUY","timestamp":1,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"132885397836202478125","traderKraiken":"0","currentTick":123890,"poolPrice":"38813714283599478074587411019430","vwap":"0","outstandingSupply":"413226953999797390248100716"}},{"step":1,"type":"BUY","timestamp":1,"block":1,"actor":"0x9e3AD1ae79015470ed3CfF3E062E4B3EAF11a797","preState":{"traderWeth":"39865619350860743438","traderKraiken":"17373249602286120374089516","currentTick":120098,"poolPrice":"32110464384401727662944198120161","vwap":"0","outstandingSupply":"413226953999797390248100716"}},{"step":2,"type":"SELL","timestamp":1,"block":1,"actor":"0x9e3AD1ae79015470ed3CfF3E062E4B3EAF11a797","preState":{"traderWeth":"39865619350860743438","traderKraiken":"17373249602286120374089516","currentTick":119273,"poolPrice":"30812862944640364687227822880556","vwap":"0","outstandingSupply":"413226953999797390248100716"}},{"step":3,"type":"SELL","timestamp":1,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"39865619350860743438","traderKraiken":"17373249602286120374089516","currentTick":120090,"poolPrice":"32097488370004114033187034337888","vwap":"0","outstandingSupply":"413226953999797390248100716"}},{"step":4,"type":"RECENTER","timestamp":1,"block":1,"actor":"0xA4E6160eF2Ee2E58Bf1aC59ad85D5e6a6Cf811e4","preState":{"traderWeth":"90792518617702532872","traderKraiken":"8686624801143060187044758","currentTick":121269,"poolPrice":"34047907384835713843150791308680","vwap":"0","outstandingSupply":"413226953999797390248100716"}},{"step":5,"type":"BUY","timestamp":3601,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"90792518617702532872","traderKraiken":"8686624801143060187044758","currentTick":121269,"poolPrice":"34047907384835713843150791308680","vwap":"0","outstandingSupply":"394463856810240134113940061"}},{"step":6,"type":"SELL","timestamp":3601,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"45396259308851266436","traderKraiken":"16100675243303605610895622","currentTick":119012,"poolPrice":"30413683092433275221583921948281","vwap":"0","outstandingSupply":"394463856810240134113940061"}}]}
|
||||
|
|
@ -0,0 +1 @@
|
|||
{"scenario":{"seed":1,"optimizer":"BullMarketOptimizer","initialEth":"200000000000000000000","traderInitialEth":"417106981937535278860","startTimestamp":3601,"startBlock":1,"token0isWeth":false,"poolFee":10000},"actions":[{"step":0,"type":"BUY","timestamp":5401,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"152861730151649342497","traderKraiken":"0","currentTick":-123891,"poolPrice":"161723773678779450733783246","vwap":"0","outstandingSupply":"413355367821089080069727544"}},{"step":1,"type":"SELL","timestamp":5401,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"114646297613737006873","traderKraiken":"8094470310852125234052188","currentTick":-121593,"poolPrice":"181414017218734744871703229","vwap":"0","outstandingSupply":"413355367821089080069727544"}},{"step":2,"type":"BUY","timestamp":5401,"block":1,"actor":"0x9e3AD1ae79015470ed3CfF3E062E4B3EAF11a797","preState":{"traderWeth":"124842831271889337408","traderKraiken":"6070852733139093925539141","currentTick":-122186,"poolPrice":"176107254482909757175841776","vwap":"0","outstandingSupply":"413355367821089080069727544"}},{"step":3,"type":"SELL","timestamp":5401,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"124842831271889337408","traderKraiken":"6070852733139093925539141","currentTick":-119869,"poolPrice":"197743845112692177382153477","vwap":"0","outstandingSupply":"413355367821089080069727544"}},{"step":4,"type":"BUY","timestamp":5401,"block":1,"actor":"0x9e3AD1ae79015470ed3CfF3E062E4B3EAF11a797","preState":{"traderWeth":"134187673424715730835","traderKraiken":"4553139549854320444154356","currentTick":-119901,"poolPrice":"197425506811074811873956860","vwap":"0","outstandingSupply":"413355367821089080069727544"}},{"step":5,"type":"SELL","timestamp":5401,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"134187673424715730835","traderKraiken":"4553139549854320444154356","currentTick":-119677,"poolPrice":"199653425417280065710376340","vwap":"0","outstandingSupply":"413355367821089080069727544"}},{"step":6,"type":"BUY","timestamp":5401,"block":1,"actor":"0x9e3AD1ae79015470ed3CfF3E062E4B3EAF11a797","preState":{"traderWeth":"141335114312326533197","traderKraiken":"3414854662390740333115767","currentTick":-119701,"poolPrice":"199409943060289759425132754","vwap":"0","outstandingSupply":"413355367821089080069727544"}},{"step":7,"type":"SELL","timestamp":5401,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"141335114312326533197","traderKraiken":"3414854662390740333115767","currentTick":-119590,"poolPrice":"200523902363392386343308428","vwap":"0","outstandingSupply":"413355367821089080069727544"}},{"step":8,"type":"SELL","timestamp":5401,"block":1,"actor":"0x10E951fA67B511D044803c7757DA445Ddf646f6d","preState":{"traderWeth":"146744168046319825366","traderKraiken":"2561140996793055249836826","currentTick":-119608,"poolPrice":"200339639328139758352135908","vwap":"0","outstandingSupply":"413355367821089080069727544"}}]}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
=== PROFITABLE SCENARIO SUMMARY ===
|
||||
Run ID: 250818-WAER
|
||||
Seed: 0
|
||||
Optimizer: BullMarketOptimizer
|
||||
Discovery Reached: YES
|
||||
|
||||
Financial Results:
|
||||
Initial Balance: 50 ETH
|
||||
Final Balance: 131 ETH
|
||||
Profit: 81 ETH (162%)
|
||||
|
||||
Action Sequence:
|
||||
1. BUY - Trader - Amount: 93 ETH - Tick: 123890 -> 120098
|
||||
2. BUY - Whale - Amount: 244 ETH - Tick: 120098 -> 119273
|
||||
3. SELL - Whale - Amount: 38079345 ETH - Tick: 119273 -> 120090
|
||||
4. SELL - Trader - Amount: 8686624 ETH - Tick: 120090 -> 121269
|
||||
5. RECENTER - System - Tick: 121269 -> 121269
|
||||
6. BUY - Trader - Amount: 45 ETH - Tick: 121269 -> 119012
|
||||
7. SELL - Trader - Amount: 16100675 ETH - Tick: 119012 -> 123585
|
||||
|
||||
This scenario can be replayed using the generated replay script.
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
=== PROFITABLE SCENARIO SUMMARY ===
|
||||
Run ID: 250818-WAER
|
||||
Seed: 1
|
||||
Optimizer: BullMarketOptimizer
|
||||
Discovery Reached: YES
|
||||
|
||||
Financial Results:
|
||||
Initial Balance: 50 ETH
|
||||
Final Balance: 162 ETH
|
||||
Profit: 112 ETH (225%)
|
||||
|
||||
Action Sequence:
|
||||
1. BUY - Trader - Amount: 38 ETH - Tick: -123891 -> -121593
|
||||
2. SELL - Trader - Amount: 2023617 ETH - Tick: -121593 -> -122186
|
||||
3. BUY - Whale - Amount: 132 ETH - Tick: -122186 -> -119869
|
||||
4. SELL - Trader - Amount: 1517713 ETH - Tick: -119869 -> -119901
|
||||
5. BUY - Whale - Amount: 66 ETH - Tick: -119901 -> -119677
|
||||
6. SELL - Trader - Amount: 1138284 ETH - Tick: -119677 -> -119701
|
||||
7. BUY - Whale - Amount: 33 ETH - Tick: -119701 -> -119590
|
||||
8. SELL - Trader - Amount: 853713 ETH - Tick: -119590 -> -119608
|
||||
9. SELL - Trader - Amount: 2561140 ETH - Tick: -119608 -> -119663
|
||||
|
||||
This scenario can be replayed using the generated replay script.
|
||||
File diff suppressed because one or more lines are too long
Loading…
Add table
Add a link
Reference in a new issue