Pods Options
app.pods.financeGithubBlogDiscord
  • Getting Started
  • Understand Options
    • What are options?
    • How do options work?
    • Pricing Options
  • The Protocol
    • Overview
    • Safety Measures
    • Ecosystem Participants
    • Use Cases
  • Options
    • Overview
    • Options Instrument
      • Variables
      • Functions
        • Mint
        • Unmint
        • Withdraw
        • Exercise
    • Smart Contracts
      • OptionFactory
      • PodPut
      • WPodPut
      • PodCall
      • WPodCall
    • Applied Use Cases
    • Understanding Returns
  • Options AMM
    • Overview
    • Options AMM
      • Variables
      • Components
      • Functions
        • Add Liquidity
        • Re-add Liquidity
        • Trade
        • Remove Liquidity
      • Pricing
      • Find The Next IV
      • Fees
      • Scenarios
        • LP Simulations
    • Smart Contracts
      • OptionAMMPool
      • OptionAMMFactory
      • OptionPoolRegistry
    • Applied Math
  • Developers
    • System Overview
    • Deployed Contracts
    • Dev Environment
  • Interfacing with Pods
    • Brand Assets
  • Code Integration Guides
    • Integrating with Pods (video)
    • How To Create Your Own Option
    • How To Create Your Own Pool
    • How To Trade (Buy/Sell)
    • How To Exercise
    • How To Remove Liquidity
  • User Guides
    • Videos
  • Security
    • Audits
  • APPENDIX
    • FAQ
    • Glossary of Terms
  • Additional Resources
  • app.pods.finance
  • Github
  • Blog
  • Discord
  • Twitter
  • Pods v0 Docs
Powered by GitBook
On this page
  • Financial Instrument
  • Characteristics
  • Option Type
  • Exercise type
  • Settlement type
  • Options Series
  • Parameters
  • Functions
  • More Details
  • Options to underlying asset parity
  • Collateralization
  • Interest bearing tokens support
  • Options Pricing
  • Exercise Window

Was this helpful?

  1. Options

Overview

See below how options contracts rules are expressed into ERC20 tokens.

PreviousUse CasesNextOptions Instrument

Last updated 3 years ago

Was this helpful?

Financial Instrument

Options, like any other derivative, have specific .

PodOption is our primitive. They can be either PodPuts or PodCalls.

It describes how one can issue, hold and transfer a fungible ERC20 option token for each series.

Find below the general user flow for both calls and puts.

Characteristics

Option Type

Our protocol supports both puts and calls. Their implementation shares the same logic and structure. The differences from one another will be highlighted in the following sections.

Exercise type

The exercise type describes at what moment the buyer can exercise an option contract. Our protocol implemented European and American* options. On European options, the buyer can only exercise its right during the expiration window. In American, the buyer can exercise anytime before the end of expiration.

Settlement type

This characteristic describes how an option will be settled after the buyer exercised it.

PodOptions are physically settled.

That means that if a user wishes to exercise its option, he has to:

  • In the case of put options, send both options tokens and underlying assets to unlock and receive the collateral. The amounts should be proportional to the parity of 1:1 underlying asset and option tokens. If they want to exercise 1 option, they should send 1 unit of underlying asset + 1 unit of option and receive the collateral (in this case is strike price) like the formula below.

  • For example, consider a buyer of a put option on ETH, strike price 400 DAI. The buyer has to send the option tokens and the underlying asset and withdraw the strike asset to exercise the option.

  • In the case of call options, send both options tokens and strike assets to unlock and receive the collateral. The amounts should be proportional to the parity described above - if they want to exercise 1 unit of option, they should send strike price to receive 1 unit of the underlying asset. See formula below. The StrikePrice is denominated in StrikeAsset.

    Example: 1 ETH:DAI Token +400 DAI=1 ETH

  • For example, consider a buyer of a call option on ETH, strike price 400 DAI. The buyer has to send the options tokens and the strike price to the contract and withdraw the underlying asset to exercise the option.

Options Series

A series is the combination of parameters such as expiry date, the underlying asset, strike price, and strike asset. For instance:

put ETH:USDC strike price 300 USDC expiry date December 30th

is a different series than

put ETH:USDC strike price 300 USDC expiry date December 31st

Parameters

  • name

  • symbol

  • type

  • underlying asset

  • strike asset

  • strike price

  • expiration

  • window size

Functions

  • mint

  • unmint

  • exercise

  • withdraw

More Details

Options to underlying asset parity

Options are minted with a 1:1 ratio with the underlying asset amount.

  • To the buyer, a PodPut represents the right to sell 1 underlying asset.

  • To the buyer, PodCall represents the right to buy 1 underlying asset.

Collateralization

PodOptions are 100% collateralized. In the case of put options, the collateral is in strike asset, and, in the case of call options, the collateral is in the underlying asset.

Interest bearing tokens support

Allowing interest-bearing tokens to be used as collateral can increase user's capital efficiency. By locking aTokens as collateral, the option seller will be eligible to aTokens yield during the option's life. That is true even if the option expires in-the-money.

For instance, if a user sold 1 unit of a put option ETH:aUSDC strike price 300a USDC. It locked 300 aUSDC as collateral. By expiration, the 300 aUSDC as collateral. By expiration, the 300 aUSDC will have generated interest. Imagine it yielded 5 aUSDC. If the buyer exercises the option, the seller will receive 1 unit of ETH + 5 aUSDC, and the buyer will receive 300 aUSDC.

Our PodPut and PodCall implementation supports interest-bearing tokens (or any tokens) that increase the user balanceOf() in time.

That is possible due to our architecture, which stores shares based on the user's locked collateral to mint options.

Options Pricing

Exercise Window

The exercise window opens 24 hours before the expiration date. During this phase, trading in the AMM stops, and users can only exercise their options or remove liquidity from the AMM.

*Although the code is ready to receive either American or European options, it is not recommended to implement American options using the current pricing model applied on the Options AMM. Find more about this in the section.

The StrikePrice is denominated in StrikeAsset. 1OptionToken+1UnderlyingAsset=StrikePrice1OptionToken+1UnderlyingAsset=StrikePrice1OptionToken+1UnderlyingAsset=StrikePrice Example: 1 ETH:aDAI PodPut +1 ETH=400 DAI

1Option+StrikePrice=1UnderlyingAsset1Option + StrikePrice = 1Underlying Asset1Option+StrikePrice=1UnderlyingAsset

To deploy a new option, one needs to describe the following parameters in the :

After creating a new option (either being a Put or a Call), there are one can take using the basic contract structure:

Pricing is a function of the

Pricing
factory contract
four main actions
AMM component.
contract rules
Call Option User flow
Put Option User flow