|
|
||
|---|---|---|
| __pycache__ | ||
| core | ||
| doc | ||
| sql | ||
| .cursorrules | ||
| .gitignore | ||
| QUICKSTART.md | ||
| README.md | ||
| auto_schedule.py | ||
| config.py | ||
| demo.py | ||
| huge_volume_main.py | ||
| market_data_main.py | ||
| market_monitor_main.py | ||
| metrics_config.py | ||
| monitor_schedule.py | ||
| plan.md | ||
| play.py | ||
| requirements.txt | ||
| statistics_main.py | ||
| test_connection.py | ||
| test_db_huge_volume.py | ||
| test_db_trade_data.py | ||
| test_huge_volume.py | ||
| test_k_shape.py | ||
| test_ma_cross_minimal.py | ||
| test_ma_cross_optimization.py | ||
| test_ma_cross_simple.py | ||
| test_ma_methods.py | ||
| trade_data_main.py | ||
| trade_main.py | ||
| worklog.md | ||
README.md
比特币量化交易系统
这是一个基于OKX API的比特币量化交易系统,支持多种交易策略。
功能特性
- 🔐 使用OKX官方Python SDK
- 📊 支持多种技术指标(SMA、RSI等)
- 🤖 三种量化交易策略
- 🛡️ 沙盒环境测试支持
- 📈 实时行情数据获取
- 💰 账户余额查询
- ⚙️ 可配置的交易参数
支持的策略
1. 移动平均线策略 (SMA)
- 使用短期和长期移动平均线
- 短期均线上穿长期均线时买入
- 短期均线下穿长期均线时卖出
2. RSI策略
- 基于相对强弱指数(RSI)
- RSI < 30 时买入(超卖)
- RSI > 70 时卖出(超买)
3. 网格交易策略
- 在价格区间内设置多个网格
- 价格下跌到网格线时买入
- 价格上涨到网格线时卖出
安装依赖
# 方法1:使用requirements.txt
pip install -r requirements.txt
# 方法2:手动安装
pip install okx pandas numpy
配置API密钥
-
登录 OKX官网
-
进入"账户中心" → "API管理"
-
创建新的API Key,获取以下信息:
- API Key
- Secret Key
- Passphrase
-
编辑
config.py文件,填入你的API密钥:
API_KEY = "your_actual_api_key"
SECRET_KEY = "your_actual_secret_key"
PASSPHRASE = "your_actual_passphrase"
使用方法
1. 演示版本(推荐新手)
如果你还没有OKX API密钥,可以先运行演示版本:
python demo.py
演示版本功能:
- 使用模拟数据演示策略逻辑
- 无需API密钥即可运行
- 支持策略回测和收益分析
- 适合学习和测试策略
2. 实盘版本(需要API密钥)
配置好API密钥后,运行实盘版本:
python play.py
运行后会显示菜单,你可以选择:
- 查看账户余额
- 查看当前价格
- 执行各种交易策略
- 运行策略循环
2. 策略循环运行
选择菜单中的"6. 运行策略循环",然后:
- 选择策略类型(sma/rsi/grid)
- 设置执行间隔(秒)
3. 配置交易参数
在 config.py 中可以调整:
- 交易数量
- 策略参数
- 风险控制设置
- 时间间隔
重要提醒
⚠️ 风险警告:
- 加密货币交易存在高风险
- 建议先在沙盒环境测试
- 实盘交易前请充分了解风险
- 不要投入超过承受能力的资金
🔧 技术提醒:
- 默认使用沙盒环境(
sandbox=True) - 实盘交易请将
sandbox设置为False - 确保API密钥有交易权限
- 建议设置IP白名单
文件结构
playground/
├── play.py # 主程序文件(需要API密钥)
├── demo.py # 演示版本(无需API密钥)
├── config.py # 配置文件
├── test_connection.py # API连接测试
├── requirements.txt # 依赖包列表
└── README.md # 说明文档
策略参数说明
移动平均线策略
sma_short_period: 短期均线周期(默认5)sma_long_period: 长期均线周期(默认20)
RSI策略
rsi_period: RSI计算周期(默认14)rsi_oversold: 超卖阈值(默认30)rsi_overbought: 超买阈值(默认70)
网格交易策略
grid_levels: 网格数量(默认5)grid_range: 网格范围百分比(默认2%)
常见问题
Q: 如何切换到实盘交易?
A: 在 config.py 中将 "sandbox": True 改为 "sandbox": False
Q: 如何调整交易数量?
A: 修改 config.py 中的 "position_size" 参数
Q: API调用失败怎么办?
A: 检查API密钥是否正确,网络连接是否正常,API权限是否足够
Q: 如何添加新的交易策略?
A: 在 BitcoinQuantTrader 类中添加新的策略方法,并在菜单中集成
免责声明
本软件仅供学习和研究使用,不构成投资建议。使用本软件进行交易的风险由用户自行承担。作者不对任何投资损失负责。
许可证
MIT License