返回实战项目
Day 7

【实战3.1】空投方案设计与模拟:从规则到链上验证

对比Uniswap/Arbitrum/Blur/LayerZero四大空投案例,用Dune SQL模拟积分计算,设计完整空投方案含女巫防护

2026-03-20
实战项目Dune空投激励机制女巫防护Merkle树

实战项目 3.1:空投方案设计与模拟

项目信息

项目编号:3.1
所属方向:激励机制设计
难度:⭐⭐⭐⭐ 高级
预计时间:5-6小时
前置技能:用户分群(实战1.1)、增长分析(实战2.1-2.3)

项目目标

分析经典空投案例,用链上数据模拟积分计算,设计一个完整的空投方案

产出清单:
├── ✅ 空投案例对比分析(4个项目)
├── ✅ Dune 空投模拟查询
└── ✅ 完整空投方案设计

Task 1:四大空投案例对比分析

Uniswap 空投(2020.09)

规则:历史上使用过 Uniswap 的地址均获 400 UNI
═══════════════════════════════════════════════════════════
方式:一次性、等额分配
合格条件:在快照前至少执行过 1 笔 swap
分配量:400 UNI/地址(约 $1,200)
合格地址:~251,000
女巫防护:无
总分配:150M UNI(总供应 15%)

评价:
✅ 简单公平,用户感知好
✅ 开创"回溯性空投"先河
❌ 无差异化,重度用户和 1 次用户一样
❌ 无女巫过滤,大量工作室获利
❌ 空投后卖压巨大

PM 洞察:简单规则 + 超额预期 = 最强品牌效应
═══════════════════════════════════════════════════════════

Arbitrum 空投(2023.03)

规则:多维度积分制,按行为深度分级
═══════════════════════════════════════════════════════════
积分维度(共 15 分):
├── 跨链到 Arbitrum(1 分)
├── 不同月份交易(最多 2 分)
├── 交易次数阶梯(4/10/25/100 笔 → 1/2/3/4 分)
├── 交易金额阶梯($250/$500/$2.5K/$10K/$50K/$250K)
├── 流动性提供(1 分)
├── 使用 Arbitrum Nova(1 分)
└── 早期参与者额外加成

分配:
├── 3 分以下不合格
├── 3 分 = 1,250 ARB → 12 分+ = 10,250 ARB
├── 合格地址:~625,000
└── 总分配:1.13B ARB(总供应 11.3%)

评价:
✅ 多维度评估,区分用户深度
✅ 激励多种行为(不只是交易)
❌ 积分规则公布后才知道标准(不可预期)
❌ 女巫过滤力度不够,仍有大量多号
═══════════════════════════════════════════════════════════

Blur 空投(2023.02 - 多季)

规则:多季空投 + 积分透明 + 行为引导
═══════════════════════════════════════════════════════════
Season 1:挂单积分(引导用户从 OpenSea 迁移)
Season 2:竞价积分(引导用户做 Bid,增加流动性)
Season 3:持续交易积分

核心创新:
├── 积分规则提前公布 → 用户可以"挖"
├── 忠诚度分数 → 不在 OpenSea 挂单的加分
├── 竞价距离 → bid 越接近地板价积分越高
└── 多季设计 → 持续激励而非一次性

评价:
✅ 透明规则 + 持续激励 = 长期用户绑定
✅ 忠诚度设计 = 竞品排他策略
✅ 多季空投保持社区活跃度
❌ 过度金融化,交易量含水分高
❌ 空投猎人挖完就跑
═══════════════════════════════════════════════════════════

LayerZero 空投(2024.06)

规则:社区女巫猎人 + 自首机制 + 严格过滤
═══════════════════════════════════════════════════════════
创新机制:
├── 自首窗口:女巫可以自首,获 15% 空投
├── 社区举报:任何人可举报女巫,瓜分其空投
├── 多轮审查:初筛 → 社区审查 → 团队终审
├── 严格标准:600 万地址筛到 128 万合格

结果:
├── 自首:~803K 地址
├── 社区举报:~5M 地址被标记
├── 最终合格:~1.28M 地址
├── 人均空投:~$50-500(远低于预期)

评价:
✅ 女巫检测最严格的空投
✅ 社区参与治理的创新模式
❌ 空投金额低于预期 → 社区不满
❌ 误杀正常用户争议大
❌ 过程漫长(数月),消耗社区耐心
═══════════════════════════════════════════════════════════

