Options delta neutrality as a crypto native uncorrelated asset class and the best option trading experience
To get a local copy up and running follow these simple steps.
At Rysk, we use Yarn for package management with Yarn workspaces. To get started with Yarn if you haven't installed it yet, you can run:
npm install --global yarn
We use jq for formatting JSON files from the command line. To install it, you might have to run:
For linux:
$ sudo apt-get install jq
For macOS:
$ brew install jq
-
Clone the repo
git clone
-
Install packages
yarn
-
Add environment variables
You will need to create free API keys for Alchemy and Infura. You can then:
- Create
/packages/contracts/.env
- Add
ALCHEMY=<your-alchemy-key>
- Create
/packages/front-end/.env
- Add
REACT_APP_INFURA_KEY=<your-infura-key>
- Create
-
Compile contracts
yarn workspace contracts compile
-
Deploy contracts and update ABIs + address
yarn workspace contracts deploy:localhost
-
Start the front end
yarn workspace front-end start
It will become accessible on http://localhost:3000
Complete steps 1 to 3 from the installation section and then:
-
Compile all files
yarn workspace contracts compile
-
Run all tests
yarn workspace contracts test
To run a specific test suite, e.g.
LiquidityPool.ts
yarn workspace contracts test test/LiquidityPool.ts
Run test coverage
yarn workspace contracts test-coverage
Run foundry fuzzing
- Follow instructions on template
- In the pipenv environment run forge test --ffi --vvv
contracts
├── hedging
│ ├── GMXHedgingReactor.sol
│ ├── PerpHedgingReactor.sol
│ └── UniswapV3HedgingReactor.sol
├── interfaces
│ ├── AddressBookInterface.sol
│ ├── IAuthority.sol
│ ├── AggregatorV3Interface.sol
│ ├── GammaInterface.sol
│ ├── IERC20.sol
│ ├── IOptionRegistry.sol
│ ├── ILiquidityPool.sol
│ ├── IHedgingReactor.sol
│ ├── IMarginCalculator.sol
│ └── IOracle.sol
├── libraries
│ ├── BlackScholes.sol
│ ├── CustomErrors.sol
│ ├── NormalDist.sol
│ ├── OptionsCompute.sol
│ ├── OpynInteractions.sol
│ ├── AccessControl.sol
│ ├── RyskActions.sol
│ ├── CombinedActions.sol
│ ├── EnumerableSet.sol
│ ├── SABR.sol
│ ├── SafeTransferLib.sol
│ └── Types.sol
├── tokens
│ └── ERC20.sol
├── Accounting.sol
├── AlphaOptionHandler.sol
├── Authority.sol
├── BeyondPricer.sol
├── LiquidityPool.sol
├── OptionRegistry.sol
├── OptionExchange.sol
├── OptionCatalogue.sol
├── Protocol.sol
├── PortfolioValuesFeed.sol
├── VolatilityFeed.sol
└── PriceFeed.sol