What Juncta Is
Juncta is a Dynamic Liquidity Market Maker with an integrated lending market. Most DeFi protocols treat these as separate concerns — a DEX is one product, a lending market is another, and users who want both maintain separate positions in separate protocols. Juncta is built on a different premise: the same pool of capital serves both functions simultaneously, governed by a single accounting layer that determines what role each portion of the liquidity is playing at any given moment. The practical result is that liquidity providers on Juncta earn from two sources depending on market conditions. When their capital is actively processing trades, they earn trading fees. When the market price moves away from their range and their capital would otherwise sit idle, that same capital becomes available to borrowers and earns lending yield. The transition between these two states is handled by the protocol automatically. No manual action is required from the LP. This document explains how each part of the protocol works, why it is designed the way it is, and what it means for the different people who use it.The Exchange
Juncta’s exchange is built on a bin-based liquidity model. Each trading pair is divided into discrete price bins of defined width. At any moment, exactly one bin is the active bin — the one containing the current market price. Swaps execute within the active bin and move to adjacent bins as liquidity in the current bin is consumed. Liquidity providers deposit capital across a chosen range of bins. The bins closest to the current price are active and earn a share of every swap fee generated by trades passing through them. Bins further from the current price are inactive. On a standard concentrated liquidity DEX, inactive bins earn nothing. On Juncta, they do not sit idle — a point the rest of this document explains in detail.Dynamic Fees
Juncta’s trading fees are not fixed at pool creation. They adjust continuously based on observed price volatility. The fee for any given swap is calculated as: Fee = Base Fee + (Volatility Multiplier × Base Fee) The volatility multiplier is derived from how frequently price is crossing between bins over a rolling window. At zero crossings the multiplier is zero and traders pay only the base fee. At peak volatility the multiplier caps at 2.5 times the base fee. This means LPs earn higher fees precisely during the market conditions that most expose them to impermanent loss.| Pool Type | Base Fee | Maximum Fee |
|---|---|---|
| Stable pairs | 0.01% | 0.025% |
| Standard pairs | 0.20% | 0.50% |
| Volatile pairs | 0.80% | 2.00% |
How LPs Distribute Their Liquidity
When depositing into a Juncta pool, LPs choose how their capital is distributed across bins. There are four native distribution shapes. Spot concentrates 100% of capital in five bins centred on the current price — the active bin and two bins on each side. This maximises fee capture but maximises impermanent loss exposure. It is suited for LPs who are actively managing their position or using adaptive mode. Curve spreads capital in a bell curve across approximately 20 bins in each direction, weighted toward the centre. The further a bin is from the current price, the less capital it holds. This produces moderate fee capture and moderate impermanent loss exposure for LPs who want reasonable yield without constant management. Bid-Ask places liquidity asymmetrically around the current price, with more bins filled on one side than the other. An LP who believes the price of an asset will rise can place more of their capital above the current price and less below it. This allows LPs to express a directional view while still earning fees from both sides of the market. Wide spreads capital uniformly across 50 to 200 bins depending on pool type. This produces the lowest capital efficiency and the lowest impermanent loss exposure. It is closest in behaviour to providing liquidity on an older generation AMM like Uniswap V2, and is best suited for conservative LPs, new assets with uncertain price trajectories, or protocol-owned liquidity that needs to remain stable across wide price swings.For a detailed guide on choosing a distribution strategy, see Choosing a Bin
Strategy.
The Unified Reserve Model
The core architectural decision in Juncta is that the DEX and the lending market share the same pool of reserves. Understanding what this means mechanically is worth some care, because it is easy to assume there is some kind of internal transfer happening — liquidity moving from a DEX pool into a separate lending pool when it goes idle. That is not what happens. There is no physical movement of tokens. The reserves LPs deposit stay exactly where they are. What changes is the accounting designation applied to them. Every bin in a Juncta pool exists in one of two states at any given moment: active or inactive. When a bin transitions from active to inactive because price has moved away from it, the protocol’s accounting layer marks that bin’s reserves as available for borrowing. No transfer occurs. The tokens stay in the same pool. Borrowers can now borrow against that liquidity and interest begins accruing to the LPs whose capital is being used. When price returns to a previously inactive bin and the DEX needs that liquidity to execute swaps, it draws on the available buffer within the pool. The bin resumes executing swaps and the LP’s position resumes earning trading fees from that moment, without any action required from the LP. The accounting layer enforces this at the protocol level. Neither the DEX module nor the lending module can alter the underlying reserves without the layer’s authorisation. Reserves cannot be double-counted and cannot be lost during state transitions.The 80/20 Utilisation Cap
The obvious question this model raises is: what happens if all the inactive liquidity is borrowed out and price snaps back to those bins? The DEX would not have enough liquidity to execute swaps. Juncta addresses this with a hard utilisation cap enforced at the pool level. By default, a maximum of 80% of total inactive bin liquidity in any given pool can be borrowed at any time. The remaining 20% is held as a buffer to ensure the DEX can function when price returns to previously inactive regions. If a borrow request would push utilisation above 80%, it is rejected until existing borrows are repaid. The 80/20 split is a conservative starting default. Stable pair pools can support a higher cap — around 90% — because the probability of a sudden large price return is structurally low for assets whose prices barely move relative to each other. Volatile pair pools warrant a lower cap — around 70% — because price movements are less predictable and the risk of a fast snapback to inactive regions is higher. These adjustments require on-chain data to justify and the default of 80% applies to all pool types at launch.The Lending Market
How Lending Supply Works
The lending supply on Juncta is not funded by a separate group of depositors. It comes directly from the inactive bin liquidity of LP positions across all pools in the protocol. When an LP’s bins go inactive, that liquidity is automatically designated as available for borrowing. The LP does not take any action to enable this. It is a built-in consequence of how the unified reserve model works. Borrowers pay interest on what they borrow. That interest — 90% of it — flows back to the LPs whose inactive bin liquidity is being used. The remaining 10% goes to the protocol reserve.Borrowing on Juncta
Anyone can open a borrowing position on Juncta by providing collateral. There are two ways to do this. The first is depositing a separate asset as collateral. The borrowing capacity this provides depends on the asset and its associated loan-to-value ratio. The second is using an existing LP position as collateral. This is one of the more distinctive features of the lending market. An LP position used as collateral continues earning yield while it secures the loan. It does not need to be removed from the pool or paused. The same position earns lending yield on the supply side and provides borrowing capacity on the collateral side at the same time. The collateral factor for LP positions is 70% of the current USD value of the position. A position worth 7,000 in borrowing capacity. The factor is set conservatively relative to the LTV ratios of the underlying assets individually because LP positions carry the risk of impermanent loss that a simple token deposit does not. The value of an LP position can shift as underlying prices move, and the lower collateral factor accounts for that additional risk.For a detailed guide on opening a borrowing position and choosing how to
provide collateral, see How to Open a Borrowing
Position
and Providing Collateral on
Juncta.
Interest Rates
Juncta’s interest rates are not fixed. They update on every block based on three inputs: how much of the available lending supply is currently being borrowed, how volatile the underlying asset prices are, and a time-weighted demand signal. The borrow rate is calculated as: Borrow Rate = Base Rate + (Utilisation Multiplier × Utilisation%) + (Volatility Premium × Volatility Index) At low utilisation and calm market conditions, the borrow rate sits at a 2% APY floor. As utilisation climbs toward 80%, the rate scales linearly up to 20% APY. Above 80%, the model enters a steep jump multiplier that scales from 20% to 150% APY at full utilisation. The purpose of this jump is not to punish borrowers but to aggressively attract new lending supply and encourage existing borrowers to repay when the pool is running thin. The volatility component adds up to an additional 10% APY on top, compensating lenders during higher-risk periods. The supply rate — what lenders earn — is calculated as: Supply Rate = Borrow Rate × Utilisation% × (1 - Reserve Factor) The reserve factor is 10%. At typical conditions of 70% utilisation and a 14% average borrow rate, the supply rate works out to approximately 8.8% APY.For a full breakdown of how borrow and supply rates are calculated across
different utilisation levels, see Interest Rates on
Juncta.
Lending Market Activation
Not every pool has a lending market active from day one. A newly created pool operates as a DEX only, until it meets a set of activation thresholds that demonstrate sufficient trading depth for reliable internal price discovery. The thresholds exist because Juncta’s lending market uses its own internal TWAP oracle for collateral valuation and liquidation triggers. A pool with thin trading activity produces an unreliable price signal that could be manipulated. Lending access is earned through demonstrated pool activity, not granted at creation.| Pool Type | 7-Day Volume | Minimum TVL | Unique Traders | Continuous Trading |
|---|---|---|---|---|
| Stable pairs | $250,000 | $100,000 | 20 wallets | 72 hours |
| Standard pairs | $1,000,000 | $500,000 | 50 wallets | 72 hours |
| Volatile pairs | $500,000 | $250,000 | 50 wallets | 72 hours |
Health Factor and Liquidations
Every borrowing position on Juncta has a health factor — a single number that reflects how safe the position is at any given moment. It is calculated as: Health Factor = (Collateral Value × Collateral Factor) ÷ Outstanding Borrow Value A health factor above 1.2 means the position is healthy. As the value of the collateral declines relative to the outstanding borrow — because the underlying asset price fell, because impermanent loss reduced the LP position’s value, or because interest has accrued on the loan — the health factor drops. Most lending protocols liquidate a borrower’s full position the moment a single health factor threshold is crossed. Juncta takes a different approach. As the health factor falls, the protocol responds in stages, giving borrowers time to act before a full liquidation becomes necessary.| Health Factor | Protocol Response |
|---|---|
| Above 1.2 | No action taken |
| 1.2 to 1.1 | Soft liquidation begins — 10% of collateral converted to lower-risk bin distribution per block |
| 1.1 to 1.0 | Soft liquidation accelerates — 25% per block |
| Below 1.0 | Full liquidation executes |
For a detailed explanation of how to monitor your health factor and protect
your borrowing position, see Understanding Health Factor and
Liquidation.
Adaptive Position Management
Concentrated liquidity requires active management to remain effective. When price moves significantly away from an LP’s chosen range, the position goes out of range and the LP earns trading fees on a smaller and smaller proportion of their capital. On Juncta, out-of-range capital earns lending yield rather than nothing, but an LP who stays persistently out of range still earns less than one whose position tracks the market effectively. Adaptive position management is Juncta’s built-in answer to this problem. LPs who enable it delegate bin range management to the protocol’s on-chain optimisation module, which monitors their position continuously and triggers a rebalancing event when the market has moved far enough and stayed there long enough to justify repositioning. A rebalancing event triggers when both of the following conditions are met simultaneously:- More than 60% of the LP’s capital is inactive
- The price centre has moved more than 3 bin-widths from the LP’s current distribution centre, sustained for at least 30 minutes
For a guide on enabling and configuring adaptive mode, see How to Provide
Liquidity on
Juncta.
Intent-Based Swap Interface
Juncta’s swap interface is intent-based. Rather than requiring users to construct a transaction, approve tokens, hold native gas tokens, and specify an execution path, the interface asks for three things:- the asset they have,
- the asset they want, and
- the amount.
Analytics and Position Visibility
Juncta’s analytics dashboard is powered by its own on-chain event indexer. Every number displayed is derived from on-chain state and event history. For liquidity providers, trading fee earnings and lending yield are always displayed as separate figures and never blended into a single APY number. LPs can see which of their bins are active, which are in lending, how much each has earned from each source, and what their net position is after accounting for impermanent loss. Impermanent loss is tracked continuously and displayed as both a gross figure and a net figure after subtracting cumulative earnings. This gives LPs a direct answer to the question that actually matters: are you better off in this pool than you would have been simply holding the underlying tokens? For borrowers, the health factor is displayed and updated in every block alongside a sparkline of its recent trajectory and the implied liquidation price — the price at which the collateral value would fall to the point where the health factor reaches 1.0.Governance and Safety
No one needs permission to use Juncta. Creating a pool, trading, depositing, borrowing, repaying, and liquidating are all open to anyone without whitelists or approvals. Governance manages the safety parameters of the protocol — fee settings, borrowing caps, interest rate curves, and oracle sources. All governance parameters operate within hard-coded bounds that cannot themselves be changed by governance. This prevents a bad actor who accumulates governance power from setting parameters to extractive extremes. A governance majority can adjust fees and caps, but only within ranges that are enforced at the contract level. All significant parameter changes go through a timelock. The change is announced publicly and a waiting period passes before it takes effect. Users have time to see what is changing and respond before it does. Governance cannot move user funds, freeze individual accounts, or seize positions. These actions are not possible by design, not just by policy.Protocol at a Glance
| Feature | What It Does | What It Means for You |
|---|---|---|
| DLMM Exchange | Bin-based concentrated liquidity DEX | Earn more fees per dollar when price is in your range |
| Dynamic Fees | Fees scale with volatility up to 2.5x base | Higher fee earnings during volatile markets |
| Unified Reserves | Idle bins earn lending yield automatically | Your capital keeps working when the market moves away from your range |
| Lending Market | Borrow or earn from supplying | Access liquidity without selling or earn interest from others borrowing |
| LP as Collateral | Use your LP position to borrow | Borrow up to 70% of position value while the position continues earning |
| 80/20 Buffer | Max 80% of idle liquidity lent out at any time | The exchange always has liquidity available when prices return |
| Liquidations | Graduated soft liquidation before full liquidation | Time to act and recover before your position is fully closed |
| Adaptive Mode | Automatic bin range rebalancing | Stay in range without actively monitoring your position |
| Intent Swaps | Gasless, routing-abstracted swap interface | Specify what you want — execution, routing, and gas are handled by the protocol |
| Analytics | Fee earnings and lending yield shown separately | See exactly where your return is coming from and your real net position after IL |
| Governance | Timelock-controlled, bounds-enforced parameter changes | No surprise changes and no ability to set parameters to harmful extremes |