LockedInUse

Collateralize underlying tokens and paired currency during a deal.

After a user or wallet deposits tokens into our protocol, the tokens are now ready for use in writing or buying OTC deals.

Our protocol is designed for OTC marketplaces and acts as the custodian or escrow when parties engage in a deal.

The following actions require that collateral be locked by the protocol as the custodian during a deal.

  • writing a hedge

  • buying a hedge

  • issuing a loan

  • taking a loan

Tokens are held as collateral for the above actions. This is done by incrementing the userBalanceMap[msg.sender].lockedinuse storage for the msg.sender whilst performing these actions.

Note, the getWithdrawableBalance function mentioned in ERC20 withdrawals below, enforces the collateral or token locking mechanism by deducting lockedinuse balance whilst determining the withdrawable balance for a user / msg.sender.

ERC20 Deposit/Withdraw

Implications:

  • tokens as held as collateral until the hedge deal is settled.

  • tokens cannot be withdrawn or assigned for any other deal

Settlement Usage

For each party, token balances in userBalanceMap[msg.sender].lockedinuse are used as payoff collateral. Deducting payoff equivalent in underlying assets or paired currency, then crediting to the due party's userBalanceMap[msg.sender].deposited balance.

lockedinuse Restoration

During the settlement process, the settlement function first calculates the payoff required and then debits it from the userBalanceMap[msg.sender].lockedinuse of the losing party and then credits it to the userBalanceMap[msg.sender].deposited balance of winning party in the deal.

Last updated