1
2026-07-19 228d838fdb7f7dde7edc4993fdbb9654c9c31df7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
{
  "schema_version": "1.0",
  "run_id": "RUN-ANA-WUJI-BASELINE-PILOT-20260607-001",
  "created_at": "2026-06-07T23:37:00+08:00",
  "role_instance_id": "case_analysis.analyst",
  "case_matter_id": "ANA-WUJI-BASELINE-2023-2026",
  "design_id": "DESIGN-WUJI-BASELINE-FLOW-20260607",
  "design_audit_id": "AUDIT-ANA-WUJI-BASELINE-FLOW-20260607-001",
  "stage": "STRUCTURE_PILOT_EXIT_REVIEW_RESOLVED_SELF_CHECK_DONE",
  "status": "exit_review_held_lots_resolved_self_check_pass_return_stat_held_execution_review_submission_ready",
  "conclusion_boundary": "Structure pilot exit-review-resolved package only. No complete baseline return, success rate, win rate, drawdown, or strategy effectiveness conclusion.",
  "baseline": {
    "baseline_id": "WUJI_BASELINE_NOTE_SIMPLIFIED_20260607",
    "source_note": "ana-doc/wuji/profile/source_note/笔记精简版.md",
    "feedback_doc": "ana-doc/wuji/baseline反馈.md",
    "analysis_plan": "ana-doc/wuji/无忌笔记案例分析方案.md",
    "execution_flow": "ana-doc/wuji/无忌交易系统案例执行流程.md",
    "excluded_policy": "See baseline_excluded_rule_table.csv"
  },
  "requested_date_range": {
    "start": "2023-01-01",
    "end": "2026-12-31"
  },
  "known_actual_breadth_date_range_from_prior_experiment": {
    "start": "2023-01-04",
    "end": "2026-04-24",
    "evidence": "exp-data/result/RUN-EXP-WUJI-BREADTH-3000-20260607-001/summary.json"
  },
  "sample_plan": {
    "sample_size_min": 5,
    "sample_size_max": 10,
    "case_unit": "one_entry_trade_date_independent_case_account",
    "selection_goal": "Cover positive, negative, boundary, no-trade, and manual-review cases before any full return statistic.",
    "selection_policy": "Generate complete candidate pool first, then choose representative entry_trade_date cases with recorded reasons. Do not hand-pick a single stock as a substitute for system execution."
  },
  "data_sources": {
    "daily_price_source": {
      "system": "MYSQL_TIANXIA_LOCAL",
      "schema": "tianxia",
      "table": "a_share_daily_price",
      "evidence": "exp-data/result/RUN-EXP-WUJI-BREADTH-3000-20260607-001/daily_classification.csv",
      "direct_check_evidence": "source_db_direct_check.json",
      "actual_coverage_start": "2023-01-03",
      "actual_coverage_end": "2026-05-26"
    },
    "market_breadth_source": {
      "system": "MYSQL_TIANXIA_LOCAL",
      "schema": "tianxia",
      "table": "ts_market_breadth_daily_cache",
      "cache_run_id": "ts_market_breadth_cache_20260529",
      "benchmark_type": "VS_PREV_CLOSE",
      "evidence": "exp-data/result/RUN-EXP-WUJI-BREADTH-3000-20260607-001/summary.json",
      "scope_type": "ALL_A_SHARE",
      "scope_value": "ALL",
      "direct_check_evidence": "source_db_direct_check.json",
      "actual_coverage_start": "2023-01-04",
      "actual_coverage_end": "2026-04-24"
    },
    "minute_price_source": {
      "system": "MYSQL_TIANXIA_LOCAL",
      "schema": "tianxia",
      "table": "a_share_minute_price",
      "evidence": "source_db_direct_check.json",
      "confirmation_status": "DIRECT_DB_PASS_WITH_MINUTE_BOUNDARY",
      "required_before_case_execution": true,
      "actual_coverage_start": "2023-03-24",
      "actual_coverage_end": "2026-04-20",
      "case_selection_constraint": "Only select minute-dependent replay cases within 2023-03-24 to 2026-04-20."
    }
  },
  "market_gate": {
    "main_gate_id": "MKT_GATE_PREV_DAY_UP_3000",
    "definition": "previous_trade_day.up_count >= 3000",
    "reason": "Point-in-time safe at entry date open. It avoids using entry-day future intraday breadth for new opening decisions.",
    "gate_closed_status": "NO_TRADE_MARKET_GATE_CLOSED",
    "intraday_gate": "not_in_main_baseline",
    "intraday_gate_policy": "If tested later, run as a separate variant after design re-review."
  },
  "candidate_rules": {
    "candidate_signal_date": "previous_trade_day(entry_trade_date)",
    "daily_fields_visible_until": "candidate_signal_date close",
    "recent_limit_up_window_trading_days": 30,
    "volume_ratio_definition": "signal_day_volume / average_volume_of_previous_5_trading_days_before_signal_day",
    "volume_ratio_threshold": 1.7,
    "upper_shadow_top_n": 50,
    "candidate_rank_sort_keys": [
      "upper_shadow_pct desc",
      "volume_ratio desc",
      "amount desc"
    ],
    "long_flat_window_trading_days": 60,
    "previous_high_volume_rule": "If long upper shadow touches previous high, signal day volume must be greater than previous-high reference volume unless manual exception is recorded.",
    "previous_high_volume_reference_policy": "FIRST_PREVIOUS_HIGH_IN_60D_WINDOW",
    "previous_high_volume_reference_policy_note": "For this audited pilot run, prev60_high_volume uses the first occurrence of the maximum high in the prior 60 trading days. Candidate ledgers retain amount, prev60_high_ref_date, and prev60_high_ref_policy as audit evidence."
  },
  "entry_rules": {
    "main_variant": "V0A_STRICT_TIME_WINDOW",
    "normal_entry_windows": [
      "09:30:00-10:40:00",
      "14:40:00-15:00:00"
    ],
    "rolling_exception_window": "10:40:00-14:40:00",
    "rolling_exception_condition": "Only for existing legal position after trend-up and pullback near MA5 with manual confirmation of stop-fall volume.",
    "v0b_ablation_enabled": true,
    "v0b_policy": "V0B_ALL_DAY_ENTRY_ABLATION is retained only as a side-by-side ablation. It is not the headline baseline and must not be mixed with V0A returns."
  },
  "position_rules": {
    "max_symbols_per_case": 5,
    "symbol_budget_pct": 0.2,
    "tranches_per_symbol": 5,
    "default_tranche_account_pct": 0.04,
    "fifth_tranche_default_enabled": false,
    "fifth_tranche_exception_requires_manual_reason": true
  },
  "exit_and_risk_rules": {
    "observation_window_trading_days_min": 1,
    "observation_window_trading_days_max": 10,
    "t1_guard": "T-day buy cannot be sold on T-day. Same-day sell signal is recorded as T0_SIGNAL_NOT_SELLABLE.",
    "window_end_policy": "WINDOW_END_VALUATION_ONLY is not an original note sell point and cannot be used as a strict baseline exit.",
    "single_symbol_stop_loss_pct": -0.05,
    "market_down_3000_policy": "Risk signal for position reduction, requires current run evidence and manual review.",
    "market_down_4000_policy": "Risk signal for full clear, requires current run evidence and manual review."
  },
  "cost_slippage_and_tradeability": {
    "primary_return_view": "gross_return_without_costs",
    "cost_sensitivity_view": "net_return_rate_model",
    "commission_rate_each_side": 0.00025,
    "stamp_tax_rate_sell_side": "TO_BE_VERIFIED_BEFORE_RETURN_STAT_READY",
    "slippage_model": "0 for STRUCTURE_PILOT_EXIT_REVIEW_RESOLVED_SELF_CHECK_DONE; sensitivity model required before RETURN_STAT_READY.",
    "limit_up_buy_policy": "If signal price is at upper limit and no tradable evidence exists, mark LIMIT_UP_UNTRADEABLE_REVIEW and do not force a buy.",
    "limit_down_sell_policy": "If sell signal is at lower limit and no tradable evidence exists, mark LIMIT_DOWN_UNTRADEABLE_HELD and do not force a sell.",
    "integer_lot_policy": "Percent-account replay in pilot; real share-rounding sensitivity required before RETURN_STAT_READY."
  },
  "chart_standard": {
    "language": "zh-CN",
    "candidate_daily_kline_window_trading_days": 100,
    "entry_exit_intraday_chart": "1m_kline",
    "price_line_chart_as_primary_evidence": false,
    "image_board_first_entry": "case_image_board.md",
    "story_board_role": "text_trace_only",
    "decision_view_rule": "Only data visible at or before decision_time.",
    "audit_view_rule": "May show later data only for retrospective explanation, never for decision.",
    "required_image_manifest_fields": [
      "case_id",
      "symbol",
      "trade_date",
      "event_id",
      "chart_role",
      "decision_time",
      "path",
      "sha256"
    ]
  },
  "required_outputs_before_execution_review": [
    "run_config.md",
    "run_config.json",
    "baseline_rule_mapping.csv",
    "baseline_excluded_rule_table.csv",
    "code_validation_report.md",
    "baseline_mapping_check.csv",
    "sample_recalc_check.csv",
    "case_index.csv",
    "candidate_ledger.csv",
    "decision_log.csv",
    "order_ledger.csv",
    "position_lot_ledger.csv",
    "daily_account_ledger.csv",
    "image_manifest.csv",
    "case_image_board.md",
    "case_story_board.md",
    "summary.md",
    "summary.json",
    "manifest.json",
    "self_check.md",
    "self_check.json"
  ],
  "review_policy": {
    "execution_review_required": true,
    "return_stat_ready_requires_execution_review_pass": true,
    "design_re_review_triggers": [
      "baseline selection change",
      "market gate change",
      "entry or exit rule change",
      "return calculation change",
      "image-first audit entry change",
      "code validation prerequisite change"
    ]
  },
  "slippage_model": "0 for STRUCTURE_PILOT_EXIT_REVIEW_RESOLVED_SELF_CHECK_DONE; sensitivity model required before RETURN_STAT_READY."
}