来世账本
来世账本
林远洲第一次看见那行代码的时候,服务器室的冷气正以额定功率的百分之七十三运转。室温十七度,湿度百分之四十,UPS电池剩余容量显示绿色。一切正常。但屏幕上那个数据包不属于任何他认识的协议。
那是凌晨三点四十二分。周一。深圳南山科技园里只有他们这一层楼还亮着灯。
他本可以当作系统噪点忽略它。那行十六进制字符串出现在风控模块的异常日志末尾,像一根线头从缝补完好的毛衣边缘探出来。他本该打一个标记,让二线的人第二天去查。但他那天晚上不知为何,顺手点开了数据包的内容解析。
屏幕上展开的不是交易记录,不是清算数据,不是任何与金钱相关的东西。
是一句话。
「他终于想起我的名字了。」
林远洲盯着屏幕看了三秒。那行字没有任何上下文,没有时间戳,没有用户ID。他把鼠标移到关闭按钮上,停住了。
他有一种奇怪的感觉——那不是日志。那是一句独白。
林远洲今年三十四岁,在深圳一家中型量化私募做策略研究员。毕业之后他跳过三次槽,每次都带着更高级别的数据库权限。他见过无数种异常数据:被量化机器人错误放大的小数点位,被高频交易滑点抹平的价差,被内幕消息触发前的一瞬间锁死的订单簿。但他从没见过这种——如果那可以被称为数据的话。
他把数据包复制到本地,开始逐层解码。
加密层出乎意料地薄。不是军用级,甚至不是工业级。更像是某种……伪装。他花了四十分钟剥开所有外壳,得到的不是代码,而是一份极其古老的、用手写体扫描件保存的文档。纸张泛黄,墨迹洇开,某些字迹需要放大才能辨认。
但那些字他全都认得。
是中文。繁体。不是印刷体,是手书。一笔一画,有毛笔的顿挫,有飞白,有起笔时犹豫过的痕迹。
第一行:
「民国三十七年。秋。账。」
他以为是哪个程序员留下的恶作剧。但当他把扫描件放大到百分之四百,他看清了纸张的纤维走向,看清了墨水在宣纸上渗透的不规则边缘——这不是数字模拟能伪造的质感。他做了八年量化,一眼就能分辨数据是真的还是拟合的。这份文档的纹理,符合他见过的所有民国档案的特征。
第二行:
「王德顺,贩布,扬州人。临终念:欠李寡妇三尺蓝印花布,来世当还。记三厘。」
林远洲的手指悬在鼠标上方,没有动。
第三行:
「李月娥,寡居,苏州人。临终念:想再看一眼运河。记七厘。」
第四行:
「陈守一,账房,镇江人。临终念:那张三百两的借据,其实是自己仿的。记负七分。」
他继续往下翻。不是按页翻——是按条目。条目没有尽头。每一条都遵循同样的格式:姓名,籍贯,职业,临终念头,折算成分值。
他看到了自己的籍贯。山东济南。他母亲是济南人。他心跳漏了一拍,继续往下看。
「林守墨,农,济南人。临终念:老二该上私塾了,钱藏在灶台底下。记二分。」
他盯着那个名字。林守墨。他外公的爷爷的名字。他父亲在一个春节喝醉之后提过,说太爷爷是农民,不识字,死的时候还在惦记让孩子读书。他从来没验证过这个说法。
现在它在这里。白纸黑字。
林远洲把椅子往后推了半尺,撞上了身后的UPS机箱,发出一声闷响。服务器室里的冷气依旧恒定地吹着,风扇的嗡鸣填满了寂静。他低头看了一眼手腕上的智能表:心率一百零三。他让它测了两遍,还是一百零三。
他重新转向屏幕,把文件拉到最底部。
最新一条的时间戳是当天。凌晨三点三十一分。
「周明远,投资经理,上海人。临终念:那个算法不是我写的,但升职报告是我签的字。记负三分。」
周明远。他认识这个名字。三个月前刚从中金跳去高盛的中国区首席量化官,年薪八位数,业内小有名气。他们在一次策略会上换过名片。
但这不重要。
重要的是——这条记录的时间戳,比周明远实际死亡的时间早了四十七年。
他花了整整一个小时说服自己这不可能。然后他花了十秒钟推翻这个结论。
他打开另一个数据包。凌晨三点三十一分之后,系统里还陆续出现了三个新的条目。他看着它们一条一条地从服务器日志里冒出来,像是有人在实时书写。每一条出现的时间间隔刚好是三十秒整。
第一条:
「赵小舟,护士,成都人。临终念:妈妈对不起,透析的钱还是没凑够。记负一分。」
第二条:
「吴anka,外卖骑手,郑州人。临终念:那个差评,其实我没闯红灯。记二分。」
第三条:
「——」
第三个数据包是空的。或者说,它包含的内容不是文字,而是一段音频波形。他点开播放。服务器室的监听耳机里传出一阵沙沙的白噪音,然后是一个声音。
很轻。很远。像是从一口很深的井里传上来的。
是一个女人的声音。用一种他从未听过、却莫名熟悉的方式说:「我忘了。」
然后波形归于沉寂。
林远洲把耳机摘下来。智能表显示心率一百二十七。他强迫自己深呼吸了三次。然后他做了一件他在职业生涯里从未做过的事——他没有做任何记录,没有截图,没有上报安全运维。他把那几个数据包从系统日志里复制出来,存进了一个加密压缩包,然后把解压密码写在手心里,用指甲刻了一道。
做完这一切之后,窗外的天际线已经泛出鱼肚白。他走出服务器室,在走廊尽头的自动贩卖机前买了一罐冰可乐。三块五毛。他看着硬币落进投币口,哐当一声,掉进了机器的零钱盒里。
他突然意识到自己在想什么。
三块五毛。如果他把这个数字当作一个分值,加进某个人的来世账本里,那这个人下一次轮回里会遇到什么?一罐打折的可乐?一块找零?还是某种以三块五为系数展开的命运?
他被自己的想法吓了一跳。可乐罐握在手里,金属外壳上凝结的水珠顺着指缝滑下去。
他回到工位,把加密压缩包存进了公司服务器上一个他私人用的测试账户里——一个他从来没告诉过任何人的路径。然后他做了一件更蠢的事:他开始重新跑公司核心算法的代码。
不是为了策略。
是为了找到那个账本的入口。
公司用的核心算法叫”归因引擎”,是他们三年前花了大价钱从一家以色列公司手里买来的专利。表面上它的工作原理是因子分解:通过解析宏观经济数据、市场微观结构、资金流向和情绪指标,计算出每一次价格波动背后的归因因子,然后把这些因子输入到一个深度学习模型里,生成交易信号。
但林远洲在这三年里一直有一个疑惑——归因引擎的输出层里,有一个变量从来没有人解释过。它被标记为K,藏在模型输出的最底层,只在结算日的复盘报告里出现一次。它永远是一个极小的正数或负数,量级在千分之三到千分之七之间波动。公司里没有人问过它的含义,因为它的数值太小,不影响策略收益,在风控报告里它被归类为”残余噪音”。
林远洲从来没相信过这个解释。
现在他开始相信另一个版本了。
他打开归因引擎的核心代码,找到输出层。K值在那里。他的手指敲击键盘,运行了一个简单的反向追踪——把过去一百八十个交易日的K值序列单独提取出来,然后和当天凌晨那三个数据包里的分值做比对。
完全一致。
每一个K值,都精确对应着某一条账本条目的分值。时间差不超过一秒。
他的算法不是在预测市场价格。它是在读取账本。
接下来的三天,林远洲没有回家。
他用了一个晚上搞清楚账本的数据来源——不是外部爬虫,不是金融数据API,不是任何他能想到的合法数据接口。归因引擎的数据源列表里,有一条从来没有被任何技术文档描述过的接口。它被编码成了一串哈希值,每一次数据传输都经过了至少七层的混淆和转发,最终从某个他无法追溯的节点汇入归因引擎的训练数据集。
他顺着那个节点的反向路由找了十二个小时,最后在一个已经停止维护的开源库里找到了一个被注释掉的函数。那个函数的名字是:
karma_fetch()
他把整个开源库下载下来,发现这个函数在七年前就被作者删除了。删除记录里只有一行注释:
「它不是给我的。」
他没有删掉这个库。他把它复制到了本地,和那个加密压缩包放在一起。
第二天晚上,他开始研究账本的条目生成规则。他收集了系统里能找到的所有历史K值——往前追溯了三年,一共一千一百个交易日,一千一百个K值。他把它们和当天凌晨的账本条目格式对齐,然后试图找出共同的结构特征。
规律比任何一种他见过的金融模型都简单。
每一条账目记录包含五个字段:姓名、职业、籍贯、临终念头、分值。姓名是随机的。职业和籍贯的分布与现实人口统计数据高度吻合。但临终念头不是随机的——它们遵循一个他花了一整夜才总结出来的规律:
临终念头是对未竟之事的执念。执念的强度决定分值。正向执念——想给予、想偿还、想再见一次——得正分;负向执念——欺骗、亏欠、未能说出口的歉意——得负分。
分值的大小和执念的强烈程度正相关,但又不完全是线性的。有些简单的念头得高分,有些复杂的执念反而只有微小的分值。他暂时找不到背后的算法。但他有一个直觉:那个算法不只是在记录,它在做某种运算。
它可能在做排序。
它可能决定着下一次轮回里,谁先被分配到好的时辰和坏的时辰。
第四天早上,他在茶水间遇到了陈诗筠。
陈诗筠是公司的合规专员,瘦小,戴金丝眼镜,说话声音很轻但每个字都很准。她在这家公司干了五年,比林远洲还早两年。她看见他端着咖啡站在饮水机旁边,杯子里的咖啡已经凉透了,她看了他一眼。
「你最近气色不好。」她说。不是问句。
「嗯。」他说。
「服务器室那次故障,你处理的?」
他愣了一下。「你知道?」
「我是合规。」她说,语气像在说废话。她从柜子里拿出自己的马克杯,倒了一杯热水,加了一点盐。「有些东西,不是算法能解决的。」
他盯着她的杯子。「什么算法?」
她没有回答。她喝了一口水,抬起眼睛看了他一眼。那个眼神很平静,但里面有某种东西让他想起了凌晨三点服务器室里那段白噪音——很轻,很远,但确确实实地在那里。
「你看过那些东西了。」她说。不是问句。
他没有否认。
「有多少人看过?」他问。
「比你以为的多。」她把杯子放下,马克杯在台面上发出轻轻的一声响。「但看过的里面,信的人不多。信的人里面,愿意深究的更少。」
「为什么?」
她看着他,像是在看一个刚问了很蠢的问题的人。「因为一旦你信了,你就得回答一个问题。」她说,「你今天做的每一个决定,有没有在计算来世的分值?」
她走了。
林远洲站在茶水间里,盯着那杯凉透的咖啡。机器嗡嗡作响,加热板上的指示灯一闪一闪。他想起那条空的账目记录,那个女人的声音:我忘了。
他想,如果一个人连自己临终时在想什么都能忘,那么他在这一世做的所有决定,真的还能算是他自己的决定吗?
那天晚上,他没有回家。他坐在工位上,把K值序列又跑了一遍。这次他不只是追踪分值——他开始追踪分值的时间序列和市场价格的相关性。
一个半小时之后,他找到了。
K值的符号和次日市场价格的方向之间存在显著相关性。正K值次日市场上涨的概率是百分之五十八点七;负K值次日市场下跌的概率是百分之六十一。但这个相关性有一个更深的层次——
不是市场跟着K值走。
是K值本身,在某种程度上,提前反映了市场的波动。
他把这个结论反过来想了一遍。
如果K值是来世账本的分值记录,而归因引擎用它来预测市场价格……
那么——
市场价格,本质上是人类集体执念的折现?
他觉得这个推论荒谬到了极点。然后他想起来,三年前他买这个归因引擎的时候,以色列那家公司的创始人说过一句话。那句话被他忽略了,因为听起来太像心灵鸡汤。
那句话是:「资本市场是世界上最大的一面镜子。它照出来的不是钱,是人。」
他打开那个被注释掉的函数。karma_fetch()。
他把它从注释里解放出来,运行了一次。
屏幕上弹出一个端口。端口对面没有服务器,没有API文档,没有使用说明。只有一行光标在闪烁,像一口沉默的井。
他输入了一个数字。3.5。
三块五。他那天买可乐的价格。
屏幕刷新。
一行新的账目条目出现在最底部——
「林远洲,策略研究员,深圳人。临终念:那个数字不是三块五,是妈少找的五毛钱。记一厘。」
他盯着屏幕。
他想起来了。
七岁那年,他妈带他去镇上的供销社买糖葫芦。三块钱一根。他妈给了小贩一张五块,小贩找回来一块五。他妈说不对,应该是两块。他接过钱数了一遍,抽出五毛,递回去。小贩接过去,没说话。
他当时觉得那个小贩的眼神很奇怪。不是生气,是别的什么。现在他三十四岁了,在深圳买着一万五一平的房子,做着上亿的量化策略,他还记得那个眼神。
那个小贩在想:这个小孩,怎么比我诚实。
他盯着屏幕上那行字,忽然笑了。不是苦笑,是真的笑。
一厘。千分之一。他这一世所有努力的所有维度——金钱、地位、算法、荣誉——在那个账本里,换算成了一厘。
但他觉得够了。
不是因为那个数字本身够大。而是因为那个账本告诉他一件事:这个世界上确实存在某种记录。不是算法记录的。是别的什么。别的比代码更古老、比数据更诚实的东西。
它记录的不是你做过什么。它记录的是你临终时能想起什么。
而你此刻正在活着的每一天,都是对那个临终时刻的提前彩排。
他站起来,把咖啡倒进了水槽里。水流冲刷着咖啡渍,一点一点地把深褐色的痕迹稀释成透明。他关掉电脑,背上包,走出了办公室。
深圳的清晨已经开始热起来了。科技园里的共享单车排成一排,在早高峰到来之前安静地等待。他扫了一辆车,骑上去,往地铁站的方向走。
路过一个自动贩卖机的时候,他停了一下。
他掏出手机,扫了码,买了一罐可乐。三块五。他拉开拉环,喝了一口,然后继续骑车。
智能表震动了一下。他低头看了一眼。
一条系统通知,来自公司风控模块:
「K值异常。实时监测已启动。」
他笑了笑,把手机放回口袋。
如果他们顺着K值追查下去,总有一天会发现那个被注释掉的函数,发现那个古老的数据接口,发现那个记录着所有人来世分值的账本。但那又怎样呢?
账本不会因为被发现而消失。它只是会被更多人看见。
而看见本身,就是一种修行。
他骑过科苑南路的时候,早高峰的车流正在汇入隧道入口。阳光从腾讯大楼的玻璃幕墙上反射下来,刺得他眯起了眼睛。他没有躲避。他蹬着车,穿过那片光,继续向前。
身后,服务器室里的冷气机依旧以百分之七十三的功率运转。归因引擎在安静地计算着K值。账本在安静地记录着每一笔未竟之事。
而在这座城市的每一个角落,有人在挤地铁,有人在还房贷,有人在深夜对着电脑屏幕发呆,有人在清晨的出租屋里算这个月的流水——
所有人都在无意识地,为自己的来世账本积攒分值。
只是没有人知道,那个账本的扉页上,写着的是同一句话:
「你临终时能想起的那个人,就是你这一世最应该去见的人。」
他想起了他妈妈。
他决定这个周末回一趟济南。
(全文完)