We propose to open HRMP communication between Equilibrium and Acala.
We propose to open a bi-directional channel between Equlibrium and Acala. This will allow the following:
- Supply ACA as collateral and borrow assets such as WBTC, WETH, BNB, USDT, USDC, DAI, DOT against it with collateralization requirements as low as 120%
- Supply ACA as insurance / lending liquidity, contribute to the system solvency, earn interest payable by borrowers, absorb liquidated liquidity and earn 5% rewards (penalty) on liquidated amounts.
- Add ACA to Market Maker pools, achieve 200K USD target both in ACA and EQD (you can mint EQD agains ACA) and we will launch a new trading pair ACA / EQD on Equilibrium DEX!
There is no on-chain proposal yet; #TBD.
The procedure for opening the channels is as follows:
- Acala propose to request to open Acala to Equilibrium HRMP channel;
- Wait until proposal on step 1 get approved & enacted;
- Equilibrium propose to accept the request and request to open Equilibrium to Acala HRMP channel(Batch call);
- Wait until proposal on step 3 get approved & enacted;
- Acala propose to accept Equilibrium to Acala HRMP channel;
- Wait until proposals on step 5 are approved & enacted;
- Wait for another session on Polkadot for the change to be effective;
- Equilibrium proposes to register Acala’s assets (ACA, aUSD, LDOT) via [Equilibrium Governance];
- Acala proposes to register Equilibrium’s assets (EQ, EQD) via [Acala Governance];
- Wait until both proposals on step 9 & 10 are approved & enacted;
- XCM based crosschain transfer will be possible at this stage.
The extrinsics that need to be sent with xcm messages to they can be executed on the relay chain, are:
- For step 1:
hrmp.hrmpInitOpenChannel(recipient: 2000, proposedMaxCapacity: 1000, proposedMaxMessageSize: 102400), which hex-encoded is
- For step 3:
The first call is
hrmp.hrmpAcceptOpenChannel(sender: 2011), second call is
hrmp.hrmpInitOpenChannel(recipient: 2011, proposedMaxCapacity: 1000, proposedMaxMessageSize: 102400), so the final batch call hex-encoded is
- For step 5:
hrmp.hrmpAcceptOpenChannel(sender: 2000), which hex-encoded is
proposedMaxMessageSize are set to the values of Polkadot’s
configuration.activeConfig.hrmpChannelMaxMessageSize values, respectively.
These extrinsics need to be called with the parachain’s sovereign account as origin. To achieve this, on the Equilibrium side we will use
polkadotXcm pallet to send xcm message to the relaychain, by executing the following extrinsic from the parachain. Acala should make an open request call and an accept request call with its
As a prerequisite, the parachain’s sovereign account must contain at least 10 DOT to be locked as collateral (5 for each channel direction), plus some DOT to pay for xcm execution fees.