Releases: delvtech/agent0
Releases · delvtech/agent0
interactive agent0
What's Changed
- adds an interactive agent0 workflow to enable running economic experiments in jupyter notebooks
- improves typing system using pypechain
- various bug fixes, doc improvements, and new tests
PRs
- Adding explicit postgres version in database janitor by @slundqui in #1098
- Lateral deps need to install packages with all dependencies by @slundqui in #1100
- move stateful variables into their own folder & centralize types by @dpaiton in #1099
- convert LPandArb bot to use rust sdk by @wakamex in #1102
- random agent policy test by @dpaiton in #1103
- Interactive Agent0 by @slundqui in #1101
- Adding docs badge to readme by @slundqui in #1109
- Fixing and cleaning up various db interface issues with interactive hyperdrive by @slundqui in #1110
- Update Hypertypes by @sentilesdal in #1104
- agent0 banner and fix codecov to ignore generated files by @dpaiton in #1111
- move camel_to_snake by @sentilesdal in #1112
- Consolidate hypertypes types, integrate pypechain by @sentilesdal in #1113
- add multimethod to requirements by @wakamex in #1114
- mark tests by @wakamex in #1115
- increment agent0 version to 0.10.0 by @dpaiton in #1117
Full Changelog: v0.9.0...v0.10.0
deprecate elfpy; hyperdrive 0.3.0
What's Changed
- Rename repo from elf-simulations to agent0
- Deprecate elfpy
- Update to support Hyperdrive 0.3.0
- Improve API DX & docs
- Improve fuzz test workflow
PRs
- increments version by @dpaiton in #1068
- API updates for consistent and modifiable state by @dpaiton in #1063
- easier to adjust api pool state by @dpaiton in #1069
- Fix Hyperdrive API docstrings by @dpaiton in #1074
- check docker desktop socket by @wakamex in #1076
- Update for hyperdrive v0.2.0 by @slundqui in #1075
- separate local chain fixture logic by @wakamex in #1081
- test bots hitting target rate by @wakamex in #1078
- move logs out of elfpy by @dpaiton in #1080
- Ethpy transaction hotfixes by @slundqui in #1079
- move trade, market type, WEI, json encoder out of elfpy by @dpaiton in #1082
- deprecate elfpy by @dpaiton in #1083
- hotfix for pylintrc by @dpaiton in #1084
- Db api server hotfix by @slundqui in #1085
- Get events script by @slundqui in #1086
- Removes existing test postgres container if it exists in tests by @slundqui in #1088
- Adding parameter controlling if we stop chain on crash for fuzz bots by @slundqui in #1089
- rename cls to interface in api hidden methods by @dpaiton in #1090
- Hyperdrive 0 3 0 by @slundqui in #1087
- Retries in submitting transactions by @slundqui in #1091
- Agent wallet state test against chain by @slundqui in #1092
- Changing default value for fuzzbots for stopping the chain on crash by @slundqui in #1093
- renames from elf-simulations to agent0 by @dpaiton in #1094
- update codecov badge by @dpaiton in #1095
- increment version by @dpaiton in #1096
Full Changelog: v0.8.3...v0.9.0
crash report and api improvements
What's Changed
- reorganizes API for better developer experience
- adds new functions to hyperdrive-rs and the python wrappers
- improves crash reporting
PRs
- increments version by @dpaiton
- Merge pull request #1066 from delvtech/develop by @dpaiton
- mock open long and short by @dpaiton in #1062
- Fix typos in INSTALL.md by @ryangoree in #1047
- delete hyperdrive notebook by @dpaiton in #1061
- Bug fixes for getting total supply withdrawal shares in pool info by @slundqui in #1056
- Changing args to build_user_mapping to allow for offline data by @slundqui in #1055
- Hotfix for decimal too large in transactions table in export by @slundqui in #1054
- Lateral installs also includes the lateral package base dependencies by @slundqui in #1053
- Adding error lookup in preview transaction by @slundqui in #1052
- Export db to parquet and import parquet to pandas by @slundqui in #1051
- Fixing arguments to smart contract functions in python by @slundqui in #1049
- Raw transaction in crash report by @slundqui in #1048
- refactor Hyperdrive API by @slundqui in #1042
- adds calc_bonds_given_rate_and_shares api function by @dpaiton in #1040
- Wrapping contract calls in custom exception by @slundqui in #1046
- No longer setting maturity time when not set by @slundqui in #1041
- Machine crash report by @slundqui in #1036
- Adding explicit script for running fuzz testing that pauses chain on crash by @slundqui in #1035
- Option for machine readable crash report to file by @slundqui in #1034
- Adding anvil state to crash report by @slundqui in #1029
- Always preview and preview on same block. Fixing slippage in policies. by @slundqui in #1028
Full Changelog: v0.8.2...v0.8.3
adds lp and arb bot; trading comp fixes; speedup w/ contract calls
What's Changed
- new lp-and-arb bot for making smart arbitration trades
- a lot of various bugfixes from feedback during the trading competition
- bot process is faster with fewer contract calls
PRs
- Crash report in valid json format, adding exp backoff to wait for trx receipt by @slundqui in #1012
- adds vault shares as a Hyperdrive API property by @dpaiton in #1013
- Adding in vault shares and checkpoint info to crash reporting by @slundqui in #1014
- new bot: LP and Arb by @wakamex in #1000
- Mention arguments in STYLEGUIDE.md by @wakamex in #1016
- fix typing issues from latest pyright update by @dpaiton in #1019
- Adding more logging info to checkpoint bot by @slundqui in #1017
- fix api checkpoint acquisition by @dpaiton in #1020
- Explicitly calculating withdrawal shares pnl instead of preview by @slundqui in #1024
- Updating list of usernames by @slundqui in #1023
- fix convergence in LPandArb bot by @wakamex in #1030
- Analysis hotfix by @slundqui in #1031
- Adjusting withdrawal shares value by @slundqui in #1032
- analysis bug fix by @slundqui in #1037
- Don't check base when launching bots by @slundqui in #1038
- Analysis hotfix by @slundqui in #1043
- Exp backoff when trading if new block by @slundqui in #1044
- Fixing when to aggregate when multiple trades per block by @slundqui in #1059
- tick project version by @dpaiton in #1064
Full Changelog: v0.8.1...v0.8.2
various bugfixes for trading comp
What's Changed
- Fixed bugs with crash reporting, user registry, and example defaults for the trading competition
- Adds API functions for calculating fees
PRs
- Hotfix for crash report by @slundqui in #999
- use min and max apr in add liquidity call by @wakamex in #1001
- Checkpoint bot bugfix by @slundqui in #1003
- Changing bot script defaults for halting and logging by @slundqui in #1004
- add foundry as dev requirement by @wakamex in #1005
- don't allow trades if bot doesn't have enough base by @sentilesdal in #1007
- Dashboard token naming by @slundqui in #1006
- add get_in_out funcs to interface by @wakamex in #1008
- Updating list of wallet to username mappings by @slundqui in #1009
- increment pyproject version by @dpaiton in #1011
Full Changelog: v0.8.0...v0.8.1
hyperdrive v0.0.16; api improvements
What's changed
- standardizes loading & describing bot policies (model zoo)
- improvements to the Hyperdrive API
- improves error handling & makes contract calls more robust
- dashboard updates
- switches to using external pypechain package
PRs
- model zoo by @wakamex in #974
- Address -> username and username -> user rework by @slundqui in #975
- Adding liquidate option for running bots by @slundqui in #976
- add the ability to fetch variable rate by @dpaiton in #965
- Adding in functionality to retry contract read and write calls by @slundqui in #981
- Removing old field in checkpoint info by @slundqui in #982
- Use pypechain package by @sentilesdal in #978
- Funding bots now async with retries by @slundqui in #983
- Adding variable rate to dashboard by @slundqui in #986
- Adjusting ohlcv plot to handle speed up time mode by @slundqui in #989
- Adjusting sleep in checkpoint bot for sped up time by @slundqui in #990
- Fixing plot for open positions plot by @slundqui in #991
- Crash reporting now takes optional argument for log level by @slundqui in #992
- Adjusting parameters for specifying how to connect to chain by @slundqui in #993
- Update docs by @dpaiton in #996
- Budget defaults by @slundqui in #997
- Add smart_long policy by @sentilesdal in #994
- add agent and additional info to crash report by @wakamex in #985
- increment version; support hyperdrive17 by @dpaiton in #998
Full Changelog: v0.7.0...v0.8.0
support hyperdrive v0.0.15; improve error handling
What's Changed
- update to support hyperdrive v0.0.15 contracts
- improved error handling for slippage and agents that are done trading or have insufficient funds
- improvements to the dashboard and database
- improved policy development workflow with staticly typed custom configs
PRs
- Supports clean exits from agents when done trading by @slundqui in #943
- Removing obsolete data functions from dashboard by @slundqui in #944
- Total pnl in wallet stats now rank by pnl by @slundqui in #951
- Setting postgres tests as optional if docker engine isn't installed, but force run them in CI by @slundqui in #952
- Static types for custom policy configs by @slundqui in #955
- move hyperdrive pool deployment into ethpy/hyperdrive by @dpaiton in #953
- update agent0 readme docs by @dpaiton in #958
- updates for hyperdrive 0.0.15 by @dpaiton in #959
- Flag for halting on slippage error that defaults to False by @slundqui in #954
- Check for invalid balance in crash reporting, and add message to exception if detected by @slundqui in #964
- bumps project version to 0.7.0 by @dpaiton in #968
Full Changelog: v0.6.0...v0.7.0
v0.6.0
What's Changed
- Adds the pypechain package for generating typed objects from contract ABI JSON files
- Adds wheels to install pyperdrive, the python-wrapped hyperdrive-rust API
- Adds HyperdriveInterface API for easier coordination of bot trades
- Bots can load previously utilized wallets on boot, allowing for restarts
- Dashboard refactor -- new plots; speed improvements; robustness improvements
- Moved docs to readthedocs from vercel
- Improved crash reporting & handling
- Improved database interface to add an API server that supports queries from outside users
- Adds an arb bot & (temporarily) removes smart long and short bots
- tons of bugfixes & code refactors to support user and dev experiences
PRs
- Create MVP Pypechain lib by @sentilesdal in #840
- ignore top level .configs by @sentilesdal in #841
- Update pyproject.toml to ignore the .venv directory when linting by @sentilesdal in #842
- Using local postgres for pytest by @slundqui in #843
- adds the pyperdrive wheel by @dpaiton in #835
- Getting most recent block in acquire_data by @slundqui in #845
- Analysis stage by @slundqui in #844
- Analysis hotfix by @slundqui in #848
- New dashboard page and plots by @slundqui in #849
- add pyperdrive package to gh workflow by @dpaiton in #846
- hotfix for pyperdrive install by @dpaiton in #852
- Generate Python types for all internal Solidity contract types. by @sentilesdal in #847
- pypechain: use fstrings by @wakamex in #853
- fix: save old balance before update (associated linting) by @wakamex in #860
- fix: save old balance before update (functional change) by @wakamex in #859
- pypechain: code reuse with stringify_parameters by @wakamex in #854
- Fixing plots to share x axis by @slundqui in #855
- adds pyperdrive build wheels by @dpaiton in #862
- Using readthedocs for doc building by @slundqui in #865
- Fixing postgres fixture by @slundqui in #866
- fix random agent withdraw shares by @wakamex in #868
- Fixing an issue with passing in string in exp notation to fixedpoint by @slundqui in #871
- Using loopback interface instead of localhost by @slundqui in #873
- Updating required docker setting under install.md for tests. Updating… by @slundqui in #874
- Updating docs by @slundqui in #875
- Add events to ContractTypes.py by @sentilesdal in #876
- Explicitly closing figures by @slundqui in #878
- override variables in load_dotenv by @wakamex in #884
- pypechain: code reuse with format_code and write_code by @wakamex in #861
- consistent naming of URIs by @dpaiton in #890
- Streamlit performance optimizations by @slundqui in #880
- pypechain support for functions with multiple signatures by @dpaiton in #893
- Get wallet state from db by @slundqui in #894
- add hyperdrive types by @dpaiton in #888
- add a hyperdrive api by @dpaiton in #870
- Fix Event Params and conditional imports by @sentilesdal in #898
- Fixing a bug with default flask host and port by @slundqui in #900
- Fixing a bug with maturitytime type by @slundqui in #901
- fixes codegen_test to auto-remove temp dirs by @dpaiton in #903
- update to current hyperdrive abi by @dpaiton in #867
- Fixing race condition for analysis by @slundqui in #906
- extract functional code from fixture by @wakamex in #879
- replace elfpy market with ethpy HyperdriveInterface by @dpaiton in #909
- Removing develop mode from example bots scripts by @slundqui in #922
- Host parameter in example scripts by @slundqui in #908
- Arbitrage policy by @slundqui in #925
- Fixing typo in random bots policy by @slundqui in #926
- add a spot price and fixed rate HyperdriveInterface api test by @dpaiton in #928
- wrap json in StringIO so pandas doesn't complain by @wakamex in #930
- Anaylsis batch hotfix by @slundqui in #931
- Arb bot hotfix by @slundqui in #932
- api hotfix for updating cache by @dpaiton in #934
- Adding in which policy the agent is running when logging trades by @slundqui in #935
- Crash reporting, detailed logging of agent0 trades, and async trades from single agent by @slundqui in #937
- Update to support Hyperdrive 0.0.14 by @dpaiton in #936
- Fixing spot price calculation based on hyperdrive 0.14 by @slundqui in #941
- bump project version; prune authors by @dpaiton in #863
Full Changelog: v0.5.0...v0.6.0
Improved interface for agent0 and chainsync
What's Changed
- Refactors to chainsync and agent0 to make them easier to use
- New support for creating a development chain using a test fixture to support on-chain testing in CI
- New system-wide tests that verify interfacing across multiple libraries
PRs
- Adding logic for calculating trade leaderboard by @slundqui in #804
- Test cleanup by @slundqui in #805
- fix: log wallet address as string by @wakamex in #806
- Removing rate limit check and going back to using default github token by @slundqui in #808
- Chainsync cleanup by @slundqui in #807
- Removing parent directory relative imports by @slundqui in #810
- Abstracting out chain to data pipeline functions by @slundqui in #813
- Removing agent0 dependency from ethpy by @slundqui in #814
- Initial system test by @slundqui in #815
- Data updates by @slundqui in #818
- Agent0 and config refactor by @slundqui in #825
- hotfix for circular imports in agent0 lib and tons of renaming by @dpaiton in #834
- System tests by @slundqui in #837
- Dashboard hotfix by @slundqui in #839
- bump project version by @dpaiton in #838
Full Changelog: v0.4.1...v0.5.0
v0.4.1
What's Changed
- Bots can be executed more easily with a
--develop
flag - Individual subpackages in the monorepo can now be installed
- Various patches and bugfixes for infra to support the latest elf-simulations
PRs
- Bug fix for ind rank updates by @slundqui in #792
- Adds developer mode to easily fund bots by @dpaiton in #795
- Updating installation to allow for installing individual subpackages by @slundqui in #796
- Bugfix with web3 by @slundqui in #797
- Changes for infra by @slundqui in #798
- increments version to 0.4.1 by @dpaiton in #799
Full Changelog: v0.4.0...v0.4.1