🚦Signal-Driven LP

Deposit for LP

First, we'll deposit the testnet USDC for staking on BBOX. Once the USDC is sent to the registered wallet, you need to deposit to trade or stake on BBOX. Head to "Manage Balances", you can also get there by clicking the "deposit to start trading" bar in the middle.

Enter your desired deposit amount and confirm the transaction. In this case, we deposited 500 USDC for staking.

Add Dynamic Liquidity to ETH/USDC Pool

Once successfully deposited, you can add liquidity to the ETH-USDC pool.

Select "Dynamic" for the Singal-Driven LP.

Setting Up Parameters for Dynamic Liquidities

Select Market

To set up a Dynamic liquidity position, you first need to select a market. Currently, we only provide an ETH-USDC pool for testing purposes.

Liquidity Width

Once the market is selected, you need to decide on the liquidity width. The private test version offers two determined ranges: narrow and wide. A narrow range means your liquidity is more concentrated, and vice versa.

  • Narrow: ±5%\pm5\% of the price determined by the signal

  • Wide:: ±10%\pm10\% of the price determined by the signal

Construct Correlated Asset Signals

After selecting markets and ranges, you need to construct correlated asset signals. Once the parameters are set, your liquidity position will adjust accordingly when the target asset price moves.

Parameter 1: Target Asset

First, you need to decide on which asset to track. For the private test version, you can track the movements of Bitcoin and Ethereum prices.

Parameter 2: Price Feeds

After determining the target asset, you can decide which price feed to use. In the private test, you can only select oracle price as the benchmark price. However, upcoming versions will provide more price feed options.

Parameter 3: Weights

Lastly, you may select a correlation weight, expressed in percentage. The correlation weight will determine how much your position will adjust based on the movement of the correlated asset signals.

In particular, we outline the underlying model as the following:

Yt=βXt+α+ϵY_{t} = \beta X_t + \alpha + \epsilon

Then define ΔYt:=Yt+1YtYt, ΔXt:=Xt+1XtXt\Delta Y_t := \frac{Y_{t+1} - Y_t}{Y_t}, \ \Delta X_t := \frac{X_{t+1}-X_t}{X_t}, we then have that ΔYt×Yt=βΔXt×Xt\Delta Y_t \times Y_t = \beta \Delta X_t \times X_t\LeftrightarrowΔXt=ΔYt×Ytβ×Xt\Delta X_t = \frac{\Delta Y_t \times Y_t}{\beta \times X_t}, where β\beta is the correlation weight, expressed in percentage.

Multiple Signal Construct

The test version also allows you to add a second signal for more complicated strategies. The setting procedure is the same as the first signal. Effectively now the math can be updated to:

Yt=i=1NβiXi,t+ϵY_t = \sum_{i=1}^{N}{\beta_i X_{i,t}} + \epsilon

Rebalancing Frequency

For testnet, the rebalancing frequency is set at 12 hours. More customized frequencies will become available in the future.

Check Liquidity Positions

After adding liquidities, you may check your positions under the staking page and select the ETH/USDC pool.

Both Static and Dynamic positions are shown on the same page.

Close a position

To remove a position, you need to click the "remove" icon at the top right of the position tap, and 100% of the liquidity amount will be removed.

Last updated