VNP-005 Change parameter market.liquidityProvision.minLpStakeQuantumMultiple

Change parameter market.liquidityProvision.minLpStakeQuantumMultiple

Summary:
market.liquidityProvision.minLpStakeQuantumMultiple
from 5000 to 500

Rationale

The parameter market.liquidityProvision.minLpStakeQuantumMultiple governs what is the minimum LP bond. It is currently set to 5000 which on USDT markets translates to 5000 USDT as the USDT quantum is 1.

The purpose of a minimum LP bond is to avoid a situation where too many tiny LPs submit liquidity provision orders as currently Vega core may struggle if there are too many LPs on too many markets, due to the special pegged liquidity provision order.

When validators deployed alpha mainnet this was set to the conservative value of 5000 as there was no good way to model the expected use and performance of alpha mainnet.

The vega team has since been monitoring the performance of alpha mainnet and the usage patterns and we’ve done some additional benchmarking.

For example the case of 5 markets, with each LP using 5 pegs for buys and 5 for sells and with 100 incoming orders per second we see the following load on the recommended hardware, where on x-axis we have the total number of LPs:

As above but 1 market, 1 buy / 1 sell peg in the LP order and with 100 incoming orders per second:

As we can see, under these patterns core can handle many more LP parties than we have currently. Of course, we cannot predict how much the decrease of market.liquidityProvision.minLpStakeQuantumMultiple will increase the number of LP users but we believe that given the need to run active market making strategy means this increase will still be modest i.e. we won’t go past the numbers we benchmarked for.

For this reason the vega team recommends setting market.liquidityProvision.minLpStakeQuantumMultiple to 500.

Full Proposal JSON:

{
  "proposalSubmission":{
    "rationale":{
      "title":"Proposal market.liquidityProvision.minLpStakeQuantumMultiple",
      "description":"Change market.liquidityProvision.minLpStakeQuantumMultiple to 500 from previous value of 5000 to allow LPs with less capital to participate in markets."
    },
    "terms":{
      "updateNetworkParameter":{
        "changes":{
          "key":"market.liquidityProvision.minLpStakeQuantumMultiple","value":"500"
          }
        },
        "closingTimestamp": 1691406000,
        "enactmentTimestamp": 1691406000
      }
    }
  }

The closing and enactment are suggested as Mon Aug 07 2023 11:00:00 GMT+0000 but this can be re-visited depending on how the discussion evolves here.

2 Likes