第二天晚上九点,陈默刚下班,手机震了。
那个女孩发来一条消息:“陈哥,我简历改了一版,方便帮我看一下吗?”
他点开附件。
简历上的名字是林小雅。工作经验三年,之前在两家游戏公司做服务器开发。项目经验列了四个,每个都按照他昨天说的格式改了:做了什么、怎么做的、解决了什么问题、达到了什么效果。
他看着这份简历,有点恍惚。
这是她昨天帮别人改的。但看着看着,他发现了一些问题。
有些地方的措辞还是太“游戏”了。比如“优化了游戏服务器的内存管理,解决了玩家在线人数增多导致的内存泄漏问题”——这句话放在游戏行业没问题,但量化公司的人看了,能理解这背后的能力吗?
他想了想,打字:“内存泄漏怎么解决的?”
小雅回:“用了一个自定义的内存池,重载了new和delete,还加了一些监控。”
陈默:“这个可以写进去。量化交易系统对内存管理的要求很高,尤其是高频交易,任何内存分配都可能带来延迟。你能自己实现内存池,这是加分项。”
他又往下看。有一条写着“参与设计了跨服战的分布式架构,保证了数据的最终一致性”。
他问:“这个分布式架构是你主导的吗?用了什么协议?”
小雅回:“是我主导的。用了Raft协议,我们自己实现了一个简化版。”
陈默愣了一下。
Raft协议。分布式系统里的一致性算法。他自己当年啃了两个月才啃明白的东西,这个女孩居然自己实现过。
他打字:“这个必须写。Raft协议的实现经验,量化圈很认——很多交易系统都需要做分布式状态同步。”
发完他停了一下,又加了一句:“你比我厉害。我都没自己实现过Raft。”
小雅回了个害羞的表情:“没有没有,我也是照着论文写的,还有很多bug。”
陈默笑了。他想起自己第一次照着论文写东西,写的是一篇关于跳表的论文,写了三天,跑起来全是bug。
他又往下看,看到最后一行:期望职位——量化开发工程师。
他想了想,打字:“你为什么不试试量化研究员?你的底子可以的。”
小雅隔了一会儿才回:“我觉得我做不了。那些金融的东西我都不懂。”
陈默盯着这行字,想起三个月前的自己。
他打字:“三个月前我也这么想。现在我还在学,但至少我知道一件事:金融的东西可以学,但系统设计的能力、解决复杂问题的能力,是学不来的,是做出来的。你有这些。”
小雅回了一个捂脸的表情:“可是他们看简历的时候,可能直接就把我筛掉了。我一个女的,做服务器开发,他们会不会觉得我不行啊?”
陈默的手指停在屏幕上。
这个问题,他没想过。
他不是女的。他不知道一个女的在技术这行是什么感受。但他见过。公司里也有女开发,有一次团建喝多了,那个女同事说:你知道吗,我去面试的时候,经常被人问“你一个女生,能扛得住压力吗”、“你打算什么时候结婚生孩子”、“你这简历是真的吗,是不是找人代写的”。
他不知道怎么回。
他想了很久,打字:“如果因为你是女的就不要你,那是他们的问题,不是你的问题。”
发完他觉得这句话太鸡汤了。又加了一句:“我见过做高频交易系统的女生,比团队里大多数人都强。这个行业看的是代码,不是性别。”
小雅回了个点头的表情。

