• Initialize
    • Creates an entropy volt that trades a perpetual and spot position on a cross-margined order book or VAMM exchange.
    • Accepts parameters specifying the perpetuals exchange program to use:
      • primary perpetuals market to trade
      • hedging perpetual market
      • should hedge with spot?
      • hedging spot market
      • target leverage
      • target hedge ratio.
  • Set Strategy Params
    • Changes the guiding parameters for volt's strategy, initially specified in Initialize.
  • Start Round
    • Begins the new epoch, resetting the FSM and initializing epoch-specific accounts.
  • Take Performance Fees
    • Sends (performance fee fee) * (volt profit) tokens to the DAO fee account.
  • Setup Rebalance
    • Moves new deposits into the volt's margin account for the perpetuals exchange, and saves helpful metadata on an epoch-specific information account.
  • Rebalance Order book
    • Used on order book exchanges. It places a limit order such as to enter the target position (target leverage * total margin). After the target position is complete, this instruction will hedge it with the hedging perpetual market if specified in Initialize.
  • Rebalance Spot
    • Hedges the target position using spot assets and the exchange's native borrow/lend platform (to lever long via borrowing USDC if necessary, or short an asset via borrowing + selling).
  • Init Spot Open Orders
    • Initializes a Serum OpenOrders account in a volt-derived PDA. This is quite useful as many spot exchanges are built on top of Serum.
  • Setup Rebalance Off-book or Rebalance Off-book
    • Same goal as Rebalance Order book, but achieve it via exchanging margin off-book. This reduces the volt's exposure to adverse selection.
  • Reset Rebalancing
    • Allows the volt to repeat the rebalancing process if necessary.
  • End Round
    • Ends the current epoch. Normally, this instruction will fail unless the rebalancing process has completed according to what the program code specifies. However, the administrator has the option to skip these checks in unexpected scenarios.
Copy link