Perpetual Protocol
System Design FAQ

Why do the insurance fund and clearing house balances go up and down?

The insurance fund regularly collects trading fees paid by traders, causing the amount of funds stored to increase. The clearing house also has a pool of funds which are used in instances where it is necessary to pay funding payments or cover a loss from a bankrupt position that was not liquidated in time.
In order to ensure sufficient funds, the clearing house may occasionally withdraw funds from the insurance fund, or return funds to the insurance fund if the amount is greater than a certain threshold.

How do you make sure the Oracle is secure?

Perpetual Protocol uses ChainLink as the Oracle for the funding rate calculation. The Oracle price is not used elsewhere. This limits Perpetual Protocol's exposure to Oracle failure or manipulation.
Perpetual Protocol only uses the Oracle price at funding time (every 1 hour), and in addition, the 1-hour TWAP is used. This minimizes the usage of the Oracle and the risks of the price being manipulated.
Currently the Oracle price shown on the trading interface is updated more regularly. However, the price is only used once per hour to calculate funding payments.

Are the clearing house contract and vault the same thing?

Yes, the vault refers to funds held securely by the clearing house.

Does Perpetual Protocol have an auto-deleveraging system which is common in most centralized exchanges?

No, positions are not deleveraged in Perpetual Protocol because Virtual AMMs serve as the counter-party for all trades.

Could I use the flash loan to game the system like in the bZx attack?

No, Perpetual Protocol doesn't use any on-chain Oracle or on-chain DEX as a price engine. It's very difficult to use a flash loan to manipulate the price of underlying assets and profit from Perpetual within the same transaction.
The only time Perpetual Protocol makes use of on-chain Oracle prices is to liquidate under-collateralized assets. In this case, because Perpetual Protocol uses both the 15 min TWAP Oracle price and latest Oracle price to calculate UnrealizedPnL, it's very difficult to manipulate UnrealizedPnL within the same transaction. Please see Liquidation for more details.

Which parameters can be updated by governance voting in Perpetual Protocol?

  1. 1.
    FeeRatio ๐ŸŒ… Initial setting: 0.1%
    The transaction fee percentage. This rate is charged every transaction, and the proceeds are shared by the stakers.
  2. 2.
    MaintenanceMarginRequirement ๐ŸŒ… Initial setting: 6.25%
    Once a position's margin ratio falls below the MaintenanceMarginRequirement, liquidators can liquidate this position. Please see Liquidation for more details.
  3. 3.
    InitMarginRequirement ๐ŸŒ… Initial setting: 10% (enforced in UI only)
    The initial margin ratio required to open a new position. Please see Liquidation for more details.
  4. 4.
    LiquidationFeeRatio ๐ŸŒ… Initial setting: 1.25%
    The liquidation fee percentage. Please see Liquidation for more details.