陈默把简历拉到最上面,开始一条一条给她批注。哪些地方可以再量化一点,哪些地方需要突出技术深度,哪些项目可以重新包装。他写得很细,像在给自己的代码写注释。
写到一半,他停了下来。
他发现自己在做的这件事,不只是帮她改简历。
他是在帮自己梳理思路。
那些他教她写进去的东西——内存池、Raft协议、分布式一致性、性能优化——不正是他自己简历上应该写的吗?
他翻出自己的简历,对照着她这份,一条一条看。
他发现自己也犯了同样的毛病。有些地方写得太“游戏”了,没有翻译成量化圈能听懂的语言。有些地方藏着真正的技术深度,但他没有展开写。有些项目他轻描淡写地一笔带过,但其实里面有很多值得说的东西。
他开始在自己的简历上做标记。
“MMO服务器架构”——应该强调高并发处理能力和系统稳定性设计。
“实时对战匹配系统优化”——应该突出算法优化和延迟控制的实战经验。
“跨服战数据同步方案”——应该展开分布式系统设计和一致性协议实现。
他一边改一边想:原来帮别人看简历,比自己看自己简历更清楚。
改到一半,他给小雅发了一条:“你这份简历,把这些问题改了之后,可以拿去投了。肯定有人要。”
小雅回:“谢谢陈哥!太感谢了!”
他想了想,又发了一条:“对了,你那个Raft协议的实现,如果有文档或者代码,可以整理一下放在GitHub上。面试的时候直接甩链接,比说什么都管用。”
小雅回了个“好”和一个奋斗的表情。
陈默把手机放下,继续改自己的简历。
凌晨一点半,他把第六版简历保存下来,发给自己邮箱。然后打开群,看今天有没有什么新消息。
群里正在聊AI。
有人发了一篇文章链接,标题是《深度学习在量化交易中的应用:现状与展望》。下面有人回:这文章写得太浅了,真正有用的东西没人会写出来。
又有人回:是啊,那些赚钱的策略,谁会发论文?
还有人回:但其实现在很多团队都在试,尤其是用transformer做时序预测的。
陈默翻着聊天记录,看到群主发了一段话:
“AI在量化里,现在比较靠谱的应用方向有两个:一是另类数据处理,用NLP读财报、读新闻、读研报,提取情绪因子;二是订单流预测,用LSTM或者transformer预测短期的买卖压力。至于用AI直接生成策略,目前还没看到特别成功的,过拟合太严重了。”
下面有人问:那做这块需要什么技术栈?
群主回:Python基础就不用说了,主要是要熟悉深度学习框架,PyTorch或者TensorFlow,还要懂时序模型。另外数据处理那块,对Spark、Flink这类大数据框架有要求。
陈默一条一条看完,把关键词记在备忘录里:NLP、情绪因子、订单流预测、LSTM、transformer、PyTorch、Spark。
他在这些词后面打了个问号——有些他听过,有些他完全不懂。
但没关系。三个月前,“Alpha因子”和“贝塔收益”他也完全不懂。
他想起自己学的第一本书,开头有一句话:这个领域的知识更新很快,你要有终身学习的准备。
当时他觉得这句话是套话。
现在他觉得,这可能是真的。
他打开那篇群友发的文章,开始看。
文章有点难,很多术语他第一次见。但他没有跳过,一个词一个词查。查到一个不懂的,就在备忘录里记下来,回头一起查。
看到一半,他发现一个问题:这篇文章里讲的模型,他怎么跑起来?
他没有数据。没有算力。没有那些机构才有的基础设施。
他把这个问题发在群里:“想问一下,如果想自己尝试用transformer做股票预测,数据从哪里来?自己搭环境的话,有什么推荐的方案吗?”
发完他有点紧张——这是他在群里第一次问技术问题。
没想到很快有人回他:“数据可以用tushare或者akshare,免费的够用了。环境的话,自己电脑跑小规模数据没问题,想跑大的可以用kaggle的免费GPU。”
又有人回:“可以先用美股数据练手,yahoo finance有免费API。”
还有人回:“建议先别碰transformer,从LSTM开始,把时序预测的基础打牢。transformer容易过拟合,新手不好控制。”
陈默一条一条看,一条一条记。
最后一条是一个头像不认识的人发的:“你游戏后端转量化?我也转过,两年了。加个好友,有问题问我。”
陈默愣了一下,赶紧加了好友。
对方很快通过,发来一句话:“游戏后端转量化,挺多的。你这步没走错,加油。”
陈默盯着这行字,看了一会儿。
他打字回:“谢谢。还在学。”
对方回了个握手的表情,没再说话。
陈默把手机放下,看着窗外。
对面那栋写字楼,有几盏灯还亮着。不知道是加班的,还是和他一样,在看些与工作无关的东西。
他突然想起一件事。
那个女孩,林小雅。她问他:他们会不会因为我是女的,就直接把我筛掉?
他不知道答案。
但他知道另一件事:如果她真的有那些能力——能自己实现Raft协议,能处理高并发,能优化内存管理——总会有人看到的。
这个行业看的是代码,不是性别。
他想把这句话再发给她一遍。但看了一眼时间,凌晨两点半,他忍住了。
明天吧。
一周后的晚上,陈默正在跑一段代码,手机震了。
小雅发来一条消息:“陈哥,我拿到面试了!一家量化私募,让我下周去聊聊!”
陈默看着这行字,嘴角动了动。
他打字:“恭喜!哪家?”
小雅回了一个名字,他没听过,但看起来是正经公司。
他又打:“面试准备了吗?”
小雅回:“正在准备。他们让我准备一个技术分享,讲一个我做过的最复杂的项目。我准备讲那个Raft协议的实现。你有空帮我看看PPT吗?”
陈默回:“发来。”
PPT发过来,二十几页。他从头看到尾,一边看一边想:这个项目,她比我做得好。他只是想过实现Raft,从来没真的动手写过。
他想起一句话:给别人讲明白,才是真的学会了。
小雅现在在给别人讲。她讲完之后,会对这个项目有更深的理解。
他呢?他什么时候也能给别人讲一个项目?
他想起那个加他好友的人说“游戏后端转量化,挺多的”。他想起群主说“调整一下简历”。他想起自己这三个月看过的书、写过的代码、走过的弯路。
他想起那天晚上,他帮小雅改简历,发现自己在帮她的过程中,也理清了自己的思路。
帮别人就是帮自己。给别人讲明白,自己也更明白。
他想起这个群的名字:“量化投资技术交流群”。他加这个群半年了,一直在潜水,从来没说过话。但这一周,他说话了,问问题了,加好友了。
他发现这个群不只是个群。
这里有人问问题,有人回答问题。有人迷茫,有人给建议。有人转行成功了,回来告诉后来的人:这条路能走。
他想,也许这就是这个群的意义。
不是谁比谁厉害。是大家都在这条路上走着,有的走得快一点,有的走得慢一点,但都在往前走。快的人回头拉一把慢的人,慢的人抬头看一眼快的人,然后继续走自己的路。
他给小雅的PPT批完注,发回去,加了一句话:“讲的时候别紧张。这个项目你比我熟,你是专家。”
小雅回:“谢谢陈哥!面完请你吃饭!”
陈默回了个微笑的表情。
他把手机放下,继续跑那段代码。
是一段transformer的时序预测代码,跑在kaggle的免费GPU上。数据是从tushare下载的,代码是根据群友推荐的文章改的。跑得很慢,但他在等。
等它跑完,等结果出来,等看到那条曲线。
就算结果不好也没关系。他还有的是时间。
窗外,对面那栋写字楼的灯又亮了几盏。不知道是加班的,还是和他一样,在等一段代码跑完。
凌晨两点五十。
陈默看着屏幕上跳动的训练进度条,忽然想起一件事。
他打开简历,在“项目经验”那一栏,加了一行字:
*“独立开发基于Transformer的股价方向预测模型(实验阶段),目前准确率52%。”*
他盯着这行字看了一会儿。
52%不高。抛硬币都有50%。
但这是他自己的代码,自己的数据,自己的实验。
他保存了简历。
然后他打开群,看到有人刚发了一条消息:
“今天跑了一个新因子,IC值0.03,感觉有戏。”
下面有人回:0.03不错了,我最近跑的都是负的。
又有人回:加油加油,迟早跑出alpha。
陈默看着这些消息,嘴角动了动。
他打了一行字,发出去:
“今天transformer模型跑完了,准确率52%。比抛硬币强一点点。”
发完他有点紧张。这是他第一次在群里汇报自己的进展。
没想到很快有人回:52%可以啊,刚开始很正常。
又有人回:抛硬币也是策略,不亏就是赚。
还有人回:加油,慢慢来。
陈默一条一条看过去,忽然觉得这凌晨三点的夜,没那么冷了。
他把手机放下,看着窗外。
对面那栋楼的灯,还亮着几盏。不知道是谁,也在为一段代码、一个策略、一个梦想,熬着夜。
但至少,不是他一个人。
他想起那个女孩林小雅。下周她就要面试了,去讲她那个Raft协议的实现。他知道她能行。
他想起自己。下周还要上班,还要写那些游戏服务器的代码,还要在凌晨学那些新的东西。但他知道,这条路他能走下去。
窗外有一阵风吹过,树叶沙沙响。
陈默端起咖啡杯,发现又凉了。
但他没去倒。他盯着屏幕上的代码,想:再跑一遍,换个参数试试。
凌晨三点。
深圳的夜很深。
但有些人的灯,还亮着。
群里安静了一会儿,有人发了一条消息:
“刚跑完回测,这周终于有个策略夏普上1.5了。”
下面跟着一排“恭喜”。
陈默看着屏幕,笑了笑,继续敲他的代码。
他没有回复那条消息。
但他知道,有一天,他也会发这样一条消息。
然后也会有人回他:恭喜。
也会有人说:加油。
也会有人说:这条路能走。
























暂无评论内容