Install
openclaw skills install binance-stat-arb-monitorBinance 统计套利监控系统。基于 ETH/BTC 永续合约价格比率计算 z-score,生成均值回归交易信号并推送到 Telegram 或飞书。 使用场景: (1) 监控统计套利机会(ETH/BTC 比率偏离均值) (2) 计算 z-score 判断开仓/平仓时机 (3) 生成交易信号(OPEN/CLOSE...
openclaw skills install binance-stat-arb-monitor统计套利(Statistical Arbitrage)监控工具,基于 Binance USDT 永续合约市场数据,监控 ETH/BTC 价格比率的偏离程度,当出现均值回归机会时生成交易信号并推送通知。
统计套利是一种基于数学模型的量化交易策略,利用资产价格的统计相关性进行套利。其核心假设是:两个相关资产的价格比率会围绕均值波动,当偏离均值时,未来有回归均值的趋势。
观察 ETH/BTC 价格比率
计算 z-score
交易信号逻辑
# 复制配置模板
cp config.example.json config.json
# 编辑配置(必须)
vim config.json
pip install -r requirements.txt
# 手动运行一次
python scripts/monitor.py
# 或设置定时任务(每5分钟检查)
*/5 * * * * cd /path/to/skill && python scripts/monitor.py >> /var/log/stat_arb.log 2>&1
# 查看最新信号
cat data/latest_signal.json
# 查看信号历史
cat data/signals.json
{
"binance": {
"base_url": "https://fapi.binance.com",
"timeout": 10
},
"strategy": {
"symbol1": "ETHUSDT",
"symbol2": "BTCUSDT",
"lookback_period": 720,
"interval": "1h",
"entry_threshold": 3.0,
"exit_threshold": 1.0,
"stop_loss": 4.5,
"min_zscore_for_signal": 2.5,
"position_size_usd": 1000
},
"notification": {
"enabled": true,
"telegram": {
"enabled": true,
"bot_token": "YOUR_BOT_TOKEN",
"chat_id": "YOUR_CHANNEL_CHAT_ID"
},
"feishu": {
"enabled": false,
"webhook_url": ""
}
},
"storage": {
"data_dir": "data",
"signals_file": "data/signals.json",
"latest_file": "data/latest_signal.json",
"log_file": "data/monitor.log"
}
}
| 配置项 | 类型 | 说明 |
|---|---|---|
binance.base_url | string | Binance API 地址(测试网:https://demo-fapi.binance.com) |
strategy.symbol1 | string | 分子交易对(ETHUSDT) |
strategy.symbol2 | string | 分母交易对(BTCUSDT) |
strategy.lookback_period | int | 历史数据点数(720 = 30天 x 24小时) |
strategy.interval | string | K线间隔(1h, 4h, 1d) |
strategy.entry_threshold | float | 开仓阈值(z-score 绝对值) |
strategy.exit_threshold | float | 平仓阈值(z-score 回归点) |
strategy.stop_loss | float | 止损阈值 |
strategy.min_zscore_for_signal | float | 最小信号阈值(避免噪音) |
notification.telegram.bot_token | string | Telegram Bot Token(@BotFather 创建) |
notification.telegram.chat_id | string | Channel Chat ID(@username_to_id_bot 获取) |
/newbot 创建新机器人将 Token 和 Chat ID 填入 config.json
{
"timestamp": "2026-03-14T19:00:00+08:00",
"signal_type": "OPEN",
"direction": "LONG_ETH_SHORT_BTC",
"zscore": -3.51,
"ratio": 0.029257,
"mean": 0.029305,
"std": 0.000315,
"threshold": {
"entry": 3.0,
"exit": 1.0,
"stop_loss": 4.5
},
"prices": {
"eth": 2063.45,
"btc": 70528.50
},
"recommendation": {
"action": "LONG ETH-PERP + SHORT BTC-PERP",
"eth_entry": 2063.45,
"btc_entry": 70528.50,
"position_size_usd": 1000
},
"estimate": {
"expected_return": 0.00118,
"fees_taker": 0.00140,
"net_pnl": -0.00022
},
"strength": 4,
"volatility": "normal"
}
🟢 [OPEN] 统计套利开仓信号
ETH/BTC z-score: -3.51 (偏低,均值回归概率大)
比率: 0.029257 (均值: 0.029305)
动态阈值: 开仓 ±3.00 / 止损 ±4.50
z波动率: 0.65 正常
建议操作:
• LONG ETH-PERP (市价) @ ~$2,063.45
• SHORT BTC-PERP (市价) @ ~$70,528.50
预估 (每腿 $1000):
预期利润: $1.18 (0.118%)
手续费: $1.40 (taker x4)
净利润: $-0.22
信号强度: ★★★★☆
⚠️ 重要风险提示
| Endpoint | 说明 | 认证 |
|---|---|---|
/fapi/v1/ticker/price | 当前价格 | 否 |
/fapi/v1/klines | K线数据 | 否 |
/fapi/v1/premiumIndex | 资金费率 | 否 |
/fapi/v1/fundingRate | 资金费率历史 | 否 |
/fapi/v1/openInterest | 未平仓合约 | 否 |
/fapi/v1/ticker/24hr | 24小时行情 | 否 |
详细文档:https://binance-docs.github.io/apidocs/futures/cn/
binance-stat-arb-monitor/
├── SKILL.md # 本文档
├── config.example.json # 配置模板
├── config.json # 运行时配置(不提交)
├── requirements.txt # Python 依赖
├── scripts/
│ ├── __init__.py
│ ├── monitor.py # 主入口
│ ├── fetcher.py # Binance API 获取
│ ├── calculator.py # z-score 计算
│ ├── formatter.py # 消息格式化
│ └── notifier.py # 通知推送
├── references/
│ ├── stat_arb_theory.md # 策略理论
│ └── binance_api.md # API 参考
└── data/
├── signals.json # 信号历史
├── latest_signal.json # 最新信号
└── monitor.log # 运行日志