Discussion; ibXXX Peg Maintenance


Thread for ideas & discussion on maintaining & managing ibXXX stablecoin pegs on curve pools. For a full list of Curve pools see here or here which includes a discussion on pools being used.

It is worth noting that Curve pools have differing amplification coefficients (“A”), which impacts the point at which tolerance for imbalance between assets is tested. This detail can be found on the page for each pool on Curve directly.

Members of the team or community are encouraged to suggest, discuss or debate possible solutions

Background/Current Tools;

The protocol currently relies on the following tools to assist with managing & maintaining the ibXXX stablecoin pegs on curve pools;

  • The AMM at Fixed Forex which allows users access to ibXXX assets in exchange for providing USD-based stablecoins
  • Assets that control & direct (through voting) new Curve emissions to Curve pools
  • Providing additional incentives for liquidity miners seeking yield through setting weekly allowances for rKP3R allocations to pools
    • Pool allocation is determined by vKP3R votes at Fixed Forex

The Keep3r multisig has also, previously, enabled ibXXX stablecoin holders to exit via the AMM when treasury-held MIM has been available to offer. Note; this is not currently offered due to the treasury no longer holding any MIM

Potential Options;

Other protocols have faced similar dilemmas in experimenting with and finding ways to maintain the peg of their stablecoins. Although each protocol differs there are some elements of their tools, methods & solutions that may prove useful for Fixed Forex peg (albeit with suitable variations).

Keep3r also has the unique challenge that it is attempting to maintain peg across 6 stablecoins (ibEUR, ibCHF, ibGBP, ibAUD, ibKRW, ibJPY) whereas most previous protocols have been working towards maintenance of peg on a single stable asset

Price Stability Module (PSM);
Most famously popularized by MakerDAO’s implementation of a PSM to support 1:1 swaps between USDC & DAI (and visa versa) at a fixed fee

References/Useful Links;

Tight-Range UNI V3 Managed Position;
Again, most famously popularized by MakerDAO’s implementation using ERC-20 wrapped tight-range Uni V3 positions which also incorporates the ability for users to leverage their position to loop the position. Users earn fees based on utilization of the Uni pair within the ranges defined

References/Useful Links;

Algorithmic Market Operations (AMO);
Implemented by FRAX Finance & Angle Finance in support of their FRAX USD and agEUR EURO stablecoin tokens. Each team is deploying unique strategies that seek to maintain peg of the token & simultaneously earn additional fees on behalf of the protocol

References/Useful Links;

Treasury Intervention / Protocol Owned Liquidity (POL);
Both methods have been used by Keep3r in the recent past to help support the peg of assets in Curve pools.

  • Treasury intervention is where the Keep3r treasury acquires the relevant asset, through purchase or swaps, and then;
    • either enters the LP on the imbalanced side (at which point this becomes POL) OR;
    • swaps between the LP in an attempt to rebalance

Note; This requires a dependency that the treasury has liquid funds available to enact these measures

Once a protocol achieves a POL through purchasing LP position then all fees earnt on those LPs are returned to the protocol treasury as profits, including any incentives claimable to the LPers in pool

References/Useful Links;

This is the categorization for any other proposed solution that can maintain the peg within Curve pools. This definition may contain new innovations proposed by members of the community or other methods utilized by other protocols that have not been otherwise noted above

Directions for suggesting additional opportunities to maintain peg

Please use the comments section below to add any new suggestions, or to debate any suggestions proposed by other community members.

It would be helpful if you could indicate which of the categorizations of peg maintenance type, from the list above, applies to each suggestion.


Suggestion for AMO strategy on agEUR pool

This suggestion would fall into the area of Algorithmic Market Operations (AMO) and could be processed either as a manual experiment or an automated task managed through a Keep3r Job listing, triggered only when the agEUR+ibEUR pool is off-balance

In theory, this AMO strategy should be complimentary to ANGLE’s own AMO strategy for Euler


AMO strategy would follow the proposed steps;

  • Deposit USD collateral with Euler > taken from USD collateral holdings (earning 1% on USDC for example)
  • Borrow agEUR - borrowing cost is negligible since profits would outweigh the cost, and borrowing has the potential to be offset by EUL incentives
  • Deposit into curve agEUR+ibEUR pool earning bonus
  • Deposit LP with Curve or Convex earning; CRV (& CVX), ANGLE, rKP3R & base fee
  • At a future point, where pool balance has been maintained withdraw LP position on even sides, assuming the minimum borrowed amount of agEUR is met, and redeem profits

