Danogo Flexible Pool Lending
1. Introduction
Decentralized finance (DeFi) has revolutionized access to financial services, offering open, permissionless protocols for lending, borrowing, and trading. Protocols like Compound Finance on Ethereum have demonstrated the effectiveness of decentralized money markets. As the DeFi ecosystem expands to Cardano, Danogo is designed to meet the unique demands of this ecosystem while incorporating proven innovations and novel improvements.
Cardano's eUTXO model, native token support, and low transaction fees create a fertile ground for advanced financial primitives. However, the current DeFi landscape on Cardano remains underdeveloped compred to its EVM counterparts. Danogo addresses this gap by providing a robust lending infrastructure with advanced features.
2. Protocol Architecture & Implementation
Danogo mirrors the fundamental architecture of Compound Finance: users supply assets to earn interest and borrow against their supplied collateral. Below are Danogo specific adaption for eUTXO model on Cardano
2.1 Multi-Oracle Support
Danogo integrates multiple independent oracles (e.g., Liqwid, Indigo, Orcfax, and DEXes) for enhanced price reliability and manipulation resistance. The protocol aggregates these sources to derive a consensus price, mitigating the risk of relying on a single oracle.
2.2 Programmable Loans
Danogo introduces a novel concept: programmable loans. Smart contracts or other dApps can programmatically initiate, manage, or close loans via on-chain interactions. This enables advanced DeFi use cases such as flash loans, leveraged trading, or automated strategies.
2.3 Continuous Compounding
While protocols like Liqwid compound interest at discrete intervals via batching, Danogo supports continuous compounding of interest. This ensures real-time accrual of yield for suppliers and debtors, resulting in a more precise and fair financial experience.
2.4 Parallel Liquidation Threads
Market crashes often result in a backlog of liquidations, jeopardizing the solvency of the protocol. Danogo introduces parallel-threaded liquidation logic, allowing multiple liquidation processes to execute simultaneously. This preserves pool integrity and ensures rapid response to volatility.
2.5 Automatic Staking Rewards Distribution
ADA staking rewards are automatically compounded and distributed to ADA Pool immediately at the end of epoch, increasing dToken value at the same time. This feature protects the ADA pool from suppliers who withdraw before epoch end and re-supply at the beginning of the next epoch to gain double staking rewards.
2.6 Support Decentralized Governance
For borrowers using ADA as collateral, they will still receive ADA staking rewards and retain their voting rights to delegate to any dReps of your choice.
2.7 Composability
To maximize capital efficiency, Danogo enables idle funds in the lending pool to be composably supplied to other yield-generating protocols such as Liqwid. This inter-protocol integration allows Danogo to passively earn additional yield on unused liquidity without compromising core lending operations. These external supplies can be withdrawn to meet Danogo’s internal borrowing demands. In the event of liquidity shortages or dry-ups in external protocols, Danogo can eliminate new allocations to these protocols. This dynamic allocation enhances protocol sustainability while maintaining user access to funds when needed.
3. How it works
Danogo creates flexible lending pools where users can supply assets to earn interest or borrow against their collaterals. Interest rates are dynamically determined by market supply and demand that allows for real-time adjustments. With Danogo’s flexible pool model, users interact directly with the protocol rather than negotiating terms such as interest rate, maturity or collateral directly with another party.
3.1 Supplying Assets
Unlike peer-to-peer platforms that directly match lenders and borrowers, Danogo aggregates liquidity into shared pools. When users supply assets, they contribute to a fungible liquidity pool rather than funding individual loans. This model significantly improves capital efficiency and ensures high liquidity allowing users to withdraw their funds at any time, as long as there is sufficient liquidity in the pool.
Supplied assets are represented by dTokens, which entitle the holder to a proportional share of the pool. As interest accrues based on borrowing activities, the value of dTokens increases relative to the underlying asset. This means users earn yield simply by holding dTokens, making passive income seamless and fully on-chain.
3.2 Borrowing Assets
Danogo allows users to borrow assets directly from the protocol by using their supplied collaterals without peer-to-peer matching. Unlike Danogo Fixed Pool Lending, users simply choose the asset they wish to borrow, and there are no negotiating terms, maturity dates, or funding periods. Each flexible lending market operates with a floating interest rate that adjusts algorithmically based on real-time supply and demand, ensuring fair and transparent borrowing costs.
3.2.1 Collateral values
Unlike systems where a single collateral factor applies globally, Danogo defines collateral factors per collateral asset against each borrowing pool. This means the borrowing power of a collateral asset may vary depending on which asset the user wants to borrow. For example, Djed used as collateral might have a higher borrowing factor against stablecoins, but a lower one against ADA. The borrowing capacity is determined by summing the value of each collateral asset, multiplied by their collateral factor. Users can borrow up to—but not beyond—their total calculated borrowing capacity, and Danogo enforces that there is no borrowing, or withdrawing of collaterals is permitted if it would raise the total value of borrowed assets above their borrowing capacity. This mechanism ensures system-wide solvency and protects against default risk.
3.3 Interest Rate Mechanic
base_rate
The annual base interest rate that the borrower is required to pay. Stored in bps, e.g., a base rate of 4% is stored as 400 bps
power_base
power_base is an adjustment factor that determines how the borrow interest rate increases as the utilization rate rises. power_base is stored as basis points. E.g., power_base = 1.047 is stored as 10,470 bps
util_rate
Utilization ratio is total borrow over total supply
basis
Basis point (bps) is used to store interest rates as integers on-chain, ensuring accuracy up to two decimal places.
1 = 100% = 10,000 bps
0.04 = 4% = 400 bps
0.1025 = 10.25% = 1,025 bps
References
[1] Compound’s Whitepaper: https://compound.finance/documents/Compound.Whitepaper.pdf
Last updated