Commit Graph

  • 09ecac9e56 docs(experiments): add experiment 010 - start year sensitivity analysis master aszerW 2026-06-17 23:24:17 +08:00
  • cabfee20b0 docs: add min_hold_days optimization experiment (009) aszerW 2026-06-17 19:39:38 +08:00
  • d657f8506b docs: add execution delay impact experiment (008) aszerW 2026-06-15 18:51:13 +08:00
  • 6e7087a543 docs: 添加实验007动量因子回看窗口优化研究 aszerW 2026-06-12 12:37:38 +08:00
  • 8c3ae2269a feat: 新增 slope_r2_idm 和 slope_r2_ensemble 动量因子 aszerW 2026-06-12 12:37:29 +08:00
  • 49b623931b chore: 更新SSH隧道脚本密钥路径并提交私钥文件 aszerW 2026-06-11 22:06:21 +08:00
  • fe73c0f199 refactor(rotation): simplify crash filter and add min_hold_days support aszerW 2026-06-09 22:31:26 +08:00
  • e2038ae722 chore: 修复 .env 注释格式 & 代码格式化 aszerW 2026-06-09 00:39:27 +08:00
  • 5c4aeb75d2 fix(scheduler): 修复setup_schedule未传递no_detail/no_report参数的问题 aszerW 2026-06-09 00:07:01 +08:00
  • 710f3d9d68 chore(config): 启用钉钉机器人群2配置 aszerW 2026-06-08 23:43:20 +08:00
  • 0c19e45300 chore(config): 恢复 weight 为 rank 模式 aszerW 2026-06-08 23:07:37 +08:00
  • e4bb570e5f docs: 更新 kelly 文档 commit hash aszerW 2026-06-08 23:05:39 +08:00
  • 8b7bcf206a feat(weight): 实现 Kelly 仓位权重模式 aszerW 2026-06-08 23:04:41 +08:00
  • 844e609ff7 refactor(notify): 将通知模块从归档移至正式位置 aszerW 2026-06-08 22:34:03 +08:00
  • c32ce72579 fix(report): 修复报告生成中盈亏显示缺失的多个bug aszerW 2026-06-08 08:35:31 +08:00
  • 4736b64eca feat(report): 全标的排名表新增进场日期列 aszerW 2026-06-08 00:55:59 +08:00
  • d5f35c0273 feat(report): 新增月度收益矩阵热力图面板 aszerW 2026-06-08 00:43:54 +08:00
  • 13c69c2a0b feat(report): 全标的动量排名表替代原调仓信号表 aszerW 2026-06-08 00:12:17 +08:00
  • 6a5ae8efbf fix: generate_report now uses actual position_weights from daily_records aszerW 2026-06-07 23:29:27 +08:00
  • d898ba0fd5 Revert "feat: add HTML report screenshot generation via Playwright" aszerW 2026-06-07 23:12:21 +08:00
  • f370caeff9 feat: add HTML report screenshot generation via Playwright aszerW 2026-06-07 22:43:12 +08:00
  • 06df8767b9 docs: add select_num=1 strategy deep analysis report aszerW 2026-06-07 12:26:13 +08:00
  • 7b229ced14 docs: add strategy summary snapshot (2026-06-06, ca933e4) aszerW 2026-06-06 23:59:41 +08:00
  • ca933e43e4 fix: lock position weights on rebalance only, not daily ranking changes aszerW 2026-06-06 23:16:51 +08:00
  • 8d8fd71149 feat(viewer): sort holdings cards by position weight descending aszerW 2026-06-06 22:48:40 +08:00
  • 4d9e12886f chore: remove *.html from gitignore to track all HTML files aszerW 2026-06-06 22:43:08 +08:00
  • eb3c82f05b feat(rotation): add position weight to detail JSON and viewer aszerW 2026-06-06 22:39:23 +08:00
  • 4973a9a2a5 feat(rotation): componentize position weighting + fix bond threshold consistency aszerW 2026-06-06 22:28:08 +08:00
  • 44588d5026 refactor(rotation): clean up experimental factor code aszerW 2026-06-06 18:45:11 +08:00
  • 921f84cb6a feat: 新增 standardized_slope (t-statistic) 因子并实验验证 aszerW 2026-06-06 16:40:01 +08:00
  • aff04318b1 chore: 动量因子对比调研报告移至 docs 目录 aszerW 2026-06-06 16:19:10 +08:00
  • 40853745c6 docs: 添加动量因子对比调研报告 aszerW 2026-06-06 16:16:42 +08:00
  • b564a47a1b feat: 新增slope_r2因子并切换为默认因子(年化19.84%, 夏普1.14) aszerW 2026-06-06 15:49:22 +08:00
  • 04b858ff09 feat: 添加ETF轮动策略诊断分析实验 aszerW 2026-06-06 15:00:28 +08:00
  • f3ba6eb799 docs: add momentum time window research report aszerW 2026-06-03 23:56:05 +08:00
  • 55e4cbf108 refactor(archive): move reports/ to archive/reports/ aszerW 2026-06-03 23:43:31 +08:00
  • c905230a40 refactor(archive): move unused modules to archive/ aszerW 2026-06-03 23:41:46 +08:00
  • d700bc1dfd fix(rotation): 回测导出JSON序列化NaN/Inf清洗 aszerW 2026-06-03 09:14:53 +08:00
  • 4f9e0231bd fix(datasource): yfinance时区标准化与NaN过滤修复 aszerW 2026-06-03 09:14:39 +08:00
  • 972bbbe706 fix(rotation): signal_date改用日历日前一天以捕获外盘假期数据 aszerW 2026-06-03 01:25:09 +08:00
  • 524fa5f513 refactor(rotation): 移除数据缓存 + 修复空值和pct_change警告 aszerW 2026-06-03 00:54:48 +08:00
  • d1139a9ee9 fix(http): 用requests+trust_env=False修复SSL EOF问题 aszerW 2026-06-03 00:35:49 +08:00
  • a2b4289080 revert(http): 改回串行数据获取 aszerW 2026-06-03 00:09:29 +08:00
  • e29f57749d perf(http): 并行获取数据加速数据加载 aszerW 2026-06-02 22:29:59 +08:00
  • 81045f9d85 fix(http): 用urllib3替代requests修复SSL EOF错误 aszerW 2026-06-02 22:22:36 +08:00
  • 74f0eebef0 docs(experiment): add 1-day holding deep attribution analysis (006) aszerW 2026-06-02 21:41:34 +08:00
  • 361b82fa4a docs(experiment): add holding duration distribution analysis (006) aszerW 2026-06-02 21:36:46 +08:00
  • a47af0f0eb docs(experiment): add select_num A/B/C comparison report (005) aszerW 2026-06-02 01:32:43 +08:00
  • 07d6f1451c fix(rotation): raise RuntimeError on held asset data failure aszerW 2026-06-02 01:16:44 +08:00
  • 4791d3cf40 refactor(scheduler): move daily_scheduler.py to rotation/ and add simple_rotation support aszerW 2026-06-02 01:16:34 +08:00
  • 5e11b6b690 fix(rotation): 溢价率缓存增加增量更新逻辑 aszerW 2026-06-01 23:56:18 +08:00
  • 19f1c63981 fix(rotation): 修复溢价率计算,改用Flask API真实premium_series数据 aszerW 2026-06-01 23:31:36 +08:00
  • 6d0b928894 fix(rotation): 消除前视偏差 + V2兼容detail导出 aszerW 2026-06-01 23:13:43 +08:00
  • 451ffa33d2 clean(rotation): add simple rotation strategy and remove unused files aszerW 2026-06-01 22:28:26 +08:00
  • 3b0208d7d3 docs(viewer): 添加 backtest_viewer.html 到 git 追踪 aszerW 2026-05-26 23:33:06 +08:00
  • ee2453f65e fix(rotation): 修复 backtest detail 中指数和 ETF 累计收益计算 bug aszerW 2026-05-26 23:22:26 +08:00
  • 6a86a27108 test(scripts): 新增ETF数据获取验证脚本 aszerW 2026-05-26 19:55:01 +08:00
  • 2ff48e8d56 refactor(flask_api_fetcher): 暴露adj参数,增强接口透明度和灵活性 aszerW 2026-05-26 19:54:41 +08:00
  • d404ddee17 fix(rotation): 修复ETF数据获取逻辑,分别获取指数raw和ETF hfq数据 aszerW 2026-05-26 19:54:21 +08:00
  • 7fc1170964 feat(v2): 修复跨市场因子对齐 + 添加当日收益率字段 aszerW 2026-05-26 01:04:39 +08:00
  • 537e7ccc45 feat(v2): 将导出功能内建到策略 run() 方法 aszerW 2026-05-26 01:04:20 +08:00
  • b9543f0669 chore(env): 更新 Tushare API Token aszerW 2026-05-25 23:24:08 +08:00
  • 3d9929904b config(rotation): 更新回测配置 - 关闭溢价过滤并使用最新数据 aszerW 2026-05-25 23:22:40 +08:00
  • 7844b1ebf0 fix(tushare): QDII基金溢价率计算修复 - ETF类型识别+反向偏移T+2+周末填充 aszerW 2026-05-25 22:46:08 +08:00
  • c79cde5d7f fix(tushare): 修复ETF复权qfq支持和溢价率获取 aszerW 2026-05-25 20:25:29 +08:00
  • c0195c5bca refactor(tushare): 合并ETF复权方法,消除冗余设计 aszerW 2026-05-25 19:59:49 +08:00
  • a62cfb4cd5 fix: 修复因子前向填充不生效的 bug(清理调试代码) aszerW 2026-05-25 19:16:14 +08:00
  • b8d433d519 fix: 修复因子前向填充不生效的 bug aszerW 2026-05-25 08:53:42 +08:00
  • 2f6b031361 feat: 添加因子对齐调试输出 aszerW 2026-05-25 02:45:27 +08:00
  • 0ef0623538 fix: 导出脚本因子前向填充对齐到展示日历 aszerW 2026-05-25 02:30:58 +08:00
  • 959a863b5e fix: 导出脚本因子对齐到A股日历 aszerW 2026-05-25 02:07:18 +08:00
  • b89e975aed refactor: 删除 SimpleRotationStrategy 简化版 aszerW 2026-05-25 01:33:23 +08:00
  • e8e4e9c3ac fix: GlobalRotationStrategy select_num 未生效 aszerW 2026-05-25 01:23:00 +08:00
  • 2be81ba00d feat(v2): 添加回测逐日明细导出脚本 aszerW 2026-05-25 00:39:47 +08:00
  • 6a5f50cc85 chore: 添加 FLASK_API_URL 环境变量配置 aszerW 2026-05-25 00:30:02 +08:00
  • 6749f8cf61 feat(v2): GlobalRotationStrategy 使用 CrossMarketAligner 进行数据对齐 aszerW 2026-05-25 00:29:49 +08:00
  • 798a316ad5 feat: ETF复权功能扩展至支持前复权qfq aszerW 2026-05-25 00:15:59 +08:00
  • c07974ad94 feat: 重构ETF和股票复权逻辑,抛弃pro_bar自行实现 aszerW 2026-05-25 00:06:37 +08:00
  • 7fcf63d68a docs: 添加版本对比分析脚本与配置设计文档 aszerW 2026-05-24 22:54:50 +08:00
  • 1807258176 feat(v2): 实现全球轮动策略正式版(GlobalRotationStrategy) aszerW 2026-05-24 22:54:21 +08:00
  • 94b9ef165b feat(v2): 增强框架核心功能与ETF复权修复 aszerW 2026-05-24 22:53:45 +08:00
  • 86fce7a975 fix: group 字段严格对齐 V1 market 字段值 aszerW 2026-05-24 15:00:48 +08:00
  • e6657bd2cc feat(framework_v2): 对齐 V1 配置,实现指数信号→ETF收益回测 aszerW 2026-05-24 14:58:41 +08:00
  • 43ce8056f1 docs: 添加 982fbe2 后代码变更总结文档 aszerW 2026-05-24 14:27:06 +08:00
  • 5212b004dc fix: 回测细节导出、交易日历测试和动量因子修复 aszerW 2026-05-24 14:26:35 +08:00
  • 0954458114 test(framework_v2): 添加配置系统测试和策略示例 aszerW 2026-05-24 14:26:09 +08:00
  • de988b919b feat(framework_v2): 实现 StrategyBase 抽象基类和简单轮动策略 aszerW 2026-05-24 14:25:47 +08:00
  • 341611c32b feat(framework_v2): 实现通用配置系统,支持扁平化资产池和策略分组 aszerW 2026-05-24 14:25:25 +08:00
  • 99d3584d05 docs(framework_v2): 更新 FlaskAPIFetcher 文档(API 日历集成) aszerW 2026-05-24 12:38:55 +08:00
  • b462c0520c docs(framework_v2): 添加端到端测试报告 + API 集成记录 aszerW 2026-05-24 12:38:28 +08:00
  • e7ab8a2755 feat(framework_v2): 集成交易日历 API + 端到端测试 aszerW 2026-05-24 12:38:06 +08:00
  • d07fb8de6d feat: 为 FlaskAPIDataSource 添加交易日历获取功能 aszerW 2026-05-24 12:26:35 +08:00
  • e2050e319d fix: 添加 pandas_market_calendars 依赖到 requirements.txt aszerW 2026-05-24 11:30:59 +08:00
  • 33e14b7eae fix: 添加 pydantic 依赖到 requirements.txt aszerW 2026-05-24 11:24:04 +08:00
  • 100eed455d feat: 统一交易日历为 pandas_market_calendars aszerW 2026-05-24 11:08:26 +08:00
  • 1bf91bdcd0 docs(framework_v2): 添加 FlaskAPIFetcher 文档体系 aszerW 2026-05-24 10:39:02 +08:00
  • 40116f436f feat(framework_v2): 添加 FlaskAPIFetcher 数据获取器 aszerW 2026-05-24 10:38:34 +08:00
  • 5f08e508ac docs(framework_v2): 完善文档体系 + 修复 .gitignore aszerW 2026-05-24 10:29:20 +08:00
  • a16681bda9 feat(framework_v2): 添加跨市场数据对齐器 + Pydantic Schema 验证 aszerW 2026-05-24 10:28:35 +08:00
  • 908b28473f feat(framework_v2): 创建框架V2骨架 - 三层架构+因子验证通过 aszerW 2026-05-24 09:12:29 +08:00