四大空投对比总结

维度UniswapArbitrumBlurLayerZero
分配方式等额积分阶梯多季积分严格过滤
女巫防护中等极强
用户满意度⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
长期留存
创新性开创者多维评估忠诚度+多季社区女巫猎人
PM 核心教训简单超预期区分深度持续激励公平≠满意

Task 2:空投积分模拟查询

核心 SQL — 模拟 Arbitrum 风格积分计算

-- 项目3.1 Task 2: 模拟空投积分计算(以 Uniswap 用户为例)
-- 假设为 Uniswap 设计新一轮空投,模拟积分分布

WITH user_activity AS (
  SELECT
    taker as user_address,
    COUNT(*) as total_trades,
    SUM(amount_usd) as total_volume,
    COUNT(DISTINCT DATE_TRUNC('month', block_time)) as active_months,
    COUNT(DISTINCT DATE_TRUNC('day', block_time)) as active_days,
    MIN(block_time) as first_trade,
    MAX(block_time) as last_trade,
    COUNT(DISTINCT token_bought_symbol) as unique_tokens,
    COUNT(DISTINCT CASE WHEN amount_usd >= 10000 THEN
      DATE_TRUNC('day', block_time) END) as large_trade_days
  FROM dex.trades
  WHERE block_time >= NOW() - INTERVAL '365' DAY
    AND project = 'uniswap'
    AND blockchain = 'ethereum'
    AND amount_usd > 0
  GROUP BY taker
),

scored AS (
  SELECT
    user_address,
    total_trades,
    total_volume,
    active_months,
    active_days,
    unique_tokens,
    -- 积分计算
    -- 交易次数积分(最多 4 分)
    CASE
      WHEN total_trades >= 100 THEN 4
      WHEN total_trades >= 25 THEN 3
      WHEN total_trades >= 10 THEN 2
      WHEN total_trades >= 4 THEN 1
      ELSE 0
    END as trade_count_score,
    -- 交易量积分(最多 4 分)
    CASE
      WHEN total_volume >= 250000 THEN 4
      WHEN total_volume >= 50000 THEN 3
      WHEN total_volume >= 10000 THEN 2
      WHEN total_volume >= 1000 THEN 1
      ELSE 0
    END as volume_score,
    -- 活跃月份积分(最多 3 分)
    CASE
      WHEN active_months >= 9 THEN 3
      WHEN active_months >= 6 THEN 2
      WHEN active_months >= 3 THEN 1
      ELSE 0
    END as consistency_score,
    -- 多样性积分(最多 2 分)
    CASE
      WHEN unique_tokens >= 10 THEN 2
      WHEN unique_tokens >= 5 THEN 1
      ELSE 0
    END as diversity_score,
    -- 早期用户加成(最多 2 分)
    CASE
      WHEN first_trade < NOW() - INTERVAL '300' DAY THEN 2
      WHEN first_trade < NOW() - INTERVAL '180' DAY THEN 1
      ELSE 0
    END as early_bonus
  FROM user_activity
)

SELECT
  trade_count_score + volume_score + consistency_score
    + diversity_score + early_bonus as total_score,
  COUNT(*) as user_count,
  ROUND(100.0 * COUNT(*) / SUM(COUNT(*)) OVER(), 2) as pct,
  ROUND(AVG(total_volume), 0) as avg_volume,
  ROUND(AVG(active_months), 1) as avg_active_months
FROM scored
WHERE trade_count_score + volume_score + consistency_score
    + diversity_score + early_bonus >= 3  -- 最低 3 分合格
GROUP BY 1
ORDER BY 1 DESC

预期积分分布

积分分布模拟:

分数   用户数    占比    预估空投
15分   ~200     0.1%    10,000 Token(最高档)
12-14  ~2,000   1%      7,500 Token
9-11   ~8,000   4%      5,000 Token
6-8    ~25,000  12%     2,500 Token
3-5    ~60,000  30%     1,000 Token(最低档)
<3分   ~105,000 53%     不合格

合格率约 47%,合格地址 ~95,000
总分配:~200M Token

积分维度权重分析:
├── 交易量贡献最大(鲸鱼优势)
├── 活跃月份区分忠实用户
├── 早期加成奖励先行者
└── 多样性防止"只买一个Token"的机器人

Task 3:完整空投方案设计

MomoSwap 空投方案(假想项目)

