Created at 12pm, Feb 29
ilkeCrypto
0
The Morpho Protocol Whitepaper
wXo1yVM_18aAJ0tDuJEOYhK-V2MFAFMXsz87Z4hSgRA
File Type
PDF
Entry Count
49
Embed. Model
jina_embeddings_v2_base_en
Index Type
hnsw

Morpho enhances current DeFi liquidity protocols. The aim is to offer a suite of products to make supplying and borrowing operations in DeFi more efficient and seamless. The first building block proposed is a novel, Pareto-improving, interest rate mechanism built on top of existing protocols. The Morpho Protocol allows for better rates on both sides of the market whilst preserving the same liquidity and liquidation guarantees for everyone.Paul Frambot, Mathis Gontier Delaunay, Vincent Danos, Adrien Husson, Katia Babbar

The inP 2P case was inspired by cTokens mechanisms from current liquidity protocols. Morpho introduces a unit called p2pIndex, whose underlying value grows over time, and which will be used to describe the on Morpho debt (both for suppliers and borrowers). Its value is linked to the unit of the token by the variable p2pIndex according to the following formula : valueInU nderlying = valueInP 2P U nit p2pIndex The variable p2pIndex is updated according to the mid-rate yield per block via an internal function, which is called each time a user calls a function that needs to do the conversion to this unit. Note that the complexity is constant. 10 Example 2.3 Assume 1 ETH = 200 cETH. Alice comes first and supplies 1 ETH to Morpho, her supply balance becomes: (cid:26) onP ool : 200 cET H inP 2P : 0 p2pET H Now Bob borrows 1 ETH. Assume that, at this moment, 1 ETH = 100 p2pETH. Alices supply balance becomes: (cid:26) onP ool : 0 cET H
id: ed7fc84e345a34926afc6a5c15e844fc - page: 10
A year later, if the mid-rate remains 1.4%, the price of p2pETH should be approximately 1 ETH = 98.6 p2pETH. Note that in current PLFs there is a great imbalance between the volume of loanable funds compared to the volume of demand. This is done on purpose as liquidity pools need more suppliers than borrowers to work. This is not the case with Morpho which could have much more borrowers than suppliers and still be fully liquid and working. Moreover, in Morpho, this imbalance is not necessarily in favor of suppliers since rates are very different.
id: 79c2f27ce9d8b071e07c61d5373dffbf - page: 11
Indeed, the imbalance is highly dependent on market conditions and thus on the P2P APY itself. One may remark that the P2P APY positioned in the middle in the examples is an arbitrary choice and should be flexible to reflect supply and demand eg. taking a rate closer to the supply APY of the PLF instead of the actual middle to attract more borrowers. Without having to build a complete competitive interest rates market, as in 4., some flexibility can be easily introduced to the P2P APY by updating it according to market conditions.
id: 871d6b46007a4667159803793f8b021d - page: 11
2.4 The matching engine P2P positions on Morpho benefit from a 100% utilization rate, which means that, in terms of volume, there is as much supply as borrow demand. This is a key difference from other pool-based PLF where there is a lot more loanable liquidity than borrow demand, inducing low utilization rates of their pool and thus creating the APY spread. Most of the time, there will be an imbalance between supply and demand in Morpho. For example, one can expect n units of suppliers trying to match k units of borrowers with n > k (or vice-versa). The protocol needs to select k happy suppliers to enjoy the P2P APY and the n k others will be put on the PLF. The module in the code responsible for choosing and matching the k users will be referred to as the matching engine.
id: c614fee4114e69f44ab6c0a22fbd3adc - page: 11
How to Retrieve?
# Search

curl -X POST "https://search.dria.co/hnsw/search" \
-H "x-api-key: <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{"rerank": true, "top_n": 10, "contract_id": "wXo1yVM_18aAJ0tDuJEOYhK-V2MFAFMXsz87Z4hSgRA", "query": "What is alexanDRIA library?"}'
        
# Query

curl -X POST "https://search.dria.co/hnsw/query" \
-H "x-api-key: <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{"vector": [0.123, 0.5236], "top_n": 10, "contract_id": "wXo1yVM_18aAJ0tDuJEOYhK-V2MFAFMXsz87Z4hSgRA", "level": 2}'