Note; ANGLE has their own AMO strategy that would limit the amount of risk Keep3r would be exposed to on borrowing rates - as ANGLE ensures the borrowing rate of agEUR on EULER remains below 3% at all times up to a limited whereby 10% of agEUR circulating supply is minted for the purposes of maintaining the borrowing limit (see references)


  • Should peg maintenance strategy paired with consistently incentivizing the pool not attract additional TVL then Keep3r may get stuck in a constant or unfavorable borrowing cycle therefore a time or value threshold that acts as a circuit breaker should be established at the onset
  • This could further impact in the case that there is not enough total agEUR in the pool to withstand the AMO withdrawal of LP position then Keep3r may have to fund the acquisition of the required volume of agEUR from additional sources
  • Unlikely to work as a strategy in isolation, i.e. without other peg maintenance strategies being implemented on other ibXXX pools

References/Supporting Materials;


Keep3r could do this with sXXX pairs in theory however would need to become comfortable with ibXXX then essentially becoming a wrapper for sXXX assets. This could be managed whereby there is a hard limit or a target level of circulation of ibXXX supported in this way.

Some additional thoughts;

  • Could utilize the UNI V3 managed position product that Andre originally envisioned, rather than the Arrakis G-UNI product, with a little further dev efforts - this would save Keep3r the fees that would be due to Arrakis
  • Would require a lending/borrowing protocol to be prepared to allow the deposit of UNI V3 LP positions wrapped as ERC-20 in order to borrow against it at leverage
  • The input vault/front end (recommended to be hosted on FixedForex.fi if solution is credible) would need the ability to switch feature on/off based on need, so that level of sXXX wrapped doesn’t exceed thresholds/limits (see above)
  • Since sXXX are always valued at fiat oracle pricing, it would be sensible for the range positions to be adjusted slightly in configuration when compared to MakerDAOs config with USDC

Does not the UniV3 tight position need to be isolated so that when the price does approach danger zone, that there is no way further the damage without facing heavy slippage.

ie. If there is a curve pool, will not the bad price beg of these, just cause the UNI pool to be arbed into off peg zones anyway?

the issue with the peg, is that agTKN and sTKN holders don’t add to the pool. perhaps, an alliance of tokens that build a large pool with all 3 and that is incentivized with all three, as well as veCRV/vCVX voting power, might be the way to approach this.

ibXXX are not in short supply.

alternatively, but of lesser validity would be the incentiviaztion of the withdrawal of ibXXX to be used elsewhere.

perhaps getting them listed as collateral in more places.

1 Like

Hey @Ceazor,

Great to see your inputs / thoughts. Some quick responses;

This is why Maker team is running two different UNI positions and also the PSM (actually encouraging users to arb when it suits them to restore peg), although downside is it means it basically wraps the paired asset - i.e. a lot of ibXXX collateral would be sXXX version of asset.

This is a really valid point, and don’t know if you have seen the other post here?

Today ibXXX isn’t accepted as collateral in ANY markets, partly because of the way risk is managed in relation to the listings on Iron Bank and the relationship with Fixed Forex as the minter. But a good first move here could be Euler, since it would also enable wider availability. Alongside that it would make sense probably to list more sXXX assets for supply and borrow in Iron Bank, and work towards getting sXXX assets on other lending markets like Euler & AAVE too. The problem today is access to sXXX assets is very complex for average users and the staking and minting process is sort of a barrier to entry, then you add in need to exchange sUSD for sXXX.

One way to overcome that is have both Keep3r & Synthetix teams play a more direct role in minting as is, in current process, and then use it for purposes of raising revenues for both teams. Synthetix would also get more revenues if the Fixed Forex AMM was updated to allow atomic exchange between all assets.

The other is to make availability of sXXX more widely available through the lending markets & on exchanges, which requires some Collab between both teams but would bring ease of access to users (especially retail). That would also open up the possibility for AMO functions too. Today you can’t really profit of of depeg because it’s you have to atomic exchange into sXXX in order to enter pools on that side or run big enough swaps through to rebalance


