# 交易日志说明文档 ## 📋 日志优化内容 已优化开仓操作的日志输出,现在包含详细的计算依据和参数信息。 --- ## 🔍 实时控制台日志示例 ### 1. K线搜索日志 ``` 开始搜索上一根有效K线(实体涨幅阈值: 0.1%) 检查K线 id=1707825600: 实体涨幅=0.085% 检查K线 id=1707825300: 实体涨幅=0.156% ✓ 找到上一根有效K线: id=1707825300, 实体涨幅=0.156% ``` ### 2. 信号检测详细日志 ``` ================================================================================ 【信号检测】当前价格: 3245.67 【参考K线】上一根K线 ID: 1707825300 ├─ 开盘价: 3240.00 ├─ 收盘价: 3245.05 ├─ 实体大小: 5.0500 (0.156%) └─ 实体/3: 1.6833 【当前K线】ID: 1707825900, 开盘价: 3244.50 【触发价格】 ├─ 做多触发价 = 3244.50 + 1.6833 = 3246.18 └─ 做空触发价 = 3244.50 - 1.6833 = 3242.82 ================================================================================ ``` ### 3. 触发信号日志 #### 开多信号 ``` ✅ 触发做多信号! 当前价格 3247.50 >= 做多触发价 3246.18 超出触发价: 1.3200 (0.041%) ``` #### 开空信号 ``` ✅ 触发做空信号! 当前价格 3242.00 <= 做空触发价 3242.82 低于触发价: 0.8200 (0.025%) ``` #### 反手信号 ``` ⚠️ 持多反手做空信号! 当前价格 3241.50 <= 做空触发价 3242.82 低于触发价: 1.3200 (0.041%) ``` --- ## 📝 策略日志文件示例 日志文件位置: `bitmart/strategy_log_YYYYMMDD.txt` ### 开多日志示例 ``` ================================================================================ 时间: 2024-02-13 14:35:22 操作: 开多 参考K线: 当前K线: id=1707825900 open=3244.50 high=3248.20 low=3243.10 close=3246.80 上一根K线: id=1707825300 open=3240.00 high=3245.50 low=3239.20 close=3245.05 实体大小=5.0500 (0.156%) 实体/3=1.6833 计算参数: ├─ 实体涨幅阈值: 0.1% ├─ 当前K线开盘价: 3244.50 ├─ 上一根实体大小: 5.0500 ├─ 上一根实体/3: 1.6833 ├─ 做多触发价: 3244.50 + 1.6833 = 3246.18 └─ 做空触发价: 3244.50 - 1.6833 = 3242.82 开仓原因: 三分之一策略开多:当前价3247.50 >= 触发价3246.18 计算: 触发价 = 当前开盘3244.50 + 实体/3(1.6833) = 3246.18 超出触发价: 1.3200 (0.041%) ================================================================================ ``` ### 反手做空日志示例 ``` ================================================================================ 时间: 2024-02-13 14:38:45 操作: 反手做空 参考K线: 当前K线: id=1707826200 open=3248.00 high=3250.30 low=3241.50 close=3242.10 上一根K线: id=1707825600 open=3246.00 high=3250.80 low=3245.20 close=3250.50 实体大小=4.5000 (0.139%) 实体/3=1.5000 计算参数: ├─ 实体涨幅阈值: 0.1% ├─ 当前K线开盘价: 3248.00 ├─ 上一根实体大小: 4.5000 ├─ 上一根实体/3: 1.5000 ├─ 做多触发价: 3248.00 + 1.5000 = 3249.50 └─ 做空触发价: 3248.00 - 1.5000 = 3246.50 开仓原因: 持多反手做空:当前价3245.80 <= 触发价3246.50 计算: 触发价 = 当前开盘3248.00 - 实体/3(1.5000) = 3246.50 低于触发价: 0.7000 (0.021%) ================================================================================ ``` --- ## 📊 日志包含的关键信息 ### 1. K线选择信息 - ✅ 搜索过程(显示每根K线的实体涨幅) - ✅ 选中的K线ID和实体涨幅百分比 - ✅ 实体涨幅阈值(默认0.1%) ### 2. 计算参数 - ✅ 当前K线开盘价 - ✅ 上一根K线的开盘价、收盘价、最高价、最低价 - ✅ 上一根K线实体大小(绝对值和百分比) - ✅ 实体/3的具体数值 ### 3. 触发价格 - ✅ 做多触发价的完整计算公式 - ✅ 做空触发价的完整计算公式 - ✅ 当前价格与触发价的差值(绝对值和百分比) ### 4. 开仓原因 - ✅ 策略类型(开多/开空/反手做多/反手做空) - ✅ 当前价格 - ✅ 触发价格 - ✅ 价格差异(超出或低于触发价的幅度) --- ## 🎯 日志级别说明 | 级别 | 用途 | 示例 | |------|------|------| | `DEBUG` | K线搜索过程 | 检查每根K线的实体涨幅 | | `INFO` | 一般信息 | 找到有效K线、信号检测参数 | | `SUCCESS` | 成功操作 | 触发信号、交易执行成功 | | `WARNING` | 警告信息 | 反手信号、未找到有效K线 | | `ERROR` | 错误信息 | 交易失败、验证失败 | --- ## 💡 使用建议 1. **实时监控**: 关注控制台输出的信号检测日志,了解当前市场状态 2. **策略分析**: 查看日志文件中的详细计算参数,分析开仓时机 3. **参数优化**: 根据日志中的实体涨幅数据,调整 `min_prev_entity_pct` 阈值 4. **回测验证**: 使用日志文件中的完整信息进行策略回测和优化 --- ## 🔧 可调整参数 在代码第70行可以调整实体涨幅阈值: ```python self.min_prev_entity_pct = 0.1 # 上一根K线实体涨幅(%) ``` 建议范围: 0.05% - 0.3% - 较小值:更容易找到参考K线,但可能包含噪音 - 较大值:参考K线更有效,但可能长时间找不到 --- ## 📈 日志优化效果 | 优化项 | 优化前 | 优化后 | |--------|--------|--------| | 计算依据 | ❌ 无 | ✅ 完整显示 | | 参数信息 | ❌ 无 | ✅ 详细列出 | | K线选择过程 | ❌ 无 | ✅ 实时显示 | | 价格差异 | ❌ 无 | ✅ 绝对值+百分比 | | 日志可读性 | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ | 现在您可以清楚地看到每次开仓的完整计算过程和依据!🎉