刷量机器人简介
XBlade Studio 多层刷量机器人系统 - 用于生成真实化的交易量和市场数据。
概述
刷量机器人(Wash Trading Bot)通过多账户分层策略,模拟真实用户的交易行为,为平台生成交易量数据。系统采用智能化的账户分层和交易对权重配置,确保交易行为自然化。
核心特性
🎯 多层账户策略
系统支持两层账户分层,模拟不同类型的交易者:
1. 活跃账户 (Active Accounts)
- 账户数量: 30个
- 交易金额: 每笔 200,000 USD (50x杠杆)
- 交易频率: 每分钟 3 笔
- 交易对轮换: 是(BTC/ETH/SOL 按权重轮流)
- 模拟角色: 高频散户交易者
- 预计日交易量: ~$7.0M
2. 半活跃账户 (Half-Active Accounts)
- 账户数量: 60个
- 交易金额: 每笔 150,000 USD (50x杠杆)
- 交易频率: 每分钟 1 笔
- 交易对轮换: 是(BTC/ETH/SOL 按权重轮流)
- 模拟角色: 普通投资者
- 预计日交易量: ~$2.9M
📊 交易对权重配置
为了模拟真实市场,不同交易对有不同的交易量权重:
交易对权重配置:
- BTCUSDT: 100% (基准)
- ETHUSDT: 50% (BTC的一半)
- SOLUSDT: 25% (ETH的一半)
实际交易金额会根据权重自动调整,例如:
- BTC: 200,000 USD × 100% = 200,000 USD
- ETH: 200,000 USD × 50% = 100,000 USD
- SOL: 200,000 USD × 25% = 50,000 USD
🎨 Wash Trade 机制
核心流程:
- 随机选择两个账户(账户A 和 账户B)
- 随机选择交易方向(买/卖)
- 账户A 下限价单(Maker)
- 账户B 立即下反向限价单(Taker)匹配成交
- 清理所有未成交订单
- 重复循环
优势:
- ✅ 双账户对倒,无净持仓
- ✅ 立即取消未成交订单,减少资金冻结
- ✅ 快速成交,高周转率
- ✅ 模拟真实交易行为
🔌 API 接口调用
刷量机器人通过以下核心API接口实现交易功能:
认证接口
- 登录认证:
POST /api/v1/auth/login- 使用 EIP-712 签名登录 - 获取 Nonce:
GET /api/v1/auth/nonce/{address}- 获取登录随机数
交易接口
- 下单:
POST /api/v1/orders- 下限价单或市价单 - 批量取消:
POST /api/v1/orders/batch- 批量取消未成交订单
账户接口
- 查询余额:
GET /api/v1/account/balances- 获取账户余额 - 查询挂单:
GET /api/v1/account/orders- 获取当前挂单 - 查询持仓:
GET /api/v1/account/positions- 获取当前持仓
调用流程
# 1. 登录认证
client.login()
# 2. 账户A下买单
order1 = client.place_order(
symbol="BTCUSDT",
side="BUY",
type="LIMIT",
quantity="0.001",
price="100000.00",
leverage=50
)
# 3. 账户B下卖单(立即成交)
order2 = client.place_order(
symbol="BTCUSDT",
side="SELL",
type="LIMIT",
quantity="0.001",
price="100000.00",
leverage=50
)
# 4. 清理未成交订单
client.cancel_all_orders("BTCUSDT")
详细API文档: 查看 API 接口详解 了解完整的接口说明和签名方法。
日交易量计算
活跃账户: 30 × 200,000 × 3/min × 1440min × 3对 × 权重 = ~$7.0M
半活跃账户: 60 × 150,000 × 1/min × 1440min × 3对 × 权重 = ~$2.9M
───────────────────────────────────────────────────────────
总计预计: ~$9.9M/天
限额目标: $15,000,000 (15M)
达成率: 66% (可通过调整参数达到100%)
智能限额控制
机器人内置交易量监控机制:
- 每分钟自动查询当日交易量
- 达到 15M 限额自动停止
- 防止超额交易
# 监控代码示例
if total_volume >= 15000000:
logger.warning("今日交易量已达标,停止机器人")
self.running = False
技术架构
文件结构
XBlade_maker_bot/
├── multi_tier_bot_simple.py # 简化版分层刷量机器人 ⭐
├── data/
│ ├── active.csv # 30个活跃账户配置
│ └── half-active.csv # 60个半活跃账户配置
├── src/
│ ├── clients/
│ │ ├── renance_client.py # Renance API 客户端
│ │ └── hyperliquid_client.py # 价格数据源
│ └── core/
│ └── config.py # 配置管理
└── tools/
└── query_volume.py # 交易量查询工具
核心类:SimplifiedMultiTierBot
主要方法:
| 方法 | 功能 |
|---|---|
__init__() | 初始化机器人,加载账户配置 |
_load_accounts() | 从CSV文件加载账户 |
_calculate_daily_volume() | 计算预期日交易量 |
execute_wash_trade() | 执行wash trade |
run_tier() | 运行特定层级的交易线程 |
monitor_volume() | 监控总交易量 |
run() | 启动所有交易线程 |
使用指南
1. 环境准备
# 安装依赖
pip install -r requirements.txt
# 配置账户(编辑CSV文件)
vim data/active.csv
vim data/half-active.csv
2. 账户充值
# 批量充值活跃账户
python3 tools/batch_deposit.py data/active.csv --amount 200
# 批量充值半活跃账户
python3 tools/batch_deposit.py data/half-active.csv --amount 150
3. 启动机器人
# 使用启动脚本
./start_multi_tier.sh
# 或直接运行
python3 multi_tier_bot_simple.py
4. 监控运行
# 查看实时日志
tail -f bot.log | grep "✅"
# 查询今日交易量
python3 tools/query_volume.py --today
# 查看资金状态
python3 tools/check_balances.py
5. 停止机器人
# 优雅停止(Ctrl+C)
# 或达到限额自动停止
配置调整
修改交易金额
编辑 multi_tier_bot_simple.py 第 58-69 行:
self.strategies = {
'active': {
'trade_amount_usd': 200000, # 调整此值
'trades_per_minute': 3,
},
'half_active': {
'trade_amount_usd': 150000, # 调整此值
'trades_per_minute': 1,
}
}
修改交易频率
调整 trades_per_minute 参数:
- 增加频率 → 更多交易量
- 降低频率 → 更少交易量
修改交易对权重
编辑第 73-77 行:
self.symbol_weights = {
'BTCUSDT': 1.0, # 100%
'ETHUSDT': 0.5, # 50%
'SOLUSDT': 0.25, # 25%
}
监控指标
关键指标
| 指标 | 说明 | 目标值 |
|---|---|---|
| 每分钟交易笔数 | 活跃(3) + 半活跃(1) × 账户数 | ~90-120笔 |
| 每小时交易量 | 实时累计 | ~$400K-500K |
| 每日交易量 | 24小时累计 | $10M-15M |
| 资金冻结率 | 账户资金利用率 | < 60% |
| 持仓情况 | wash trade不应积累持仓 | 接近0 |
日志示例
✅ [活跃账户] BTCUSDT $200,000 (权重:100%)
✅ [半活跃账户] ETHUSDT $75,000 (权重:50%)
✅ [活跃账户] SOLUSDT $50,000 (权重:25%)
📊 当前今日交易量: $5,234,567.89 / $15,000,000 (进度: 34.90%)
故障处理
常见问题
Q: 余额不足错误?
# 检查账户余额
python3 tools/check_balances.py
# 批量充值
python3 tools/batch_deposit.py data/active.csv --amount 200
Q: 交易量未达标?
- 增加
trade_amount_usd - 增加
trades_per_minute - 检查账户是否有足够余额
Q: 资金冻结率过高?
# 清理所有订单
python3 tools/clean_open_orders.py
# 检查持仓
python3 tools/check_positions.py
Q: 机器人意外停止?
- 查看日志:
tail -f bot.log - 检查网络连接
- 验证API密钥有效性
紧急操作
# 清理所有订单
python3 tools/emergency_cleanup.py
# 平掉所有持仓
python3 tools/close_all_positions.py
性能优化
资金效率优化
- 使用杠杆: 50x杠杆减少资金占用
- 快速清理: 立即取消未成交订单
- 智能分配: 不同账户负责不同交易对
交易量优化
- 权重配置: 根据市场需求调整交易对权重
- 分层策略: 活跃/半活跃账户差异化
- 限额控制: 自动停止防止超额
安全注意事项
⚠️ 重要提示:
- 仅限测试环境: 严禁在生产环境使用
- API密钥安全: 妥善保管
.env文件 - 资金管理: 定期检查账户余额和 持仓
- 监控告警: 设置交易量和资金异常告警
- 合规使用: 遵守相关法律法规