- Run predictoor bot - make predictions, make $
- Run trader bot - consume predictions, trade, make $
(If you're a predictoor or trader, you can safely ignore the rest of this README.)
A "ppss" yaml file, like ppss.yaml, holds parameters for all bots and simulation flows.
- We follow the idiom "pp" = problem setup (what to solve), "ss" = solution strategy (how to solve).
PRIVATE_KEYis an exception; it's set as an envvar.
When you run a bot from the CLI, you specify your PPSS YAML file.
pdr has basic stdout logging, but supports customisations.
To customise logging, copy and edit the existing logging.yaml:
cp logging.yaml my_logging.yaml(First, install pdr-backend first.)
To see CLI options, in console:
pdrThis will output something like:
Usage: pdr sim|predictoor|trader|..
Main tools:
pdr sim YAML_FILE
pdr predictoor YAML_FILE NETWORK
pdr trader APPROACH YAML_FILE NETWORK
...
- Get tokens: testnet faucet, mainnet ROSE & OCEAN
- Claim payout for predictoor bot
- Predictoor subgraph. Subgraph filters
- Run barge locally
- Backend-dev - for
pdr-backenditself - Run dfbuyer bot - runs Predictoor DF rewards
- Run publisher - publish new feeds
- Run trueval - run trueval bot
- Run lake - run data lake
This repo implements all bots in Predictoor ecosystem. Here are each of the sub-directories in the repo.
Main bots & user tools:
predictoor- submit individual predictionstrader- buy aggregated predictions, then tradesim- experiments / simulation flowpayout- OCEAN & ROSE payout
OPF-run bots & higher-level tools:
trueval- report true values to contractdfbuyer- buy feeds on behalf of Predictoor DFpublisher- publish pdr data feedsdeployer- deployer tool
Mid-level building blocks:
cli- implementation of CLIppss- implements settings
Data-level building blocks:
ohlcv- financial data pipelineaimodel- AI/ML modeling enginelake- data lake and analytics toolssubgraph- blockchain queries, complements lakeaccuracy- to report % correct in webapppred_submitter- for predictoor bots to submit >>1 predictions in 1 tx
Lower-level utilities:
contract- classes to wrap blockchain contracts; some simple data structuresutil- function-based tools