3. 坏账率基础概念:坏账的定义、坏账率计算公式、行业标准与阈值设定
在 Tick 级回放验证中,坏账率是衡量哨兵模型有效性的核心指标。它直接反映了模型在识别和拦截高风险交易后,剩余未拦截交易中实际发生资金损失的占比。理解坏账的定义、计算公式以及行业标准,是构建和调优哨兵模型的前提。
3.1 坏账的定义
在量化风控场景下,坏账(Bad Debt)特指因交易对手违约、欺诈、系统故障或市场剧烈波动等原因,导致资金无法收回或收回成本超过本金的部分。在 Tick 数据回放中,我们通常将以下情况标记为坏账:
- 交易违约:买方或卖方在交割日无法履行支付或交付义务。
- 欺诈交易:经事后核实为盗用账户、虚假身份或恶意套现的交易。
- 清算失败:因流动性不足或技术故障导致最终结算未完成。
- 强制平仓损失:在杠杆交易中,因保证金不足被强制平仓后产生的净亏损。
回放验证中的坏账标记规则: 在回放流程中,我们通常以“交易最终结算状态”为基准。若一笔交易在回放时间窗口(如 T+3 日)内未完成正常结算,且损失金额超过预设的容忍阈值(如 0 元),则标记为坏账。
3.2 坏账率计算公式
坏账率是坏账金额与总交易金额的比值,通常以百分比表示。在哨兵模型回放中,我们关注的是模型拦截后的坏账率,即模型放过(未拦截)的交易中产生的坏账比例。
核心公式:
坏账率(%) = (坏账总金额 / 总交易金额) × 100%
哨兵模型回放专用公式(拦截后坏账率):
拦截后坏账率(%) = (模型未拦截交易中的坏账总金额 / 模型未拦截交易的总金额) × 100%
变量说明:
| 变量 | 定义 | 数据来源(回放环境) |
|---|---|---|
| 坏账总金额 | 所有被判定为坏账的交易的本金损失之和 | 回放数据库中的坏账标记表 |
| 总交易金额 | 回放时间窗口内所有交易的总成交金额 | Tick 数据流中的成交记录 |
| 模型未拦截交易总金额 | 哨兵模型判定为“正常”并放行的交易总金额 | 模型决策日志 + 成交记录 |
注意: 在回放验证中,切勿将“模型拦截掉的交易金额”计入分母。哨兵模型的目标是降低实际发生的坏账率,因此分母应始终为模型放行(即真实进入清算环节)的交易金额。
3.3 行业标准与阈值设定
坏账率的行业标准因业务类型(如股票、期货、加密货币)和交易规模而异。以下为量化风控领域常用的参考阈值:
| 业务类型 | 行业平均坏账率 | 哨兵模型目标阈值 | 预警阈值(需人工介入) |
|---|---|---|---|
| 高频股票交易 | 0.01% - 0.05% | < 0.01% | > 0.03% |
| 期货/期权 | 0.05% - 0.15% | < 0.05% | > 0.10% |
| 加密货币现货 | 0.10% - 0.50% | < 0.10% | > 0.30% |
| P2P/场外交易 | 0.50% - 2.00% | < 0.50% | > 1.00% |
阈值设定原则:
- 风险偏好对齐:阈值应与机构的风险承受能力挂钩。保守型机构应设定更低的坏账率目标。
- 业务成本平衡:过低的坏账率阈值可能导致模型过度拦截,误伤正常交易,造成流动性损失。
- 动态调整:在回放验证中,应基于历史数据(如过去 30 天的 Tick 数据)滚动计算坏账率,并动态调整阈值。
3.4 坏账率与模型评价的关系
坏账率并非孤立指标,它需要与拦截率、误杀率结合分析。一个优秀的哨兵模型应在保持低坏账率的同时,维持合理的拦截率和较低的误杀率。
关键结论: 在回放验证中,若拦截后坏账率低于行业目标阈值(如 0.01%),且误杀率低于 5%,则可认为哨兵模型通过验证,具备上线条件。