AI 现金与流动性管理(司库数智化) — 可复用原型 skill
把「组合预测 + 蒙特卡洛融资缺口 + 五级预警 + cvxpy 融资优化」沉淀为一键可跑的工作流。 源自 2026-08-28 的一次真实落地: 用户要做 AI 现金与流动性管理, 用 8 本参考书的方法学 (Hyndman / Géron / Brownlee / Boyd / Kroese / Horcher / Cooper) 落成可运行原型。
何时用
- 用户要搭「现金流预测 + 融资决策模拟」(不是利润表预算预测)。
- 用户问: 日/周/月三档现金头寸预测、带置信区间的概率预测、ARIMA+XGBoost+LSTM 怎么组合、 蒙特卡洛模拟资金缺口、绿黄橙红黑五级预警、用优化模型选融资工具/时点/金额。
- 用户要接入真实银行流水 / ERP 应收应付做现金可见性。
核心范式(与行业一致的三层架构)
数据接入(可见) -> 组合预测(预测) -> 缺口识别+五级预警(行动前) -> 融资决策模拟(行动)
- 行业佐证: 安永白皮书 AI 司库三层架构(visibility/prediction/action)、Business+AI 同构、 央企 G 公司"三位一体"(ARIMA+XGBoost+LSTM 组合 + 蒙特卡洛 + 五级矩阵)。本 skill 是该范式的最小可跑实现。
执行步骤
- 准备环境(用受管 venv, 不要污染用户环境):
PY=~/.workbuddy/binaries/python/versions/3.13.12/python.exe VENV=~/.workbuddy/binaries/python/envs/aiproto $PY -m venv $VENV $VENV/Scripts/python.exe -m pip install numpy pandas scikit-learn statsmodels xgboost cvxpy matplotlib tensorflow-cpu - 跑默认 demo 原型(生成 prototype_report.html):
输出: 4 张图(预测区间 / 五级预警时间线 / 蒙特卡洛缺口分布 / 融资组合) + 方法学出处脚注。$VENV/Scripts/python.exe <skill_dir>/scripts/cash_liquidity_prototype.py - 交互仪表盘(可选): 先
$VENV/Scripts/python.exe -m pip install streamlit, 再用streamlit run scripts/dashboard.py启动, 支持 provider/horizon/蒙特卡洛路径/覆盖分位/置信带 实时调参。 - 接真实数据: 编辑
scripts/data_layer.py, 实现BankAPIProvider._fetch_statement(银企直连/开放银行) 与ERPProvider._query_open_items(应收应付/债务到期), 然后load_cash_flow(provider="bank"|"erp")。 已知未来义务(债务到期)来自load_known_obligations(provider="erp"), 注入预测削减对应日头寸。 - 校准阈值(投产前必做): 五级预警阈值(
warning_level)与融资参数(额度/利率/期限)为推荐值, 须按本企业风险偏好与监管(国资发财评规〔2022〕1号、〔2026〕1号/2号)校准。
关键设计纪律(来自踩坑)
- 预测口径统一为"期末现金头寸水平", 不要当"日净流"重复累加 —— 初版误把模型输出水平当净流 cumsum, 导致融资额虚高到 330 亿、全判黑级。组合预测/蒙特卡洛/缓冲天数都要用同一口径(水平)。
- 缓存陷阱: 数据层首跑会写缓存 CSV/parquet, 之后一直读旧数据; 改了生成参数须先删
_cache/重生成。 - 置信区间用 bootstrap: 残差非正态时, ARIMA 的解析 CI 不可靠, 对组合残差做 bootstrap 区间(Hyndman《FPP》)。
- 数字须打标: 安永"AI 提升约 7%"是 12 个月保守口径(1 周 +13%、13 周 +11%), 别当上限; 误差 ±15%->±8–10% 是目标值(待核验), 同时追「区间覆盖率」和「点误差」两套 KPI。
方法学出处(均经文本抽取核验, 可直引)
| 模块 | 书 | 作用 | |---|---|---| | 置信区间 80/95% + 残差 bootstrap | Hyndman《Forecasting: Principles and Practice》 | 概率性预测(非单点) | | XGBoost(early stopping) + LSTM(堆叠RNN) | Géron《Hands-On ML with Scikit-Learn/Keras/TF》 | 非线性/日历效应 | | 时序->有监督(lag) + walk-forward | Brownlee《Deep Learning for Time Series Forecasting》 | 滑窗范式 | | 融资优化 LP 形式化 -> cvxpy | Boyd《Convex Optimization》 | 工具组合最小化成本 | | 蒙特卡洛方差缩减(对偶抽样) | Kroese《Handbook of Monte Carlo Methods》 | 缺口模拟等效翻倍样本 | | 现金预测/收付款/流动性风险 | Horcher《Essentials of Managing Treasury》+ Cooper《企业司库与现金管理》 | 实务框架 |
版权与授权
- 本技能的代码与方法说明均为原创整理; 引用的 8 本参考书仅作方法署名(作者 + 书名 + 所用方法), 不包含任何书籍原文摘录或翻译文本。
- 行业数据(安永白皮书「AI 提升约 7%」、央企 G 公司案例等)来自用户提供的公开链接/附件, 已注明来源, 未包含原文。
- 许可: MIT。可自由使用、修改、再分发, 使用时请保留署名与方法来源说明。
五级预警推荐阈值(双指标交叉, 待校准)
| 等级 | 缓冲覆盖天数 | 需融资概率 | 含义 | |---|---|---|---| | 绿·安全 | ≥15 天 | <5% | 正常 | | 黄·关注 | ≥10 天 | <15% | 预检 | | 橙·预警 | ≥5 天 | <30% | 启动安排 | | 红·警戒 | ≥2 天 | <50% | 迫近缺口 | | 黑·危机 | <2 天 | ≥50% | 缺口已现 |
文件清单
scripts/cash_liquidity_prototype.py— 主原型:run_pipeline()返回结构化结果(供 dashboard 复用),main()生成 HTML。scripts/data_layer.py— 数据接入骨架:DemoProvider/BankAPIProvider/ERPProvider+ 缓存对账 +load_known_obligations()。scripts/dashboard.py— Streamlit 交互仪表盘(复用run_pipeline, 侧栏实时调参)。guide/architecture.md— 分层架构图与数据流。guide/book_sources.md— 各书方法学锚点与抽取结论。
Scan to join WeChat group