Index Coop Resource Center
  • Welcome to The Index Coop.
  • Products
    • Trade
      • Index Coop Leverage Suite
      • Leverage Token Parameters
      • Leverage Token Keepers
      • Trading Interface Guide
      • Ripcord Guide
    • Earn
      • High Yield ETH Index (hyETH)
      • Interest Compounding ETH Index (icETH)
    • Asset Management
      • Product Development Process
      • Product Revenue Tokens (PRTs)
    • Legacy Products
      • How to Redeem Legacy Products
      • DeFi Pulse Index (DPI)
      • Bankless BED Index (BED)
      • Metaverse Index (MVI)
      • Diversified Staked ETH Index (dsETH)
      • Index Coop CoinDesk ETH Trend Index (cdETI)
      • Index Coop Large Cap Index (ic21)
      • ETH 2x Flexible Leverage Index (ETH2x-FLI)
      • BTC 2x Flexible Leverage Index (BTC2x-FLI)
      • Flexible Leverage Index- Polygon (FLI-Ps)
        • ETH 2x Flexible Leverage Index (ETH2x-FLI-P)
        • Inverse ETH Flexible Leverage Index (iETH-FLI-P)
        • BTC 2x Flexible Leverage Index (BTC2x-FLI-P)
        • Inverse BTC Flexible Leverage Index (iBTC-FLI-P)
        • MATIC 2x Flexible Leverage Index (MATIC2x-FLI-P)
        • Inverse MATIC Flexible Leverage Index (iMATIC-FLI-P)
      • Market Neutral Yield ETH (MNYe)
      • Bankless DeFi Innovation Index (GMI)
      • Data Economy Index (DATA)
      • Legacy Contract Addresses
      • Gitcoin Staked ETH Index (gtcETH)
  • Protocol
    • Index Protocol
      • Core Contracts
        • Set Token
        • Set Token Creator
        • Controller
        • Integration Registry
        • Price Oracle
        • Set Valuer
      • Modules
        • Basic Issuance Module
        • Debt Issuance Module v2
        • NAV Issuance Module
        • Trade Module
        • Streaming Fee Module
        • Wrap Module
        • Airdrop Module
        • Claim Module
        • Governance Module
        • Compound Leverage Module
        • Aave v2 Leverage Module
        • Aave v3 Leverage Module
        • Auction Rebalance Module
    • Set Protocol v2
    • Security and Audits
    • Contract Verification
    • Programmatic Redemptions
  • Resources
    • Governance
      • $INDEX - Governance Token
      • Index Improvement Proposals (IIP) Overview
        • IIP Step-by-Step
        • Governance Representatives
        • IIP Template
        • Product (DG) Template
      • Meta-Governance
      • Delegation
    • Data & Analytics
    • Multisigs
    • Press Kit
Powered by GitBook
On this page
  • Step 1: Identify the Correct Contract
  • Step 2: Check if Token Should Rebalance
  • Step 3: Call Ripcord

Was this helpful?

  1. Products
  2. Trade

Ripcord Guide

a step-by-step guide for calling the Ripcord function

PreviousTrading Interface GuideNextEarn

Last updated 5 months ago

Was this helpful?

All have an emergency de-lever function that can be triggered by anyone (i.e. publicly callable). This function - Ripcord - can be called when a token's leverage ratio surpasses a pre-defined limit and approaches the liquidation threshold; more information on is available here. Ripcord provides additional safety and redundancy to the operated by Index Coop today.

An ETH reward is also paid out to Ripcord callers for protecting tokens from liquidation. The amount of the reward varies based on where a leverage token is deployed; see the table below:

Network
Leverage Tokens
Ripcord Reward

ETH2x, BTC2x

1 ETH

ETH3x, ETH2x, iETH1x, BTC3x, BTC2x, iBTC1x

0.25 ETH

ETH3x, ETH2x

0.25 ETH

A step-by-step guide for calling Ripcord using Arbiscan is provided below.


Step 1: Identify the Correct Contract

Each leverage token has a dedicated Leverage Strategy Extension contract that enables rebalancing; the Ripcord function per leverage token can be found in this contract. Using the table below, identify the Leverage Strategy Extension contract associated with the token that you want to call Ripcord for:

Network
Leverage Token
Leverage Strategy Extension

ETH2x

BTC2x

ETH3x

ETH2x

iETH1x

BTC3x

BTC2x

iBTC1x

ETH3x

ETH2x

Next, you will engage with the read and write functions on the selected contract.


Step 2: Check if Token Should Rebalance

After selecting the appropriate contract, navigate to the Contract > Read Contract tab. Select the shouldRebalance function and click Query. In the extremely unlikely event that Ripcord can be called as a result of an exceptionally high leverage ratio, this function will return:

  • a string value for the DEX used for rebalancing; ex. "UniswapV3ExchangeAdapterV2"

  • a uint8 value of "3" which indicates Ripcord can be called

If the returned uint8 value is 3, then Ripcord can be called. In this case, copy the string value for the enabled exchange - ex.UniswapV3ExchangeAdapterV2 - you will need it for Step 3.

If the uint8 value is 0, 1, or 2, the Ripcord function cannot be called and subsequent steps will fail.


Step 3: Call Ripcord

If Ripcord is callable, navigate to the Write Contract tab on the same Leverage Strategy Extension contract. If you haven't already, connect a wallet - specifically an EOA - so that you may write to the contract.

Expand the ripcord function and paste the string value of the enabled exchange from Step 2, which is UniswapV3ExchangeAdapterV2 in this example. After verifying the transaction details, click Write and sign the transaction in the connected wallet.

Assuming the token's leverage ratio remains above the emergency threshold during the same block, the Ripcord transaction should execute successfully. The token will be rebalanced according to preset Ripcord parameters and the ETH reward will be paid out to the caller's address.


Questions?

As an example, we will use the contract. See the screenshot below for a simulated scenario where Ripcord would be callable.

Drop into the - this is the fastest way to have a real person answer any questions you have!

Index Coop Leverage Tokens
Ripcord parameters
Leverage Keeper System
ETH3x Leverage Strategy Extension
Index Coop Discord Server
Ethereum
Arbitrum
Base
Ethereum
0x500f8A8b67153966dFdF770BC41ccFBe5dd5F0e7
Ethereum
0xD9b86CaDbDf1Fd260b9D4e70f5f4067729cDcd77
Arbitrum
0x165EDF07Bb61904f47800e13F5120E64C4B9A186
Arbitrum
0xb5Ef3FE96e4cf0BB8529c9a761e2Cb6F2f440cb3
Arbitrum
0xcB3eBCdd25EcA9F0755b13b3DC87a7252ef4eB47
Arbitrum
0x3e262dC5B9aa18D6A8236C11CAa979f89473dC39
Arbitrum
0x04D58e7051E7f0EA4b01BB648D61f4A641b2c08B
Arbitrum
0xb1aaD804E4Da225237b88AA62dFDDc719715Dc44
Base
0x1cf7c6C4c8997fc047effA0D5B119F174f08B08b
Base
0xAFBd1f46Aa2db385bB09E40e40c857BD2e755F92
shouldRebalance function