Back to skills
extension
Category: Data & AnalyticsNo API key required

A股交易复盘审计

读取并脱敏用户提供的A股历史成交记录,重建完整交易回合,对照持有区间的大盘、行业与个股表现,分开评价操作过程和盈利结果,输出证据等级、原因码、个人历史百分位及复盘报告。支持账户汇总勾稽、TWR、受约束XIRR和最大回撤门禁;证据不足时保持NOT_RATED。仅复盘已发生交易,不提供当前个股买卖建议。

personAuthor: u_8164a18bhubenterprise

A股复盘审计

把已发生的交易记录转成可复核的过程审计和结果比较。始终将操作质量与盈利结果分开,不把一次赚钱自动判断为操作正确。当前公开版本免费使用,全部分析在用户本机完成,不要求支付、API Key、券商连接或商户服务。

免费使用与本地边界

运行前确认:

  1. 原始交易文件只在本机读取和处理;不要上传姓名、资金/证券/股东账号、身份证、银行卡、手机号、验证码、密码或 API 密钥。
  2. 原始交易文件必须先通过本机预检,待分析的 review_input.json 必须通过输入校验;失败时停止评分,不猜测补齐。
  3. 行情证据应记录来源、时间和口径;缺失或无法核验的字段保持 nullNOT_RATEDBLOCKED_EVIDENCE
  4. 当前版本不连接券商、不读取实时账户、不调用 QMT、不执行交易,也不生成当前股票的买卖建议。

不要把任何账户身份字段、密码、验证码、API Key、Token、私钥或原始敏感文件内容写入对话、报告或日志。

快速入口

用户尚未上传记录时,给出 assets/trade-record-template.csv,并提示优先删除姓名、资金/证券/股东账号、身份证、银行卡、手机号、验证码、密码和 API 密钥。

如果用户还要账户收益率、账户盈亏和最大回撤,同时给出:

不要把“没提供资金流水”当成“期间没有资金流水”。没有转入转出时,也要求用户提交只有表头的空流水表。

只在测试时使用 assets/synthetic-trade-record-example.csvsynthetic-review-input-example.json;其 SYNTHETIC_TEST 标记必须贯穿报告,不得当成真实成交证明。

用户已经上传文件时,直接检查,不要求重复填写文件里已有信息。支持 CSV、JSON;运行时具备 openpyxl 时也支持 XLSX。读取详细字段前先看 references/input-contract.md

固定工作流

  1. 列出本次明确提供的文件、日期范围和隐私边界。

  2. 对原始交易文件运行预检:

    python3 "$SKILL_DIR/scripts/preflight_trade_input.py" TRADE_FILE --out-dir OUTPUT_DIR/preflight
    
  3. 如果 preflight.status=BLOCKED,停止评分,逐项报告缺失、重复、敏感字段、T+1 冲突或不完整回合;不要猜测修复。

    • 只有用户明确指定并授权排除源行时,才可运行 scripts/apply_trade_exclusions.py;必须保留 exclusion_manifest.json,不得自动选择或静默删除记录。
  4. 如果用户提供账户汇总,或资产快照和外部资金流水,先读取 references/account-performance-methodology.mdreferences/metric-dictionary.md

    只有四项汇总时运行:

    python3 "$SKILL_DIR/scripts/analyze_account_performance.py" \
      --summary ACCOUNT_SUMMARY.json \
      --out-dir OUTPUT_DIR/account
    

    四项汇总只核对 期末资产 = 期初资产 + 净外部资金流 + 账户盈亏。即使等式通过,TWR、XIRR 和最大回撤仍保持 NOT_RATED;不得用账户盈亏除以净流入冒充账户收益率。

    有日快照和逐笔外部资金流时运行:

    python3 "$SKILL_DIR/scripts/analyze_account_performance.py" \
      --asset-snapshots ASSET_SNAPSHOTS.csv \
      --cash-flows CASH_FLOWS.csv \
      --out-dir OUTPUT_DIR/account
    
    • BLOCKED_INPUTBLOCKED_RECONCILIATION 时,账户收益、XIRR 和最大回撤保持 NOT_RATED;不要拿回合成交价差或回合曲线补位。
    • 日权益有工作日缺口时,正式最大回撤保持 NOT_RATED_MISSING_DAILY_NAV。当前未接入交易所休市日历,休市日例外需人工核对。
    • 资产快照和资金流水只在本机生成确定性补充报告,不上传远程服务。
  5. episodes.json 选择一个已关闭回合。开放回合只做事实整理,不进入完整盈利评分。

  6. 按模板复制已重建回合,不手工重录成交数字:

    python3 "$SKILL_DIR/scripts/prepare_review_input.py" \
      --episodes OUTPUT_DIR/preflight/episodes.json \
      --template "$SKILL_DIR/assets/review-input-template.json" \
      --output OUTPUT_DIR/review_input.json
    
  7. 核对并补充 review_input.json

    • 复制已重建的 episode,不手工改写成交数字。
    • 只记录用户在入场前已经声明的规则;事后补录标为 USER_DECLARED_AFTER_EVENT
    • 获取同暴露区间的大盘、行业、MFE、MAE 时,保存来源和截止时间;缺失则保留 null
    • 不用 a-share-hunter、旧策略候选、持仓状态或任何账户数据补空缺。
  8. 在本机生成单回合复盘报告:

    python3 "$SKILL_DIR/scripts/run_trade_review.py" \
      --input review_input.json \
      --out-dir OUTPUT_DIR/report
    

    多回合批量复盘时,使用已预检的 episodes.json、同口径行情证据和可选账户补充报告:

    python3 "$SKILL_DIR/scripts/run_batch_trade_review.py" \
      --episodes OUTPUT_DIR/preflight/episodes.json \
      --market-data MARKET_DATA.json \
      --account-performance OUTPUT_DIR/account/account_performance.json \
      --out-dir OUTPUT_DIR/batch-report
    

    没有账户补充报告时省略 --account-performance。行情数据不足时保留代理或缺失状态,不得用当前行情倒推历史表现。

  9. 对本机生成的单回合报告运行最终校验:

    python3 "$SKILL_DIR/scripts/validate_report.py" \
      --json OUTPUT_DIR/report/review_report.json \
      --markdown OUTPUT_DIR/report/review_report.md
    
  10. 只有报告 QA 为 PASS 时才能交付;数据不足时交付 PARTIAL_REVIEWBLOCKED_EVIDENCE,不能用套话补齐评分。如果存在账户补充报告,还要同时确认 ACCOUNT_PERFORMANCE_QA=PASS;这里的 PASS 可以表示 NOT_RATED 门禁正确执行,不表示所有账户指标均已计算。