项目:MomoSwap(假想 DEX)
总供应:1,000,000,000 MOMO
空投分配:10%(100,000,000 MOMO)
空投价值:假设 $0.1/MOMO = $10,000,000 总价值

一、资格标准

积分系统(总计 15 分):
═══════════════════════════════════════════════════════════

A. 基础行为(最多 6 分)
   ├── 交易次数:4+ → 1分 | 10+ → 2分 | 25+ → 3分
   └── 交易量:$1K+ → 1分 | $10K+ → 2分 | $50K+ → 3分

B. 深度参与(最多 5 分)
   ├── 活跃月份:3+ → 1分 | 6+ → 2分
   ├── LP 提供:有 → 1分 | 超过 30 天 → 2分
   └── 治理参与:投过票 → 1分

C. 生态贡献(最多 4 分)
   ├── 早期用户(前 6 个月)→ 2分
   ├── 推荐新用户(链上可验证)→ 1分
   └── 社区内容贡献(链上身份绑定)→ 1分

合格门槛:≥ 3 分
═══════════════════════════════════════════════════════════

二、分配曲线

分数 → 空投数量(非线性递增,奖励深度用户):

3分 →   500 MOMO ($50)
4分 →   800 MOMO ($80)
5分 → 1,200 MOMO ($120)
6分 → 1,800 MOMO ($180)
7分 → 2,500 MOMO ($250)
8分 → 3,500 MOMO ($350)
9分 → 5,000 MOMO ($500)
10分 → 7,000 MOMO ($700)
11分 → 9,500 MOMO ($950)
12分+ → 12,000 MOMO ($1,200)

公式:tokens = 500 × 1.35^(score - 3)
特点:每多 1 分增加 35%(超线性奖励深度参与)

三、女巫防护机制

三层过滤:
═══════════════════════════════════════════════════════════

Layer 1:自动检测(剔除 ~60% 女巫)
├── 资金来源聚类:同一 CEX 提款 → 同一批转入 → 相似行为
├── 时间同步检测:多地址在 ±5 分钟内执行相同操作
├── 合约交互指纹:完全相同的合约调用序列
└── Gas 支付模式:同一地址给多个钱包转 Gas

Layer 2:社区审查(捕获 ~20% 漏网)
├── 自首窗口(2 周):自首者获 15% 空投(学 LayerZero)
├── 举报奖励:举报成功 → 获得被举报者 10% 空投
└── 争议仲裁:被举报者可申诉,DAO 投票裁决

Layer 3:链上信誉加权
├── ENS 域名持有 → 信誉 +20%
├── Gitcoin Passport 验证 → 信誉 +30%
├── 链上历史 > 1 年 → 信誉 +10%
└── 高信誉用户空投 × 信誉系数
═══════════════════════════════════════════════════════════

四、释放机制

防止即领即卖:

方案:30% 即时释放 + 70% 线性释放 6 个月

Day 0:领取 30% MOMO(立即可用)
Month 1-6:每月释放 ~11.7%

加速条件(奖励持续参与):
├── 每月交易 3 笔+ → 当月释放加速 50%
├── 提供 LP → 释放加速 100%
└── 参与治理投票 → 额外释放 5%

预期效果:
├── 减少 Day 1 卖压 70%
├── 激励空投后继续使用产品
└── 6 个月释放期 = 用户留存窗口

面试题准备

Q: 设计一个空投方案,平衡公平性和防女巫

30 秒版本: 三层设计 — (1) 多维积分:不只看交易量,加入活跃月份/LP/治理等维度,让"刷"的成本大于收益;(2) 女巫过滤:自动检测(资金聚类+时间同步)+ 社区举报 + 自首机制;(3) 释放机制:30% 即领 + 70% 线性 6 个月释放,加速条件绑定产品使用。核心原则:空投是获客工具不是慈善,必须服务于产品增长。

追问:你觉得哪个空投最成功? → 品牌效应看 Uniswap(开创者溢价),增长效果看 Blur(多季持续激励),公平性看 LayerZero(最严格过滤)。但"成功"取决于目标 — 如果目标是品牌,学 Uniswap 的简单超预期;如果是持续留存,学 Blur 的多季设计。


下一步

完成本项目后,推荐继续:

  • 项目 3.2:积分系统设计
  • 项目 3.3:LP 激励机制设计

积分系统是空投的"前置版本",理解积分设计能帮你做出更好的空投方案。