This website requires JavaScript.
Explore
Help
Register
Sign In
sanguo
/
sanguo_vnpy_v2
Watch
3
Star
0
Fork
0
You've already forked sanguo_vnpy_v2
Code
Issues
3
Pull Requests
Actions
Packages
Projects
Releases
Wiki
Activity
Files
aa7e7b8eba45a8996db65c6026bb7905ba52ced7
sanguo_vnpy_v2
/
sanguo_portfolio
T
History
claude_dev
3b3f7d689c
CI/CD / test (push)
Successful in 17s
Details
CI/CD / nas-deploy (push)
Successful in 11s
Details
CI/CD / nas-verify (push)
Successful in 12s
Details
fix(provider): value ROE 配对改公共报告期交集治财报季 vintage 错位清仓——09-01 09:32 value_selection_ex 月度窗口 L3=0 全清仓实锤:roe_series 构建=income/balance 各自 latest-4 再硬 REPORT_DATE 匹配,财报季一表领先一季(balance 已带 2026 中报而 income 未刷新,ak-quarter 马拉松 09:32 时 94%/0% 撕裂)两窗错开一格只交 3 期→策略 len>=4 全体不过→821 只零候选→卖 600276/603288 共 1.23 万股趴 483k 现金;修=两表各取 2 倍缓冲→REPORT_DATE 公共交集回最近 4 季(同季重述取最新 notice),策略层 len>=4 契约不变,原版+_ex 同受益;+3 回归(领先一季仍满 4 期/领先季绝不跨季错配/对齐两表语义不变);538 绿 [vps]
2026-09-01 18:59:32 +08:00
..
factors
feat(portfolio): sanguo_portfolio 组合策略框架(BulletTrade+miniQMT,不用jqdatasdk)
2026-07-18 19:08:18 +08:00
providers
fix(provider): value ROE 配对改公共报告期交集治财报季 vintage 错位清仓——09-01 09:32 value_selection_ex 月度窗口 L3=0 全清仓实锤:roe_series 构建=income/balance 各自 latest-4 再硬 REPORT_DATE 匹配,财报季一表领先一季(balance 已带 2026 中报而 income 未刷新,ak-quarter 马拉松 09:32 时 94%/0% 撕裂)两窗错开一格只交 3 期→策略 len>=4 全体不过→821 只零候选→卖 600276/603288 共 1.23 万股趴 483k 现金;修=两表各取 2 倍缓冲→REPORT_DATE 公共交集回最近 4 季(同季重述取最新 notice),策略层 len>=4 契约不变,原版+_ex 同受益;+3 回归(领先一季仍满 4 期/领先季绝不跨季错配/对齐两表语义不变);538 绿 [vps]
2026-09-01 18:59:32 +08:00
strategies
fix(live): day_count隔日恢复+1双计修正(落盘值已含自增,恢复直取saved_count) [vps]
2026-08-30 11:54:03 +08:00
__init__.py
feat(portfolio): 移植3聚宽策略到BulletTrade + 8bug修正 + 数据缺口文档
2026-07-28 22:20:49 +08:00
filters.py
feat(portfolio): B fundamentals批量 + C涨跌停filter修复(get_limit_status_batch接入)
2026-07-30 07:37:03 +08:00
live_instance_ledger.py
fix(live): 迟到成交对账根因修——引擎16s超时弃跟踪后迟到fill永不进engine.get_trades(08-25幻影500+700股/-18060不自愈):a窄修=下单返回非终态挂进程内待对账名单,归因轮询按券商订单号直查QMT原始成交行(broker.get_trades,绕开引擎视图)见一笔记一笔,终态出名单/隔夜出清;b宽修=15:05 EOD全量对账(QMT当日成交vs live_trades,trade_id或时间+代码+方向+价+量五元组对齐,缺失补插带eod:前缀),赶在15:10恒等式前收敛;三路径同一deal_no幂等;新增live_reconcile模块+账本seen_trade_ids快照,适配器_done挂钩孤立加载已验,21新测试+全量1100绿(9红=test_live_api前后端session既有) [vps]
2026-08-25 23:56:29 +08:00
live_portfolio_proxy.py
feat(portfolio): B2定寸虚拟化InstancePortfolio代理——策略决策层脱离全账户污染(spec§B2+A2清单issue#29)——①live_portfolio_proxy:InstanceContextProxy(portfolio→账本视图,其余属性透传真context,property+__getattr__实现)+InstancePortfolio(每次访问现算)②覆盖A2清单全集:available_cash/cash=账本现金(168万/只定寸污染根治点,.cash fallback同源);positions=账本jq对象(total_amount/amount/closeable_amount(T+1)/avg_cost(台账口径=成交价)/cost_basis/security)+price/last_sale_price从真portfolio同名标的透传(市场数据非所有权,缺→None止损跳过);value/market_value/total_value=现价×量(缺价→0偏保守不误卖);total_value/positions_value=账本equity(现价优先成本兜底);locked_cash=0③清单外属性AttributeError fail-fast(真值=全账户数字,静默透传=污染复发,宁可崩=A1同款house style)④wrap_scheduler包装facade的run_daily/run_monthly(发生在策略initialize注册任务之前,策略代码零改动);functools.wraps保任务名;无账本原样返回=回测/影子零改动⑤live_strategy._setup接线(_ledger None→wrap直通);引擎内部撮合/风控仍看真实账户;+13测试(定寸现金/T+1/现价透传/缺价保守/equity兜底/fail-fast/调度代理注入/无账本零改动/_setup接线两态);portfolio 373绿 [vps]
2026-08-19 22:37:16 +08:00
live_reconcile.py
fix(live): 废单告警补第二肢治柜台级拒单盲区——08-31 T+1探针实锤:柜台拒单不进QMT当日订单API(query_stock_orders 15笔全SUCCEEDED不含被拒卖单),订单状态永停非终态,原告警等柜台报rejected结构性等不到;新肢=当日自提交订单EOD仍非终态且零成交→疑似废单(提交侧自证,不依赖QMT报状态;正常撤单已到终态不计,部分成交残量仍归守恒管);两肢合并入rejected_orders带why字段区分;+2测试(疑似单命中/撤单与跨日不误报);全量1368绿 [vps]
2026-09-01 12:17:08 +08:00
live_strategy.py
fix(live): 迟到成交对账根因修——引擎16s超时弃跟踪后迟到fill永不进engine.get_trades(08-25幻影500+700股/-18060不自愈):a窄修=下单返回非终态挂进程内待对账名单,归因轮询按券商订单号直查QMT原始成交行(broker.get_trades,绕开引擎视图)见一笔记一笔,终态出名单/隔夜出清;b宽修=15:05 EOD全量对账(QMT当日成交vs live_trades,trade_id或时间+代码+方向+价+量五元组对齐,缺失补插带eod:前缀),赶在15:10恒等式前收敛;三路径同一deal_no幂等;新增live_reconcile模块+账本seen_trade_ids快照,适配器_done挂钩孤立加载已验,21新测试+全量1100绿(9红=test_live_api前后端session既有) [vps]
2026-08-25 23:56:29 +08:00
runner_backtest.py
fix(portfolio): 实盘/影子引擎重启后定时任务全丢根治——process_initialize+facade注入run_daily [vps]
2026-08-17 11:52:26 +08:00
runner_live.py
fix(live): 部署滚动重启QMT会话竞态根治双层——P1 runner_live connect退避重试5×10s(08-30实录live_17/20重拉后connect=-1整引擎退出静默缺仓,会话回收秒级重试即免疫,失败清理QmtBroker自带重试安全)+P0 重启脚本杀后等30s会话回收+引擎数核验追平杀前DB期望追不平exit 1红灯(vps_count_engines.py经promote部署,expected须杀前取);VPS实测双模式6/6;全量1359绿 [vps]
2026-08-30 12:46:48 +08:00