Volt #03 & #04

Rebalancing Process

Volt 3 & 4 follow the below process:
  1. 1.
    Accept user deposits/withdrawals of one denomination (i.e SPL token). See User Facing Instructions. Record pending deposits/withdrawals on Round PDA account. for the current epoch.
  2. 2.
    Wait until a rebalancing is required (leverage is far away from target or many deposits/withdrawals. typically once per week).
  3. 3.
  4. 4.
    Take performance fees generated during the epoch (TakePerformanceFees).
  5. 5.
    Choose a Supported Protocol, deposit new user assets in the volt's margin account for that protocol (SetupRebalance).
  6. 6.
    If will require trading of spot Serum markets, creates an OpenOrders account for the appropriate markets (InitSpotOpenOrders).
  7. 7.
    Enters the target position using target leverage ratio on the target perpetuals market on the target perpetuals exchange. Could be over thousands of order or in a single block order, depending on volt capacity and market conditions. (Rebalance Order Book or Setup Rebalance Off-book or Rebalance Off-book).
  8. 8.
    Hedges the target postion with either a different perpetual or a spot market + borrow/lend (Rebalance Order Book or Rebalance Spot).
  9. 9.
    Processes pending deposits/withdrawals. (EndRound).
  10. 10.
    Takes withdrawal fees (TakePendingWithdrawalFees).
  11. 11.
    Starts new epoch and repeats from step 1! (StartRound).
  12. 12.
Note: StartRound and EndRound have different implementations than Volt 1 & 2 despite serving a very similar purpose.

Supported Protocols

Mango Markets
Cross-margined perpetuals and spot exchange. Provides liquidity on the most popular assets in SOL ecosystem (e.g SOL, BTC, SRM)


Cross-margined exotic derivatives and perpetuals exchange. Forked from Mango Markets. Currently traded assets include a BTC^2 power perpetual. Provides support for off-book orders, easing execution and averting adverse selection for volt users.