Files
fidc-backtest-engine/docs/daily-pattern-signals.md

2.3 KiB

完成日线形态与次日信号

fidc_daily_ohlcv_pattern_v1fidc-core::daily_patterns 单一计算核实现。Source Lake 只读取、核验及传输真实 OHLCV;研究服务和策略表达式不分别维护数值算法。

四种量价条件为趋势强势、前高突破、放量上涨、缩量突破;额外提供独立的均线下方、放量下跌卖出条件。前三者名称不暗示当日金叉或价格突破等未实际检验的事实。

应用阶段

  • filter.stock_expr(pattern_signal("<模板 JSON>")):选择候选,再按既有顺序和 Top N 取目标。
  • filter.buy_expr(pattern_signal("<模板 JSON>")):只限制正向仓位增量,不移除目标、不反向清仓,正常减仓不受影响。
  • risk.stop_loss(pattern_signal("<独立卖出模板 JSON>")):独立退出条件,不使用买入条件的反值。
  • pattern_score 只可用于已通过形态条件的对象;没有放量参照或合法排除对象不伪造零分。

参数是 JSON 字符串,例如 pattern_signal("{\"template\":\"ma_below\",\"parameters\":{\"ma_window\":20}}")

新规则必须显式 execution.matching_type("next_bar_open")。信号日 D 的完整日线不能用于 D 日盘前或盘中;历史回放按 D 决策、下一真实交易日执行,实时上下文使用已完成 D 日窗口。实际委托仍需要执行日行情、资金、可卖数量、交易许可和风控。不得用研究结果开启交易路由。

数据与预热

所有价格统一用真实 backward1 因子,成交量不复权。缺失、非有限值、无效 OHLC、重复、未来行、未声明停牌状态均拒绝。仅按明确上市日期证明的上市前窗口或正式停牌记录可以返回结构化排除;不补价、不跳过日期压缩窗口。有效价格但缺复权因子即使停牌也报错。回测和运行态须从表达式提取真实窗口需求,冻结完整日历预热。

研究选择的范围及日期、上市/停牌排除证据、源查询和哈希需保留。固定候选的后续规则回测不等于历史全市场动态选股。CAPM 全区间拟合属于解释性诊断;要成为次日条件,必须另行使用截至 D 日的滚动估计并验证样本外表现,不得回填到拟合区间内。

旧任务默认撮合、历史筛选记录和策略源码不变;用户显式创建新规则后才采用此合同。