Skip to content

代币经济学

Chaos Protocol 的代币经济学设计旨在创建一个可持续的生态系统,通过交易税、燃烧机制和对赌系统实现代币的价值循环。

代币基本信息

属性
代币名称太初 (Chaos)
代币符号Chaos
初始供应量100,000,000 (1亿)
BSC (币安智能链)
标准BEP-20

供应分配

初始分配

初始供应: 100,000,000 Chaos

┌─────────────────────────────────┐
│  初始流动性 (PancakeSwap) 50%   │
│  50M Chaos + 80K USDT           │
├─────────────────────────────────┤
│  私募投资者 (603人) 50%          │
│  200-2000 USDT/地址              │
│  Token + LP 按比例分配           │
└─────────────────────────────────┘

初始供应量在合约部署时全部铸造给 tx.origin(部署者地址),然后:

  1. 50,000,000 Chaos + 80,000 USDT 用于添加初始流动性
  2. 剩余代币通过 BatchInit.s.sol 分配给 603个私募投资者

私募投资者分配

私募投资者每人投入 200-2000 USDT,按固定比例获得 Token 和 LP:

投入 (USDT)获得 Token获得 LP比例
2000312,500 Chaos12,500 LPToken = USDT × 156.25
1000156,250 Chaos6,250 LPLP = USDT × 6.25
50078,125 Chaos3,125 LP
40062,500 Chaos2,500 LP
30046,875 Chaos1,875 LP
20031,250 Chaos1,250 LP

分配比例:

  • Token : USDT = 156.25 : 1
  • LP : USDT = 6.25 : 1

分配脚本: script/BatchInit.s.sol

solidity
// 执行批量空投
uint256[] memory tokenAmounts = BatchInitData.getTokenAmounts();
token.batchAirdrop(addrs, amts);

// 执行BurnPool初始化 (可选)
uint256[] memory usdtAmounts = BatchInitData.getUsdtAmounts();
burnPool.batchInitialize(addrs, amts);

// 执行Vault LP分配 (可选)
uint256[] memory lpAmounts = BatchInitData.getLpAmounts();
vault.batchCreditLp(addrs, amts);

流通供应变化

由于燃烧机制的存在,流通供应量会持续减少:

流通供应 = 初始供应 - 累计燃烧量

BatchInit 初始化流程

合约部署后通过 BatchInit.s.sol 脚本完成初始化:

mermaid
graph TD
    A[部署合约] --> B[铸造1亿Chaos给部署者]
    B --> C[添加初始流动性]
    C --> D[50M Chaos + 80K USDT → PancakeSwap LP]
    D --> E[batchAirdrop]
    E --> F[603个私募地址按比例获得Token]
    F --> G[可选: batchInitialize]
    G --> H[可选: batchCreditLp]
    H --> I[初始化完成]

初始流动性:

solidity
// 添加到 PancakeSwap 的初始流动性
uint256 usdtAmt = 80_000 ether;    // 80,000 USDT
uint256 tokenAmt = 50_000_000 ether; // 50,000,000 Chaos (50%供应)

初始化数据: test/BatchInitData.sol

solidity
library BatchInitData {
    function getUsers() internal pure returns (address[] memory) {
        address[] memory users = new address[](603);
        users[0] = 0xaD71bAdbA129870c1bc8B2f8b6FF8f1A0978B4A9;
        users[1] = 0x4b670a235B77e621894F84d9e23cf5Dd869C3AD1;
        // ... 共603个地址
    }

    function getTokenAmounts() internal pure returns (uint256[] memory) {
        // 按USDT投入比例分配: Token = USDT × 156.25
        amounts[0] = 31250000000000000000000;   // 200 USDT → 31,250 Chaos
        amounts[602] = 312500000000000000000000; // 2000 USDT → 312,500 Chaos
        // ...
    }

    function getLpAmounts() internal pure returns (uint256[] memory) {
        // 按USDT投入比例分配: LP = USDT × 6.25
        amounts[0] = 1250000000000000000000;    // 200 USDT → 1,250 LP
        amounts[602] = 12500000000000000000000;  // 2000 USDT → 12,500 LP
        // ...
    }
}

交易税机制

税率结构

solidity
uint256 public constant FEE_RATE = 300; // 3%

每笔涉及 PancakeSwap 交易对的交易收取 3% 的税费。

税收分配

交易税的分配比例如下:

交易税 (3%)

    ├──→ 80% ──→ BurnPoolV2 (分红池)

    └──→ 20% ──→ BurnPoolV2 (奖金池)
分配方向比例用途
分红池80%FIFO队列用户分红
奖金池20%Boost加速奖励

税收流向示例

假设某用户卖出 10,000 Chaos:

卖出 10,000 Chaos

扣除 3% 税费 = 300 Chaos

用户实际收到 9,700 Chaos

300 Chaos 通过 PancakeSwap 换成 USDT

假设换得 300 USDT

├──→ 240 USDT ──→ BurnPoolV2 分红池 (80%)
└──→ 60 USDT ───→ BurnPoolV2 奖金池 (20%)

燃烧机制

BurnPoolV2 燃烧流程

