PsyOptions is a vanilla options protocol built on the Solana blockchain. The principles that have guided the architecture and development of the core protocol are flexibility and composability. It is completely trustless. The core protocol makes no assumptions on how the options should be traded or priced. Options are represented as SPL Tokens, which means they can be traded on any DEX that supports SPL Tokens.
V1 will support 100% collateralized, asset settled, covered calls and secured puts.
To buy or sell an option, select
Markets in the navbar. You may adjust the expiration date and the underlying asset.
The team recommends using the May 28, 2021 BTC/USDC option markets.
After selecting the parameters, the page will populate with data from Serum if there is an orderbook for the indivual market. Note that each row represents a different option market and thus a different Serum market.
Buying an option (call/put) requires no collateral. It is simply a transaction on Serum's orderbook to purchase an option from the open market.
Selling an option is a bit more complex as an option may need to be minted. If the connected wallet does not have enough options to sell, then options will be written prior to selling.
When options are written, the wallet will have it's underlying asset deducted as it's sent
to the program to mint the options. The amount deducted is the contract
size, which may differ based
on the selected parameters.
Both market and limit orders are supported.
Click on the "Open Positions" option at the top left bar to view all current positions in the options market.
If the option has not expired, clicking the
Exercise button will prompt a transaction to exercise the option.
The owning wallet must have enough of the quote asset (
contract size * strike price) to successfully exercise.
To create fungible option SPL Tokens for trading in the options markets, one will have to initializing a market by supplying the following values:
- Underlying asset
- Quote asset
- Contract size
- Strike price
- Click on Initialize
- Select the following parameters: Expiration Date (as per expiration of option), Underlying Asset (to be traded in the option), Quote Asset (to be supplied in the trade), Contract Size (size of option), Base Price (strike price of option)
- Select "Multi Strikes" if you wish to list multiple contracts at designated strike price intervals
- Click "Initialize Market"