| 公司想扩大业务, 利用现成的数据库, 模型, 和计算软件来做房贷债劵的定价. 公司的客户中有很多是保险公司, 按规定要保持一定数量的现金来应付理赔. 那时(90年代)房屋市场相当平稳, 评级较高的债劵几乎等价于现金. 当时市场共有约三万种债劵, 参与交易的有 1,500 – 2,000 种. 其余的大多数大概被人们当现金收藏起来了. 现在的问题是, 怎么用交易中的债劵来决定这些抽屉中债劵的价格 定价方法大致有两种. 人工 (Manual) 和机器 (Matrix). 有经验的交易员借助软件可以把价钱定得很准, 但是成本相当高, 平均难度的债劵一小时只能做 3-4 个, 对前面这种情况显然不适合. 机器定价的毛病就是粗糙, 定性可以, 定量很危险. 公司就是想发展一种精确度与人工相差不大的机器定价方法. 这个问题牵涉到的专业知识较多, 但唯象的叙述还是可能的. 我们认为这 1,500 种债劵的价格是由269 条代表路径中的某几条关键路径决定的. 每一债劵的价格是自己沿每一关键路径的价格按一定比例组合起来的, 这”一定比例”在特定市场条件下对每一债劵都是相同的. 随着市场的变化, 入选的关键路径会变, 这”一定比例”自然也会变. 这些”关键路径”, 统计软件 SAS 会用一种叫 Stepwise 的技术自己挑出来, 这”一定比例”, 也会同时定下来. 我们进一步假定抽屉里的债劵服从同样的价格机制, 即这”一定比例”对抽屉债劵和市场上的 1,500 种债劵是一样的, 只要把抽屉债劵沿每一路径的价格乘上这”一定比例”, 再求和就可以了. 这方法的理论根据, 恐怕不容易讲清楚, 或许根本就没有理论根据, 但至少不是空穴来风. 在工业界, 只要结果合理, 大多情况也是可以接受的. 可是这方法失败了, 协变量 (Co-Variance) 矩阵总是发散或接近发散, 初始值再怎么调整也没有用. 略通高等代数的读者或许已经,意识到, 这实际上就是高等代数里的矢量分解过程. 路径等价于坐标轴, “一定比例”就是基矢长度, 债劵沿某一路径的价格就是矢量在这一坐标轴的投影系数. 这些坐标轴可以不正交, 但必须独立. 矩阵发散, 实际上就是这些基矢不独立, 事实上后来发现其中许多几乎是相同的, 统计软件无法挑出作用明显但又线性无关的路径..我发现这 269 条路径中有许多前六个 Gate (参照《学术官司》篇), 或说前20年完全一样, Cash Flow 自然也完全相同的. 而最后 10 年的Cash Flow, 因为年代久远, 对定价的影响是很小的, 这就非常容易产生线性相关. 我的解决方法很简单, 把30 万条路径按前 20 年的路径每三条一组再重组一次, 这”重组路径”的价格就以中间那条为准, 几率就是这三条路径的几率之和,. 我们然后再重新选出几率最大的 269 条,这样就把相关性大大减少, 最多发生在开始 10 年. 这办法理论上很粗糙, 但也讲的过去, 最重要的是它能解决问题. 线性相关问题就这样解决了. 把这 1,500 种债劵的预测价格和实际价格比较, 结果非常接近, 误差已在人工定价的范围以内. 有时我们发现某一债劵误差很大, 我就把这债劵让我的助手, 一位前交易员进行独立定价, 市场价和预测价都不告诉她. 防止先入为主. 她的结果都和我的非常接近, 无一例外. 这实际上相当于一个相当随机的样本外测试 (Out-Sample Test), 是对模型的最严格的检验. 我开始想把这篇取名为《举手之劳》,因为这个定价方法的基本框架是那些 MBA 想出来的,我只是把那些路径重新组合一下, 做了一下几率加法而已. 后来觉得这个说法太贬低自己, 看出问题需要相当深厚的高等代数功底. 那些MBA 尽管有相当好的直觉, 觉得这方法可以, 但由于数学功力不够, 无法实现”临门一脚”,以至抱憾半生. 看出了这个 Mapping 并意识到问题出在线性相关, 把三条路径的几率相加确实只是”举手之劳”, 有一次公司一同事和我谈橄榄球, 我说我不懂. 他说, 这有什么, 你根本不懂房贷债劵, 定的价格不是也很准确吗? |