Epoch Mechanics

As discussed in the epoch timeline section, the epoch is a series of operations which occur on a 7-day schedule. These operations are handled by an authorized keeper account, and enable actions such as purchasing options, withdrawals, fee collection, etc. The epoch can be broken down into three operations, auction initialization, epoch initialization, auction processing.

Auction Initialization

On Thursday at approximately 8am UTC the keeper calls initializeAuction:
  1. 1.
    the option expiry timestamp, long and short token ids, and strike price are set, strike price is calculated using the delta strike formula​
  2. 2.
    the auction start and end times are set
  3. 3.
    Vault calls initialize on Auction

Epoch Initialization

On Friday at approximately 8am UTC the keeper calls initializeEpoch. It is assumed if the vault previously underwrote an option, it will already have been expired and processed prior:
  1. 1.
    if the epoch id is greater than 0, Vault will remove reserved liquidity from the Premia pool
  2. 2.
    if the epoch id is greater than 0 and Vault earns a positive net income a performance fee is calculated and transferred to the fee recipient account.
  3. 3.
    Vault calls processDeposits on Queue, transferring all of the collateral held in Queue to Vault. In exchange for the deposited collateral, Vault will mint and transfer vault shares to Queue.
  4. 4.
    the option max/min prices are calculated and set for the next auction
  5. 5.
    the epoch id is incremented
Once the epoch is initialization process completes there will be an 8 hour gap before the auction begins.

Auction Processing

On Friday at approximately 4:30pm UTC or when the auction has been finialized the keeper will call processAuction:
  1. 1.
    Vault stores the total assets held in Vault, this value represents the amount of assets held before premiums are sent to Vault.
  2. 2.
    if the auction has not been finalized, Vault finializes it
  3. 3.
    Auction transfers the premiums earned during the auction to Vault
  4. 4.
    Vault underwrites the options sold during the auction via Premia's option pool, the long token is sent to Auction and the short tokens is sent to Vault
  5. 5.
    Vault sets the divestment timestamp to prevent the collateral from entering the "free liquidity queue" upon exercise or expiration
  6. 6.
    Vault processes the auction, after 24 hours the option buyers may withdraw their long tokens from Auction
  7. 7.
    Vault removes the withdrawal lock, users may withdraw or redeem from Vault