# Series And Indicator Model 文档类型:业务骨架 是否可直接用于生成代码:否 是否含已验证可执行示例:否 是否含已验证反例:否 遇到不确定时跳转到:[market_data_context.md](market_data_context.md)、[selection_and_signal_patterns.md](selection_and_signal_patterns.md)、[../syntax/index.md](../syntax/index.md) 这一篇处理金融序列与指标计算模式。 ## 这一篇解决什么问题 回答“指标、序列、逐 bar 计算和相关金融表达方式如何组织,以及 AI 应该先建立什么样的业务心智模型”。 ## 必须记住的规则 - 序列与指标属于业务模型,不属于通用语法。 - 当你需要解释循环、表达式、数组和字符串时,应回到 syntax 层。 - 当你需要解释“指标如何依赖历史序列”时,才留在这里。 ## 输入上下文 - 先确认标的、周期、起止区间和复权口径。 - 先确认你在处理“单值输入”还是“逐 bar 序列输入”。 - 先确认指标依赖多少历史窗口,以及窗口未满时如何处理。 ## 逐 bar 心智模型 - 每个 bar 只应使用当前 bar 及其之前已经可见的信息。 - 先准备输入序列,再计算当前 bar 的指标值,最后再决定当前 bar 的输出。 - 不要把后面的 bar 结果回填到前面的 bar。 - 不要把“能写成一个表达式”误解成“就不需要业务上下文”。 ## 窗口依赖 - 任何均线、滚动统计、历史比较,先写清窗口长度。 - 窗口未满前,先决定是跳过、返回空值,还是走 warm-up 逻辑。 - 多条序列一起参与计算时,先确认时间轴是否对齐。 - 当结果依赖前值时,先确认你是在做“当前 bar 计算”还是“状态延续”。 ## 常见误判 - 把指标写法误当成“TSL 基础表达式”的定义来源。 - 在没有澄清数据频率、窗口和上下文前,就直接抽象成通用语法规则。 - 把未来数据混进当前 bar 的计算里。 - 先写公式,再补上下文,导致窗口长度和序列来源都不明确。 ## 跳转指引 - 市场数据上下文:见 [market_data_context.md](market_data_context.md) - 选股与信号:见 [selection_and_signal_patterns.md](selection_and_signal_patterns.md) - 回测与交易:见 [backtest_and_trade_flow.md](backtest_and_trade_flow.md) - 表达式与控制流语法:见 [../syntax/07_expressions_and_operators.md](../syntax/07_expressions_and_operators.md) 与 [../syntax/08_control_flow.md](../syntax/08_control_flow.md)