# 期货市场研究算法库 ## 概述 本目录包含期货市场的各种研究算法和分析工具,用于量化分析期货市场的技术指标、价格走势和交易策略。所有代码基于聚宽API开发,适用于聚宽在线研究平台。 ## 算法文件结构 ### 1. 期货多均线穿越分析 (`future_ma_cross_analysis.py`) #### 功能描述 分析期货合约的多均线穿越事件,识别同时穿越至少3条均线的K线,并分析后续收益表现。 #### 主要特点 - **多均线系统**: 使用MA5、MA10、MA20、MA30四条移动平均线 - **穿越识别**: 精确判断K线实体上穿或下穿至少3条均线 - **后续跟踪**: 分析穿越后5日、10日、20日、30日的收益率表现 - **批量处理**: 自动分析所有期货主力合约 #### 核心算法 ```python def check_multi_ma_cross(row): """检查单日K线是否向上或向下穿越了至少3条均线""" # 条件:开盘价在均线一侧,收盘价在均线另一侧 # 上穿:开盘价 < 均线 且 收盘价 > 均线 # 下穿:开盘价 > 均线 且 收盘价 < 均线 ``` #### 输出结果 - CSV文件:包含所有穿越事件的详细信息和后续收益率 - 统计报告:穿越方向分布、收益率统计、品种统计等 ### 2. 期货市场整体变化趋势分析 (`future_all_change_trend.py`) #### 功能描述 分析期货市场整体的价格变化趋势,计算每日市场平均变化率和正负变化分布。 #### 主要特点 - **市场全貌**: 分析所有期货品种的价格变化 - **趋势识别**: 计算滚动平均值识别市场趋势 - **异常检测**: 使用标准差检测异常市场波动 - **可视化**: 生成趋势图表展示市场变化规律 #### 核心算法 ```python def process_data(df, std_dev_multiplier=3): """处理数据并过滤异常值""" # 计算每日平均变化率 # 统计正负变化数量 # 计算滚动平均值 # 过滤异常值 ``` #### 输出结果 - 每日市场平均变化率 - 正负变化品种数量统计 - 滚动平均值和趋势图表 - 异常市场行为检测报告 ### 3. 期货技术形态规律分析 (`future_pattern_comprehensive.py`) #### 功能描述 **核心研究项目** - 研究期货品种在大幅下跌后出现特定K线形态的规律,并分析后续走势表现。这是一个综合性的技术形态分析工具。 #### 主要特点 - **全自动化**: 从数据获取到结果输出全程自动化 - **多维度筛选**: 结合回撤、K线形态、时间位置等条件 - **量化验证**: 通过10周跟踪验证形态有效性 - **可视化展示**: 自动生成K线图标记技术形态 - **综合集成**: 单文件包含配置、分析、测试全部功能 #### 文件结构 ``` 第一部分:分析配置参数 (AnalysisConfig类) 第二部分:技术形态分析器主类 (FuturePatternAnalyzer类) 第三部分:测试和演示代码 (PatternAnalysisTests类) 第四部分:主程序入口 (main函数) ``` #### 分析流程 1. **构建期货品种数据**: 创建80+个期货品种的8888主连合约代码 2. **筛选大幅下跌品种**: 识别最大回撤>30%的期货品种 3. **获取主力合约映射**: 获取下跌期间的主力合约变化 4. **获取周线K线数据**: 扩展时间范围的周线OHLCV数据 5. **识别目标K线形态**: 十字星+长上影线组合形态识别 6. **分析后续10周走势**: 量化跟踪后续收益率表现 7. **生成可视化图表**: K线图展示和统计报告 8. **保存分析结果**: 完整的CSV数据文件输出 #### 技术形态条件 - **条件A**: 开盘价与收盘价差异 ≤ 1% (十字星特征) - **条件B**: 最高价相对开盘价涨幅 ≥ 3% (长上影线特征) - **位置条件**: 形态出现在大幅下跌期间或附近 #### 配置参数 ```python # 时间设置 START_DATE = '2022-01-01' # 建议至少2年数据 END_DATE = '2024-12-31' # 筛选条件 MIN_DRAWDOWN_THRESHOLD = 0.30 # 30%最小回撤 KLINE_CONDITIONS = { 'max_open_close_diff': 0.01, # 1%开收差异 'min_high_open_gain': 0.03, # 3%最高涨幅 } # 分析参数 FOLLOW_UP_WEEKS = 10 # 后续跟踪10周 SUCCESS_RETURN_THRESHOLD = 0.05 # 5%成功率阈值 ``` #### 支持的期货品种 - **大商所(XDCE)**: A、B、C、I、J、JM、L、M、P、PP、V、Y等 - **郑商所(XZCE)**: AP、CF、FG、MA、RM、SR、TA、ZC等 - **上期所(XSGE)**: AG、AL、AU、CU、RB、RU、ZN等 - **中金所(CCFX)**: IC、IF、IH、T、TF、TS - **广期所(GFEX)**: SI、LC - **上海国际能源(XINE)**: SC、BC、LU、NR #### 使用方法 ```python # 基本使用 - 完整分析 results = run_pattern_analysis(mode='full') # 快速测试 results = run_pattern_analysis(mode='quick') # 自定义参数测试 results = run_pattern_analysis(mode='custom') # 逐步功能测试 run_pattern_analysis(mode='step') # 直接使用分析器类 analyzer = FuturePatternAnalyzer('2022-01-01', '2024-12-31') results = analyzer.run_full_analysis() ``` #### 输出文件 - `future_major_decline_YYYYMMDD_HHMMSS.csv` - 大幅下跌期货品种 - `future_kline_patterns_YYYYMMDD_HHMMSS.csv` - 识别的K线形态 - `future_pattern_performance_YYYYMMDD_HHMMSS.csv` - 后续走势分析 - `future_pattern_summary_YYYYMMDD_HHMMSS.csv` - 统计汇总 - `kline_pattern_{品种}_{日期}.png` - K线图表 #### 性能统计示例 ``` === 期货技术形态规律分析报告 === 总分析期货品种数: 85 大幅下跌品种数: 12 识别出的目标形态数: 8 完成后续走势分析数: 8 === 后续走势统计分析 === 10周内最高收益率统计: 平均值: 15.32% 正收益比例: 7/8 (87.5%) === 交易成功率分析 === 成功率: 75.0% ``` ## 技术架构 ### 数据源 - **聚宽API**: 使用jqdata获取期货价格数据 - **数据频率**: 支持日线和周线数据 - **数据字段**: OHLCV (开高低收量) ### 核心库依赖 ```python import pandas as pd # 数据处理 import numpy as np # 数值计算 from jqdata import * # 聚宽API import matplotlib.pyplot as plt # 图表绘制 ``` ### 代码规范 - **函数命名**: 使用下划线分隔的描述性命名 - **类设计**: 面向对象设计,功能模块化 - **错误处理**: 完善的异常捕获和日志记录 - **配置管理**: 集中的参数配置和管理 - **文档注释**: 详细的函数和类文档字符串 ## 使用建议 ### 1. 运行环境 - **推荐平台**: 聚宽在线研究环境 - **Python版本**: Python 3.6+ - **内存要求**: 建议至少2GB内存 - **数据权限**: 需要聚宽期货数据访问权限 ### 2. 最佳实践 - **时间范围**: 建议使用至少2年的历史数据进行分析 - **品种选择**: 可通过配置文件筛选活跃品种 - **参数调优**: 根据研究目标调整筛选阈值 - **结果验证**: 结合基本面分析验证技术分析结果 ### 3. 性能优化 - **批量处理**: 使用并行处理提升大规模数据分析速度 - **内存管理**: 及时释放不需要的数据对象 - **缓存策略**: 对重复查询的数据进行缓存 - **测试模式**: 使用测试模式快速验证算法逻辑 ## 更新日志 ### v1.3 (2025-09) - **重构**: 将期货技术形态分析整合为单一综合文件 - **优化**: 改进代码结构,增强在线平台适配性 - **新增**: 添加多种测试模式和配置选项 - **完善**: 统一的README文档和算法说明 ### v1.2 (2025-06) - **新增**: 期货技术形态规律分析算法 - **扩展**: 支持更多期货品种和交易所 - **优化**: 改进可视化效果和报告格式 ### v1.1 (2024-12) - **新增**: 多均线穿越分析功能 - **优化**: 改进数据处理效率 - **修复**: 修复部分品种数据获取问题 ### v1.0 (2024-06) - **初始版本**: 基础的期货市场趋势分析 - **核心功能**: 市场整体变化趋势分析 ## 研究成果 ### 学术价值 - 提供了期货市场技术分析的量化研究框架 - 验证了特定K线形态在期货市场的有效性 - 建立了系统性的期货品种分析方法论 ### 实用价值 - 为量化交易策略提供技术分析工具 - 辅助投资决策和风险管理 - 支持期货市场的深度研究和分析 ### 未来发展 - 集成机器学习模型提升预测准确性 - 扩展更多技术指标和形态识别 - 建立实时分析和预警系统 - 开发策略回测和评估框架 --- **维护团队**: jukuan研究团队 **最后更新**: 2025年9月 **技术支持**: 基于聚宽平台开发,需要相应API权限 **使用许可**: 仅供研究和学习使用