Conviction Pool Management

Creating Conviction Pool

1. Set During Token Creation

// Create conviction pool simultaneously when creating token
const createParams = {
  insurance_amt: 1000000000, // Conviction amount (lamports)
  insurance_px: 500000000, // Trigger price (lamports)
  name: "My Token",
  symbol: "MTK",
  uri: "ipfs://metadata_hash",
  user_pubkey: "user_wallet_public_key",
  network: "mainnet",
  platform: "meteora",
};

2. Create Conviction Pool Separately

// Create Conviction pool for existing token
const convictionParams = {
  mint: "token_address",
  insuranceAmt: 1000000000, // Conviction amount
  insurancePx: 500000000, // Trigger price
  userPubkey: "user_address",
};

// Call on-chain Conviction pool initialization
const convictionIx = await program.methods
  .initInsurance({
    amt: new BN(insuranceParams.insuranceAmt),
    startPrice: new BN(insuranceParams.insurancePx),
    creator: userPublicKey,
    mint: mintPubkey,
    name: tokenName,
    symbol: tokenSymbol,
    uri: "",
    poolId,
  })
  .instruction();

Query Conviction Pool Information

Endpoint: POST /api/token/conviction_pool/{token_address}

Request Headers:

Response Example:

Conviction Pool Status

Status Types

  • reserved: Reserved, not triggered

  • deployed: Triggered, tokens swapped

  • redeemed: SOL redeemed

Status Determination Logic

Redeem Conviction Pool

Redemption Conditions

  • Token price has not fallen below protection price

  • Beyond lock period (usually a few days)

  • User is the conviction pool creator

Redemption Process

On-chain Redemption Transaction

Conviction Pool Trigger Mechanism

Auto-trigger Conditions

  • Current token price ≤ set protection price

  • Meets minimum trigger time interval

  • Pool has sufficient liquidity

Post-trigger Processing

  • Automatically swap tokens for SOL

  • Update conviction pool status to "deployed"

  • User can no longer redeem original SOL

Time Lock Mechanism

Lock Period Calculation

Countdown Display

Key Points

  • Conviction pool requires locking real SOL

  • Protection price setting needs to be careful, too high easily triggers

  • Time lock mechanism prevents frequent operations

  • Cannot be reversed after triggering, SOL will be swapped

  • Supports querying historical conviction pool records

  • Each token can only have one conviction pool

Last updated