It also may be a better consideration to look to do an option like this with EUROC from Circle since it’s then a kind of Euro version of what DAI-USDC is doing in the world of Maker

1 Like
  1. How much funds do Keep3r have to buyback ib*** tokens?
    Are they under collateralized?
    If they are under-collateralized with for example 80% of the value of the ib*** tokens, I still think it would be best to make it possible for ib*** holders to redeem their tokens for 80% of the value, rather than not being able to use the system at all like it is now.

  2. If they have the funds, why don’t they buyback the tokens at a discout to payoff their loans and that way restore the peg?
    If this is because it will reduce the “TVL”, it is still much better than having a system that does not work at all, since none is interested in buying these “stablecoins” because they are not even close to the value they should be.

1 Like


I get that you might be frustrated because you got funds that you can’t exit right now without high slippage but you’re only option right now is likely to wait it out until the steps below are completed.

Neither of these suggestions is really longer-term in nature, where user actions help restore the peg or automated tasks help run profitable strategies that also support the peg. Ultimately that has to be the long-term goal because it’s much more sustainable.

However, as short-term steps, they could work for the protocol - but it requires treasury to constantly be playing an active role to carry on down that path continually. In the end, that’s not really a sustainable or efficient way to operate, is it?

Obviously, I agree with you that the priority in the short-term needs to be restoring the peg on Curve but where I’d differ is that there should also be a setup that helps users or automated tasks maintain the peg once it’s been restored this time. That can be done by;

  • Balancing the pools now with treasury funds
  • Amending the AMM so that it operates with the features listed here
  • Burning some of the ibXXX supply in Ethereum market on Iron Bank so that interest rates for borrows go up
  • Maintaining a consistent incentive strategy to farm (i.e. keep voting consistently for gauges whilst also trying to increase voting power)
  • Boost incentives by revising the way rKP3R incentives are allocated as suggested here - whilst also removing the option to vote for USDC pools

Outside of that new use cases will increase demand for ibXXX assets - for example the recent integration by Mover

The rest of the questions you asked are all answered in full across the other threads, including info that is embedded within them. But quick response is;

All ibXXX are overcollateralized. Keep3r treasury info is publically available. Buy-back of ibXXX to payback loans has to come from sXXX side, treasury has been doing that if you look at transaction history. Impact to TVL would be on Iron Bank not Keep3r since most of Keep3r’s TVL comes from vested token holders.

1 Like

Okay thanks for the long answer, I just don’t understand why there is a problem with restoring peg first, and after that working on the future increase of demand to use the tokens.

It is like saying we should first build a car, before we have any streets for it to drive on. If we don’t have the streets, the car will have now value.

I don’t understand why it would not be a sustainable/efficient way to operate?
When the treasury can profit from doing something, why should they not do it?

It should be benefitial for both the holders of ib*** tokens and Keep3r to buyback and repay loans.

  1. ib*** gets pegged and people can start using it as a stablecoin again.
  2. Keep3r profits from buying the ib*** tokens for cheaper then they minted them for and don’t need to pay more borrow rates for their loans when they pay them back.

The main and most sustainable demand should be to use them as a stablecoin? If we fix the peg people will actually be able to do this, compared to now, therefore more people that prefer these currencises should start minting them?

1 Like

On this bit, we’re both advocating for same thing. This can be done as one-time first step & I’m sure it will be in next few days/weeks.

Key to understanding this is also understanding that over-collateralized, decentralized stables have an ongoing challange to maintain peg. Look at how DAI and FRAX are handling this in different ways - all of which is explained above. Alongside that incentivizing liquidity is a necessary tool to build deep liquidity on-chain - it’s a fact of running a stablecoin. Keep3r is running six of them with all the different Fixed Forex stables, so challenge is same but widespread in some regards.

On this piece, treasury fund is not infinite, so they can’t keep propping up peg on their own. If they did that they have two options;

  1. Find a way to continually raise funds for treasury - this is what some of AMO strategies above would do.
  2. Mint & Sell KP3R tokens - which isn’t really an option because then you shift from being Over-Collateralized stables to pretty much algo. So that is kinda a no go.

Yeah, that’s why the mover thing is quite interesting & it’s also why the pool with agEUR makes sense because users can trade ibEUR for agEUR and use the on/off ramp partners that are there.