Milestones
List view
this milestone is getting the feature to "maintenance mode"; i.e. we will continue to iterate and receive feedback from users after this is accomplished, but completing this milestone marks the end of the active development phase. - [x] write out plan for what is exposed to the user & workflows - [x] revisit time & checkpoints - [x] add checkpointing & ensure that checkpointing happens during advance time - [x] add ability to adjust block mining timeframe - [x] load & save state from anvil - [ ] demo interactive workflow to a16z & ethereal
Due by December 15, 2023•4/4 issues closedHigh-level critical tasks remaining: - [x] get variable rate from hyperdrive - [x] update docs - [x] lp+arb trading bot example - [x] verify logging to file works
Due by October 17, 2023•25/25 issues closedThere are important ethical considerations that motivate reproducible training of AI algorithms that I will not detail here. Practically, it is valuable to be able to reproduce trading sequences for: - debugging: we want to be able to enter a pool state just before a bad trade and investigate - experimentation: we want to run sweeps of experiments where one variable is changed and the others are held constant - safeguarding successful training runs: we want to be able to save the agent & chain state for our best working example - demos: we want to be able to boot into states or compare outputs for known operations in demos The complexity of our application likely requires a custom solution that has yet to be designed. Our current plan is to get the individual components running before worrying about how to wrap them in a reproducible pipeline.
Due by November 3, 2023•4/4 issues closedWe'd like the remaining elfpy dependencies to be severed from the rest of the elf-simulations codebase. After this point we can do a feature audit to ensure that all elfpy capabilities that we wish to persist are replicated in another library. Finally, we will delete elfpy from the repo. - [x] agents & policies - [x] simulators & config - [x] wallet & position types - [x] market & market state - [x] utils (e.g. frozen class) - [ ] logging - [ ] Trade & MarketType
Due by November 30, 2023•4/4 issues closedPypechain is a library for generating typed Python objects from smart contract ABI files. For the MVP we would like to be able to: - [x] generate python objects for events and struct outputs - [x] replace hyperdrive contracts in ethpy/hyperdrive with the pypechain objects - [x] create a hyperdrive "market" in agent0 that holds as member variables pypechain representations for `poolInfo` and `poolConfig` Remaining are moved to the pypechain milestone https://github.com/delvtech/pypechain/milestone/1
Due by November 22, 2023•9/9 issues closedWe want to make it easy to spin up bots for executing specific tests against hyperdrive. "Fuzz" testing a range of inputs and trade types is one example of this. Another more specific example is outlined in this issue: https://github.com/delvtech/hyperdrive/issues/375 The idea is to quickly & easily write an endpoint script (e.g. a notebook) that executes a series of deterministic trades and plots results so that one can better understand Hyperdrive behavior. This is unique from a "CI test", and is more of an investigation that would result in an internal infodoc.
Due by January 12, 2024•8/8 issues closedWe want to clean up the bots pipeline for our next presentation to the Numbers group
Due by September 20, 2023•9/9 issues closedTop level goals: --------------- * Continue to stress test hyperdrive to make sure it's safe * Familiarize interested parties (e.g. numbers group) with hyperdrive * Test in a more production-like setting (on a testnet) Bot team goals: --------------- * Keep the market rational/stable (also good for advertising that shit works) * expand potential users, lower lift to spin up & deploy bots Objectives ---------------- * Test that arb bots keep market rational * Demonstrate ability to deploy arb bots on testnet * spec out user stories, ask people if this fits for them
Due by August 1, 2023•20/20 issues closed***pvp trading competition*** -- one devnet node & tons of users submitting bots Top-level goal is to have something that facilitates sim-team & python-proficient contract team members launching bots Competition goals: ------------------ * high-volume tests -- making sure the system doesn't crash * bug finding & reporting * get feedback on user experience of deploying bots * Identify reporting/measurement needs Achieving the goals: -------------------- * spin up high volume of bots * spin up & down without crashing chain * Retro with primary bot users * measurements -- trade activity, agent performance * Create usable crash reports * Make PNL plot filterable by bot
Due by July 15, 2023•49/49 issues closed"smart bots" are a more-informed expert system: - read in market state, determine trades using own PNL - create "watcher" service that observes & plots on bot behavior - pull data from contract events via data-team provided API and deliver in a python-friendly format
No due dateGet the elfpy repo to a stable and "feature-complete" V0 that we can ship on pip so that it is more accessible. This would mark the point when we are ready to start pushing for outside contributors.
Due by July 30, 2023•161/161 issues closedWe need to plot PnL for Spark, assuming an agent has open borrows & leveraged them with Hyperdrive shorts.
Due by August 31, 2023•10/10 issues closedThe hyperdrive simulation in Elfpy should mirror exactly the operations performed in the Hyperdrive solidity contracts.
Due by June 30, 2023•61/61 issues closedWe should have an infra pipeline that spins up a container (probably using Docker), and executes a job which runs bots on a Hyperdrive testnet instance. An end-user needs to be able to customize the bot behavior as well as direct the bots to run on different nets (e.g. a local chain simulation via foundry-anvil, goerli test-net, or a Delv hosted test-net). The deliverable for this project is a set of plots showing market behavior (reserve levels, OHLC, PnL). This is an MVP milestone, so demonstrating the pipeline & basic plots is fine.
Due by June 2, 2023•36/36 issues closed