用户参与燃烧时的代币流向:

有推荐人:

用户投入 100 USDT

┌───────────────────────────────────┐
│  40 USDT → 添加LP (全部给用户)    │
│  20 USDT → 推荐奖励               │
│           ├─ 10 USDT → 金库LP     │
│           └─ 10 USDT → 代币       │
│  35 USDT → 买币参与税收分红        │
│   5 USDT → 买币销毁 (黑洞)        │
└───────────────────────────────────┘

LP 存入 VaultV5 → 进入 FIFO 分红队列

无推荐人:

用户投入 100 USDT

┌───────────────────────────────────┐
│  40 USDT → 添加LP (全部给用户)    │
│  55 USDT → 买币参与税收分红        │
│   5 USDT → 买币销毁 (黑洞)        │
└───────────────────────────────────┘

LP 存入 VaultV5 → 进入 FIFO 分红队列

代币销毁

每次燃烧都会销毁一部分代币:

场景销毁比例
无推荐人较高(剩余代币大部分销毁)
有推荐人较低(部分给推荐人)

通缩效应

随着燃烧的进行,流通供应量持续减少:

时间 →
供应量 ↓

初始供应 (1亿)

燃烧 #1 → 销毁 X Chaos

燃烧 #2 → 销毁 Y Chaos

   ...

流通供应持续减少

收益模型

BurnPoolV2 收益

用户通过燃烧获得的收益:

指标
最低参与额100 USDT
目标回报2x (200 USDT)
收益来源交易税分红
分配方式FIFO队列

收益计算示例

用户投入: 1000 USDT
目标回报: 2000 USDT

等待交易税积累

当分红累计达到 2000 USDT 时

用户可以提取全部收益

Boost 加速

推荐人可获得加速收益:

推荐人A推荐用户B

用户B在8小时内完成燃烧

推荐人A从奖金池获得额外奖励

加速A的出队速度

VaultV5 对赌模型

对赌机制

用户可以基于代币价格涨跌进行对赌:

创建者 (Creator)          接单者 (Taker)
    │                         │
    │ USDT                    │ LP代币
    ↓                         ↓
┌───────────────────────────────┐
│        对赌合约               │
│  基准价: 创建时的代币价格      │
└───────────────────────────────┘

        3天后结算

    ┌───────┴───────┐
    ↓               ↓
价格上涨          价格下跌
    ↓               ↓
利润各50%        创建者保本
                 接单者承担亏损

收益限制

  • 最大利润:投入的2倍
  • 锁定时间:30分钟(创建后)
  • 合约有效期:3天

经济循环

完整经济流

mermaid
graph TD
    A[用户交易] -->|3%税费| B[TaxToken]
    B -->|80%| C[BurnPoolV2分红池]
    B -->|20%| D[BurnPoolV2奖金池]
    
    E[用户燃烧] -->|USDT| C
    E -->|代币销毁| F[通缩]
    
    C -->|2x回报| G[用户收益]
    D -->|Boost奖励| H[推荐人加速]
    
    E -->|LP| I[VaultV5]
    I -->|对赌| J[用户对赌]
    J -->|盈亏结算| G
    
    G -->|再投资| E

价值循环

  1. 交易产生税收 → 增加分红池
  2. 用户燃烧 → 获得LP和分红权
  3. 分红积累 → 用户获得收益
  4. 收益再投资 → 继续燃烧
  5. 代币销毁 → 减少供应,提升价值

风险与激励

激励机制

激励说明
交易税分红持有代币即可获得分红
燃烧收益2倍回报目标
推荐奖励额外LP和代币奖励
Boost加速8小时内推荐可加速出队
对赌收益基于价格预测获利

风险因素

风险说明
市场风险代币价格波动影响对赌结果
流动性风险分红池资金不足可能延迟收益
智能合约风险合约漏洞可能导致资金损失

关键参数

solidity
// TaxToken
uint256 FEE_RATE = 300;           // 3%税率
uint256 MIN_SWAP_AMOUNT = 200;    // 最小交换数量

// BurnPoolV2
uint256 MIN_BASKET = 100;         // 最小参与额 (USDT)
uint256 MULTIPLE = 2;             // 回报倍数
uint256 BOOST_WINDOW = 8 hours;   // Boost窗口期

// VaultV5
uint256 LOCK_PERIOD = 3 days;     // 合约锁定时间
uint256 MIN_CONTRACT = 30;        // 最小对赌额 (USDT)
uint256 MAX_PROFIT = 2;           // 最大利润倍数

// BatchInit 私募分配
uint256 INVESTORS = 603;          // 私募投资者数量
uint256 TOKEN_RATIO = 15625;     // Token/USDT 比例 (×100)
uint256 LP_RATIO = 625;          // LP/USDT 比例 (×100)
uint256 MIN_INVEST = 200;        // 最低投入 (USDT)
uint256 MAX_INVEST = 2000;       // 最高投入 (USDT)

// 初始流动性
uint256 INITIAL_USDT = 80_000;   // 初始流动性USDT
uint256 INITIAL_TOKEN = 50_000_000; // 初始流动性Token (50%供应)

相关链接

Chaos Protocol Documentation