CMC Kline Data Collector Skill
从 CoinMarketCap 获取 ETH/SOL/BNB 等加密货币的历史 K 线数据,自动计算 EMA7、EMA30、RSI14 等技术指标,输出标准化 JSON 格式。
使用方法
在对话中使用
CODEBLOCK0
CODEBLOCK1
CODEBLOCK2
编程调用
CODEBLOCK3
输出格式
CODEBLOCK4
字段说明:
- -
O - Open(开盘价) - INLINECODE1 - High(最高价)
- INLINECODE2 - Low(最低价)
- INLINECODE3 - Close(收盘价)
- INLINECODE4 - EMA 7(7 日指数移动平均)
- INLINECODE5 - EMA 30(30 日指数移动平均)
- INLINECODE6 - RSI 14(14 日相对强弱指数)
- INLINECODE7 - Date(日期,MMDD 格式)
配置
编辑 config.py 修改币种和 API 设置:
CODEBLOCK5
依赖
CODEBLOCK6
原项目位置
原始 crypto-data-processor 项目保留在:
INLINECODE10
本 Skill 名称: INLINECODE11
包括:
- - 完整源代码
- crontab 定时任务配置
- 输出目录
- README 文档
与定时任务集成
原项目的 crontab 配置保持不变:
CODEBLOCK7
注意事项
- 1. 数据需求:需要至少 35 天历史数据来计算指标(30 天 EMA + 7 天输出)
- API 限制:CMC 公开 API 无速率限制,但建议不要高频调用
- 时区:CMC 返回 UTC 时间,日期格式为 MMDD(如 0309=3 月 9 日)
技能名称: cmc-kline-data-collector
详细描述:
CMC K线数据采集技能
从 CoinMarketCap 获取 ETH/SOL/BNB 等加密货币的历史K线数据,自动计算EMA7、EMA30、RSI14等技术指标,输出标准化JSON格式。
使用方法
在对话中使用
获取 ETH 最近 7 天的 K 线数据
生成 ETH/SOL/BNB 的每日指标数据
输出 BTC 历史数据到 JSON 文件
编程调用
python
from skills.cryptodataprocessor import CryptoDataProcessor
创建处理器
processor = CryptoDataProcessor()
获取单个币种数据
eth
data = processor.fetchsymbol(ETH, days=30)
获取多个币种数据
all
data = processor.fetchall([ETH, SOL, BNB])
保存为 JSON
processor.save
json(alldata, /path/to/output.json)
保存为 CSV
processor.save
csv(ethdata, eth_kline.csv)
输出格式
json
{
ETH: [
{O:2027.41,H:2040.79,L:1930.4,C:1982.77,E7:1976.66,E30:2115.05,R14:43.71,D:0303},
{O:1982.71,H:2198.66,L:1946.04,C:2126.51,E7:2014.12,E30:2115.79,R14:52.1,D:0304}
],
SOL: [...],
BNB: [...]
}
字段说明:
- - O - 开盘价
- H - 最高价
- L - 最低价
- C - 收盘价
- E7 - 7日指数移动平均
- E30 - 30日指数移动平均
- R14 - 14日相对强弱指数
- D - 日期(MMDD格式)
配置
编辑 config.py 修改币种和API设置:
python
币种ID映射(CoinMarketCap ID)
SYMBOL
TOID = {
BTC: 1,
ETH: 1027,
BNB: 1839,
SOL: 5426,
# 添加更多...
}
计价货币(2781=USD)
CONVERT_ID = 2781
输出目录
OUTPUT_DIR = /home/admin/.openclaw/workspace/crypto-data-processor/output
依赖
bash
pip install requests
原项目位置
原始 crypto-data-processor 项目保留在:
/home/admin/.openclaw/workspace/crypto-data-processor/
本技能名称:cmc-kline-data-collector
包括:
- - 完整源代码
- crontab定时任务配置
- 输出目录
- README文档
与定时任务集成
原项目的crontab配置保持不变:
bash
每天9:00自动执行
0 9
* cd /home/admin/.openclaw/workspace/crypto-data-processor && python scripts/daily
kline.py --output /home/admin/.openclaw/workspace/crypto-data-processor/output/daily$(date +\%Y\%m\%d).json
注意事项
- 1. 数据需求:需要至少35天历史数据来计算指标(30天EMA + 7天输出)
- API限制:CMC公开API无速率限制,但建议不要高频调用
- 时区:CMC返回UTC时间,日期格式为MMDD(如0309=3月9日)