第110章 量化的宏图(1/2)
阶梯结算的第一档,连同基础费一共三十万。
三十万,在如今这个动輒在网络上谈论几个小目標的时代,似乎算不上什么大数字。
但对江临这个家庭来说,它绝对不小。
母亲在菜市场买菜时,为了三毛五毛的差价,可以和摊贩来回拉扯上好几分钟
父亲更是把节俭刻进了骨子里,可以一年到头连一分钱的额外置装费都不支出。
可对江临未来要做的事情来说,三十万,又实在太小。
几台像样的伺服器,几批硬碟,一套高精度传感器套件……
隨便拆一拆,它就会从一个让普通家庭心惊肉跳的数字,变成表格里几行很快被划掉的预算。
江临打开自己的资金表。
录完这一笔后,表格底部的数字跳了一下。
四月以来,1453这个编號並没有閒著。
一个復权价格错位的小单,两万四。
一个停牌状態栏位延迟的小单,一万八。
一个財报公告日误用的复查,四万二。
一个股票池倖存者偏差报告,三万六。
一次旧脚本版本无法復现,平台按加急补了两万。
还有一次栏位重採样异常,三万一。
这些外包单子,每一笔的金额都不算大。
(请记住101看书网藏书全,.隨时读网站,观看最快的章节更新)
但每一次代码与数据的交锋,都在教ps引擎,认识一种现实世界中数据撒谎的狡猾方式。
在金融的底层,价格可以因为分红而倒著变。
停牌的物理状態可以在资料库里错位一天。
上市公司的財报可以像幽灵一样在公告发布前提前出现。
看似公平的股票池里可以只剩下那些贏到了最后的倖存者。
而一行看似无关紧要的代码改动,就可以让旧脚本永远也跑不回昨天那条完美的收益曲线。
到今天这笔三十万的巨款入帐为止,他通过量化相关的底层技术服务,確认拿到手的总收入,已经悄然来到了五十多万的大关。
不过因为前几轮废土准备、工作站、硬碟、传感器、机加工具和观测设备持续吞钱,现在手头上能够隨时支配的流动资金,也就是三十万出头。
如果任由这三十万安静地躺在银行帐户里,吃那点微薄的活期利息,它最终只会变成一串被通货膨胀和货幣超发慢慢磨薄的死数字。
江临认为,自己也许可以让这笔钱,变成一台能够在这片由资本和数据构成的黑暗森林里,自我繁殖的机器。
这个念头,其实早在他第一次接触量化代码时就已经生根发芽。
在沈承业那个平台的外围,做了这么久的数据清道夫,从最初的异常检测,到审计basele统计量泄漏,到给私募清理陈旧的因子库,再到前几天那条把整个私募机房都拖垮的特徵流水线优化……
江临已经可以无比確信一件事。
自己这双手,这颗大脑,以及他所构建的数学物理底层架构,能够在量化交易这门极度內卷的生意底层,看到绝大多数同行终其一生都看不到的微观维度。
他对计算复杂度的降维打击,他对数据真实性的洁癖,是这个行业里最稀缺的重型武器。
是时候亲自下场试一试了。
不过,江临的头脑异常清醒。
他知道,能一眼看穿一条代码流水线在哪里偷偷骗自己,和拿著真金白银去赌明天开盘后那个上躥下跳的k线,完全是两码事。
从替別人处理底层数据,到真正带著自己的钱踏入血肉横飞的实盘战场,这中间隔著的是一整个他从未涉足过,充满了非理性情绪,黑天鹅事件和流动性枯竭的残酷世界。
所以,哪怕他的底层技术已经傲视群雄,在交易这件事情上,一切都必须从零开始。
而且,有一条底线不容丝毫退让。
必须是百分之百的自有资金。
不能去找投资人融哪怕一分钱,不能接任何客户的代客理財,不能成立需要备案的私募基金,不能有任何一个需要他去写净值匯报,需要他对外署名的组织结构。
只有他自己的钱。
资金的转入和转出,只在他一个人的银行帐户和证券帐户之间封闭循环。
策略的叠代,风控的警报,每天的盈亏数字,只有他一个人知晓。
对於他来说,这台赚钱机器越是悄无声息,它就越安全。
安全,凌驾於一切收益之上。
打定主意,江临开始搭台子。
他直接略过了股票市场。
a股的规则体系,对想要做程序化交易的散户来说,处处都是厚重的高墙。
t+1的交易制度,直接锁死了他想在日內验证的绝大多数高频微观结构和均值回归逻辑。
高昂的印花税,无法轻易做空的单边市,以及各大券商对个人投资者接入量化api接口的严苛限制,都让这里不適合成为他的第一块试验田。
虽然etf、可转债、融资融券也有各自的缝隙,但对江临现在这个资金量和身份来说,绕进去只会把合规、接口和策略复杂度全部拉高。
最后,他把目光投向了商品期货市场。
用自己的身份证,在一家头部期货公司开了户。
开户,视频认证,做繁琐的风险承受能力適当性评测,签下並在镜头前宣读那一摞厚厚的风险揭示书。
帐户开通以后,江临原本以为下一步就是把api密钥接进自己的伺服器。
结果期货公司客户经理髮来的下一封邮件,把他的计划往后按了一截。
程序化交易接口需要单独申请。
仿真环境测试记录、最大单笔手数、每日最大委託次数、异常断线后的处理逻辑、是否具备自动撤单和风控熔断,都要填进表里。
江临花了一天,把仿真环境里的行情订阅、下单、撤单、成交回报、断线重连、资金查询全部跑了一遍。
第二天,正式接口权限才开通。
接下来,才是基础设施的搭建。
他务实地租用了一台国內骨干网节点的低延迟云伺服器。
这台伺服器当前阶段的作用很朴素。
提供稳定的网络连接,一个配置固定的lux运行环境,能够做到724小时断电不断跑,並且把行情接口推过来的每一个tick数据、系统发出的每一条委託单日誌,巨细无遗地完整存档留下来。
在交易的第一阶段,江临要的不是天下武功唯快不破的极速。
是別在关键行情时突然掉线,別在发生系统性错误时丟失排查所需的底层记录,別让笔记本电脑的一次意外休眠或者dows系统的一次强制重启,毁掉他一整天的心血验证。
至於量化软体栈,他並没有陷入极客常有的从头造轮子的执念中去手写整个行情接收引擎。
而是果断採用了一套经过无数实盘验证,开源的轻量级交易框架,用它来接入期货公司的ctp接口负责通讯。
而在最核心的策略计算层,他平滑地將自己开发的ps-tile时序资料库,以及那些被ps-kernel用零一原理证明过绝对正確,並在底层微架构上被压榨到极致的窗口算子,严丝合缝地缝合进数据处理的最底层。
有了这套地基,他的特徵计算引擎,运转得快得令人髮指。
但江临心里跟明镜一样清楚。
底层代码跑得快,只是基础性能的胜利。
它绝不是他在这个吃人不吐骨头的资本市场里的胜负手。
量化交易,真正的生死劫,在回测这两个字上。
而江临做回测的第一条铁律,正是从那个被他亲手捅破统计量混用漏洞的平台basele上,用別人的血泪教训换来的。
不许骗自己。
在这个行业里,他见过太多美得令人窒息的回测曲线了。
那个平台的官方basele,把训练集和测试集放在一起做標准化,让未来的信息悄悄渗进了过去,回测曲线漂亮得能骗过一屋子人。
所以江临给自己定的规矩是,任何一个交易信號的生成,在模擬系统走到歷史的某一时刻t时,它所能调用的,能看到的数据,只能是t时刻及t时刻之前真实存在且已经发生的数据。
哪怕是t+1毫秒的未来数字,也绝对不许有一丝一毫漏进当前状態机的计算內存里。
除了未来函数,商品期货市场还有一处专门坑杀无数量化新兵的天然陷阱。
主力合约的换月。
因为期货合约是有交割期的,资金会隨著交割月的临近,从旧的合约大规模迁徙到几个月后的新合约上。
於是,今天市场上成交量最大,被称为主力的合约,和上个月初的那个主力,在物理层面根本就不是同一张合约。
因为仓储成本,季节性供需差异和无风险利率的存在,新旧合约之间天然存在著巨大的价格落差。
当代码简单粗暴地將它们拼接在一起形成一根连续的歷史k线时,图表上会不可避免地出现一个几百点的巨大跳空缺口。
江临知道有多少自信满满的新手,就是在这个其实在现实交易中根本不存在的拼接缺口上,触发了虚假的暴利信號,最终在实盘的绞肉机里死无全尸。
他花了两天时间,亲手写了一套严密的復权与合约平滑过渡算法去抹平这个陷阱。
基础的坑填平后,接下来的,才是真正考验人性的摩擦成本。
交易从来不是在真空的黑板上解方程。
每一笔买卖,交易所和期货公司都要抽走手续费。
当你看到盘口有一个心仪的价格想要吃掉时,因为你的网速和系统延迟,真实成交的价格往往会比你看到的差几个跳动点,这就是滑点。
而当你的资金量稍微大一点,你的一笔市价单砸下去,会直接吃透前几档的掛单,把你自己的成本推高,这就是衝击成本。
绝大多数业余散户和半吊子量化研究员的回测,都是在一个没有摩擦,没有阻力的完美乌托邦里无本万利地赚钱。
一到实盘,光是这些看不见的细微损耗,就足以像行军蚁一样,把帐面上那点微薄的理论利润啃食得乾乾净净,甚至让你倒欠一屁股债。
江临没有丝毫的手软。
每个品种单独建表:最小变动价位、合约乘数、交易所手续费、期货公司加收部分、平今差异、主力合约平均盘口厚度、开盘前三分钟与收盘前五分钟的异常滑点。
然后,再把这些所有可能的摩擦损耗,按照偏悲观的口径,化作一个个惩罚因子,加进回测引擎的代价函数里。
双边最高档手续费,至少一到两跳的滑点惩罚,极端行情下的流动性折扣……
本章未完,点击下一页继续阅读。