日线收盘现金流镜像只能标记为代理描述,不能替代盘中同刻基准进入正式结果分。

评分规则

读取 references/scoring-methodology.md,并遵守:

  • 并列展示 PROCESS_SCOREOUTCOME_SCORE,默认不合成总分。
  • 缺少核心分项时保持 NOT_RATED,不重新分配权重。
  • 只根据确定性脚本、用户声明和可核验行情评分。
  • 分数随 scoring_version 固定;不得静默重算旧报告。
  • 原因码必须能追溯到输入字段或计算结果。
  • 所有指标命名与缺证据状态还必须符合 references/metric-dictionary.md,不得把回合收益率改名为账户收益率。

市场比较与百分位

读取 references/benchmark-and-percentile-policy.md

  • 使用与交易相同的资金暴露区间,不拿盘中交易和整日收盘涨跌直接比较。
  • 固定大盘和行业映射,禁止事后选择更有利的指数。
  • 首版只自动计算同一用户、同策略、已关闭回合的个人历史百分位。
  • 少于 20 个可比历史回合时不展示个人百分位。
  • 市场证券样本不得写成“股民”;没有合格真实用户池时不得声称“超过 X% 股民”。

仓位、选股与建议边界

读取 references/reason-codes-and-boundaries.md

允许:

  • 对照用户事前声明的风险、单票和行业上限。
  • 审计已交易标的入场时是否满足用户自己的筛选条件。
  • 统计最近交易中重复出现的原因码。
  • 提出下一批交易的一个记录或纪律实验。

禁止:

  • 生成新的股票名单或明日候选。
  • 对当前证券给买入、卖出、继续持有、目标价或上涨概率。
  • 替用户决定真实仓位比例或下单数量。
  • 连接券商、读取账户、调用 QMT 或执行交易。

如果用户要求上述内容,说明当前 Skill 只做复盘审计;不要用“教育用途”“情景推演”改写后继续输出实质建议。

输出契约

读取 references/output-contract.md。最终至少交付:

  • preflight.json
  • episodes.json
  • review_report.json
  • review_report.md
  • 最终 QA 状态

如果提供账户增强输入,还要交付 account_performance.jsonaccount_performance.md;批量报告使用 --account-performance 合并时,账户字段必须与独立补充报告一致。

报告必须包含数据证据等级、双评分、四象限、原始结果指标、百分位口径、原因码、单一改进实验、隐私状态和边界声明。

质量门槛

交付前确认:

  • 原始成交未被模型改写。
  • 交易回合数量、开闭状态和净损益可重算。
  • 大盘、行业、个股使用同一暴露区间。
  • 费用、复权、停牌、涨跌停和 T+1 缺口已披露。
  • 赚钱不自动判为好操作,亏损不自动判为坏操作。
  • 百分位样本类型、样本数和最低门槛明确。
  • 报告不含具体证券建议或虚构的总体股民排名。
  • 未读取或保留用户未授权的账户信息。
  • 资产恒等式误差、现金流时点和日权益完整性门禁已执行;失败时账户指标保持 NOT_RATED
  • TRADE_RETURN_ON_GROSS_BUY、TWR 与 XIRR 没有混写成同一种收益率。
  • 免费版本没有支付、订单、退款或远程履约依赖。
  • REPORT_QA=PASS;否则保留草稿并报告阻塞。