第110章 量化的宏图

投票推荐 加入书签 留言反馈

    阶梯结算的第一档,连同基础费一共三十万。
    三十万,在如今这个动輒在网络上谈论几个小目標的时代,似乎算不上什么大数字。
    但对江临这个家庭来说,它绝对不小。
    母亲在菜市场买菜时,为了三毛五毛的差价,可以和摊贩来回拉扯上好几分钟
    父亲更是把节俭刻进了骨子里,可以一年到头连一分钱的额外置装费都不支出。
    可对江临未来要做的事情来说,三十万,又实在太小。
    几台像样的伺服器,几批硬碟,一套高精度传感器套件……
    隨便拆一拆,它就会从一个让普通家庭心惊肉跳的数字,变成表格里几行很快被划掉的预算。
    江临打开自己的资金表。
    录完这一笔后,表格底部的数字跳了一下。
    四月以来,1453这个编號並没有閒著。
    一个復权价格错位的小单,两万四。
    一个停牌状態栏位延迟的小单,一万八。
    一个財报公告日误用的复查,四万二。
    一个股票池倖存者偏差报告,三万六。
    一次旧脚本版本无法復现,平台按加急补了两万。
    还有一次栏位重採样异常,三万一。
    这些外包单子,每一笔的金额都不算大。
    (请记住 101 看书网藏书全,????????????.??????隨时读 网站,观看最快的章节更新)
    但每一次代码与数据的交锋,都在教mps引擎,认识一种现实世界中数据撒谎的狡猾方式。
    在金融的底层,价格可以因为分红而倒著变。
    停牌的物理状態可以在资料库里错位一天。
    上市公司的財报可以像幽灵一样在公告发布前提前出现。
    看似公平的股票池里可以只剩下那些贏到了最后的倖存者。
    而一行看似无关紧要的代码改动,就可以让旧脚本永远也跑不回昨天那条完美的收益曲线。
    到今天这笔三十万的巨款入帐为止,他通过量化相关的底层技术服务,確认拿到手的总收入,已经悄然来到了五十多万的大关。
    不过因为前几轮废土准备、工作站、硬碟、传感器、机加工具和观测设备持续吞钱,现在手头上能够隨时支配的流动资金,也就是三十万出头。
    如果任由这三十万安静地躺在银行帐户里,吃那点微薄的活期利息,它最终只会变成一串被通货膨胀和货幣超发慢慢磨薄的死数字。
    江临认为,自己也许可以让这笔钱,变成一台能够在这片由资本和数据构成的黑暗森林里,自我繁殖的机器。
    这个念头,其实早在他第一次接触量化代码时就已经生根发芽。
    在沈承业那个平台的外围,做了这么久的数据清道夫,从最初的异常检测,到审计baseline 统计量泄漏,到给私募清理陈旧的因子库,再到前几天那条把整个私募机房都拖垮的特徵流水线优化……
    江临已经可以无比確信一件事。
    自己这双手,这颗大脑,以及他所构建的数学物理底层架构,能够在量化交易这门极度內卷的生意底层,看到绝大多数同行终其一生都看不到的微观维度。
    他对计算复杂度的降维打击,他对数据真实性的洁癖,是这个行业里最稀缺的重型武器。
    是时候亲自下场试一试了。
    不过,江临的头脑异常清醒。
    他知道,能一眼看穿一条代码流水线在哪里偷偷骗自己,和拿著真金白银去赌明天开盘后那个上躥下跳的k线,完全是两码事。
    从替別人处理底层数据,到真正带著自己的钱踏入血肉横飞的实盘战场,这中间隔著的是一整个他从未涉足过,充满了非理性情绪,黑天鹅事件和流动性枯竭的残酷世界。
    所以,哪怕他的底层技术已经傲视群雄,在交易这件事情上,一切都必须从零开始。
    而且,有一条底线不容丝毫退让。
    必须是百分之百的自有资金。
    不能去找投资人融哪怕一分钱,不能接任何客户的代客理財,不能成立需要备案的私募基金,不能有任何一个需要他去写净值匯报,需要他对外署名的组织结构。
    只有他自己的钱。
    资金的转入和转出,只在他一个人的银行帐户和证券帐户之间封闭循环。
    策略的叠代,风控的警报,每天的盈亏数字,只有他一个人知晓。
    对於他来说,这台赚钱机器越是悄无声息,它就越安全。
    安全,凌驾於一切收益之上。
    打定主意,江临开始搭台子。
    他直接略过了股票市场。
    a股的规则体系,对想要做程序化交易的散户来说,处处都是厚重的高墙。
    t+1的交易制度,直接锁死了他想在日內验证的绝大多数高频微观结构和均值回归逻辑。
    高昂的印花税,无法轻易做空的单边市,以及各大券商对个人投资者接入量化api接口的严苛限制,都让这里不適合成为他的第一块试验田。
    虽然etf、可转债、融资融券也有各自的缝隙,但对江临现在这个资金量和身份来说,绕进去只会把合规、接口和策略复杂度全部拉高。
    最后,他把目光投向了商品期货市场。
    用自己的身份证,在一家头部期货公司开了户。
    开户,视频认证,做繁琐的风险承受能力適当性评测,签下並在镜头前宣读那一摞厚厚的风险揭示书。
    帐户开通以后,江临原本以为下一步就是把api密钥接进自己的伺服器。
    结果期货公司客户经理髮来的下一封邮件,把他的计划往后按了一截。
    程序化交易接口需要单独申请。
    仿真环境测试记录、最大单笔手数、每日最大委託次数、异常断线后的处理逻辑、是否具备自动撤单和风控熔断,都要填进表里。
    江临花了一天,把仿真环境里的行情订阅、下单、撤单、成交回报、断线重连、资金查询全部跑了一遍。
    第二天,正式接口权限才开通。
    接下来,才是基础设施的搭建。
    他务实地租用了一台国內骨干网节点的低延迟云伺服器。
    这台伺服器当前阶段的作用很朴素。
    提供稳定的网络连接,一个配置固定的linux运行环境,能够做到7*24小时断电不断跑,並且把行情接口推过来的每一个tick数据、系统发出的每一条委託单日誌,巨细无遗地完整存档留下来。
    在交易的第一阶段,江临要的不是天下武功唯快不破的极速。
    是別在关键行情时突然掉线,別在发生系统性错误时丟失排查所需的底层记录,別让笔记本电脑的一次意外休眠或者windows系统的一次强制重启,毁掉他一整天的心血验证。
    至於量化软体栈,他並没有陷入极客常有的从头造轮子的执念中去手写整个行情接收引擎。
    而是果断採用了一套经过无数实盘验证,开源的轻量级交易框架,用它来接入期货公司的ctp接口负责通讯。
    而在最核心的策略计算层,他平滑地將自己开发的mps-timeline时序资料库,以及那些被mps-kernel用零一原理证明过绝对正確,並在底层微架构上被压榨到极致的窗口算子,严丝合缝地缝合进数据处理的最底层。
    有了这套地基,他的特徵计算引擎,运转得快得令人髮指。
    但江临心里跟明镜一样清楚。
    底层代码跑得快,只是基础性能的胜利。
    它绝不是他在这个吃人不吐骨头的资本市场里的胜负手。
    量化交易,真正的生死劫,在回测这两个字上。
    而江临做回测的第一条铁律,正是从那个被他亲手捅破统计量混用漏洞的平台baseline 上,用別人的血泪教训换来的。
    不许骗自己。
    在这个行业里,他见过太多美得令人窒息的回测曲线了。
    那个平台的官方baseline,把训练集和测试集放在一起做標准化,让未来的信息悄悄渗进了过去,回测曲线漂亮得能骗过一屋子人。
    所以江临给自己定的规矩是,任何一个交易信號的生成,在模擬系统走到歷史的某一时刻t时,它所能调用的,能看到的数据,只能是t时刻及 t时刻之前真实存在且已经发生的数据。
    哪怕是t+1毫秒的未来数字,也绝对不许有一丝一毫漏进当前状態机的计算內存里。
    除了未来函数,商品期货市场还有一处专门坑杀无数量化新兵的天然陷阱。
    主力合约的换月。
    因为期货合约是有交割期的,资金会隨著交割月的临近,从旧的合约大规模迁徙到几个月后的新合约上。
    於是,今天市场上成交量最大,被称为主力的合约,和上个月初的那个主力,在物理层面根本就不是同一张合约。
    因为仓储成本,季节性供需差异和无风险利率的存在,新旧合约之间天然存在著巨大的价格落差。
    当代码简单粗暴地將它们拼接在一起形成一根连续的歷史 k 线时,图表上会不可避免地出现一个几百点的巨大跳空缺口。
    江临知道有多少自信满满的新手,就是在这个其实在现实交易中根本不存在的拼接缺口上,触发了虚假的暴利信號,最终在实盘的绞肉机里死无全尸。
    他花了两天时间,亲手写了一套严密的復权与合约平滑过渡算法去抹平这个陷阱。
    基础的坑填平后,接下来的,才是真正考验人性的摩擦成本。
    交易从来不是在真空的黑板上解方程。
    每一笔买卖,交易所和期货公司都要抽走手续费。
    当你看到盘口有一个心仪的价格想要吃掉时,因为你的网速和系统延迟,真实成交的价格往往会比你看到的差几个跳动点,这就是滑点。
    而当你的资金量稍微大一点,你的一笔市价单砸下去,会直接吃透前几档的掛单,把你自己的成本推高,这就是衝击成本。
    绝大多数业余散户和半吊子量化研究员的回测,都是在一个没有摩擦,没有阻力的完美乌托邦里无本万利地赚钱。
    一到实盘,光是这些看不见的细微损耗,就足以像行军蚁一样,把帐面上那点微薄的理论利润啃食得乾乾净净,甚至让你倒欠一屁股债。
    江临没有丝毫的手软。
    每个品种单独建表:最小变动价位、合约乘数、交易所手续费、期货公司加收部分、平今差异、主力合约平均盘口厚度、开盘前三分钟与收盘前五分钟的异常滑点。
    然后,再把这些所有可能的摩擦损耗,按照偏悲观的口径,化作一个个惩罚因子,加进回测引擎的代价函数里。
    双边最高档手续费,至少一到两跳的滑点惩罚,极端行情下的流动性折扣……
    所有的摩擦参数加完之后,重新按下回测按钮。
    几秒钟后,屏幕上那条原本还算平滑向上的收益曲线,仿佛被人当头重重地敲了一记闷棍,肉眼可见地塌陷下去了一大截。
    坡度变得平缓,回撤的坑洞变得深邃,整体看起来像是一条崎嶇不平的破旧山路。
    看著这条变得无比丑陋的曲线,江临不仅没有沮丧,反而长长鬆了一口气。
    丑,就对了。
    丑,才是这个残酷市场的本来面目。
    丑,才是真的。
    其实,在这个阶段,只要他愿意,凭藉他的数学直觉和mps引擎强大的算力,他完全可以回过头去,在策略库里加入几十个复杂的非线性参数。
    他可以轻鬆地用遗传算法或是深度学习,將这几十个参数反覆微调、暴力搜索,直到把那条曲线重新餵得又陡峭又平滑又漂亮。
    可江临比谁都清楚,这种精心餵出来的漂亮曲线,仅仅只对过去那段他用来调参的歷史数据成立。
    这就像一套只为特定尺码量身定做的紧身衣。
    一旦把它拿到充满未知噪音的明天去实盘运行,它就会因为市场的轻微变形而瞬间崩线,原形毕露。
    那根本不叫投资策略。
    在统计学上,那叫对歷史数据的极度过擬合。
    不过是披著高科技外衣的假象。
    所以,江临在这无数个华丽的算法选项中,最终挑选了一个逻辑简单到近乎朴素的系统。
    这个策略的底层逻辑乾净,只有寥寥两三个参数。
    不追求抓住每一次微小的波动,也不奢求在暴跌中逆市抄底。
    但它的韧性极强,在被江临切分出的好几段包含牛熊转换,黑天鹅暴跌,长期横盘的完全不同的歷史区间里,虽然表现得磕磕绊绊,但都能稳稳地维持住一个始终为正的数学期望优势。
    第四天,万事俱备,江临正式连接了实盘伺服器的api密钥。
    他上线了。
    但他投入的仓位小得可怜。
    帐户里躺著整整三十万,但在第一次启动策略时,他只动用了其中极小一部分本金作为保证金。
    对於系统发出的每一笔开仓指令,其背后的风险敞口,都被他用严密的底层资產波动率模型死死框住,绝不暴露在黑天鹅的直接打击范围之內。
    不仅如此,他还在这套系统里,写下了一道带有自毁倾向的物理熔断级別回撤线。
    一旦触发,整个自动化交易系统会在交易网关层被硬熔断,撤销全部未成交委託,禁止新开仓,只保留平仓指令。
    停手,离场。
    绝不补刀,绝不因为亏损而赌气翻倍加仓。
    现在的江临,手里握著三十万,凭藉他赚外包费的能力,他其实完全赌得起这点前期的试错成本。
    这几天夜里,张秀芬好几次端著切好的水果进来,看见儿子又对著满屏幕的数字和曲线发呆。
    “儿子,这都刚高考完好几天了,怎么还天天闷在屋里弄电脑?”
    张秀芬把果盘放在书桌边缘,语气里满是心疼和不解。
    “你现在都已经是连新闻上都夸的大数学家了,没必要再把自己逼得那么紧啊。你看看人家瑶瑶,一考完,第二天就拉著几个同学去大理旅游放鬆去了。你也出去转转,或者找同学打打球啊。”
    “在整理一些底层的结构数据,快弄好了,妈。“江临头也没抬,手却很自然地切走了那几个绿红跳动的窗口。
    张秀芬看著儿子全神贯注的背影,只能无奈地嘆了口气,叮嘱了一句注意休息,別把眼睛看坏,便带上门退了出去。
    在她的认知里,她只当那块最近全世界都在疯传的江氏砖,还有著无数深奥的后续问题需要自己的天才儿子去解答。
    没有人会把一个高三毕业生屋里的电脑,和几百公里外某个金融数据中心里,正在接收交易所行情流的伺服器联繫到一起。
    话说回来,实盘开启的第一天,冷酷的市场著实给这位初出茅庐的天才少年,结结实实地来了一个下马威。
    儘管江临已经在回测里把摩擦成本调得很高,但现实世界的复杂性依然超出了静態模型的预测。
    有几笔基於动量突破的追单,当系统的市价单砸向交易所的瞬间,原本掛在那里的微弱流动性就像受惊的鱼群一样瞬间撤单消失。
    这导致这几笔单子的真实成交均价,比他在回测里假设的最差情况,还要再恶劣一到两个跳动点。
    真实盘口的流动性,在算法资金和游资的反覆撕咬下,远没有歷史切片数据里看上去那么温柔和充沛。
    第一天收盘,系统结算,小亏了几百块。
    换作任何一个普通的交易新手,甚至是一些缺乏经验的量化研究员,在这个时候大概率会开始慌乱。
    会开始怀疑自己的策略逻辑是不是出了根本性的错误,会手忙脚乱地在盘后修改参数,把均线的周期调长一点,或者把止损的幅度放大一点,试图在回测里把今天这几百块钱的亏损给抹掉。
    江临只是冷静地把这一天系统发出的几十笔真实成交记录全部导出来。
    然后將这几十笔成交的时间戳、价格、滑点,与本地回测引擎在相同时刻生成的模擬成交单,一行一行一笔一笔地对了一遍。
    最终得出的结论是,亏损不是因为核心的交易策略逻辑错了。
    单纯是因为他在成本模型中,对实盘突破瞬间的滑点和流动性枯竭估计得还不够悲观。
    確认了这一点后,江临没有去动策略代码库里的哪怕一根毫毛。
    只是打开环境配置文件,將成本模型里的滑点惩罚参数,再次往更恶劣更悲观的方向,调大了一格。
    让回测更逼近那个恶意满满的真实世界。
    第二天,依旧是机器全自动运行,江临只做旁观。
    第三天,第四天,第五天。
    五天数据当然不能证明策略有效。
    但至少有一件事可以確认,实盘没有出现一眼可见的系统性偏离。
    成交方向、滑点分布、手续费消耗、撤单失败率、日內权益波动,都落在他本地沙盒给出的悲观区间內。
    就第一周来说,已经足够。
    因为这恰恰是江临最想要看到的结果。
    实盘的每一次呼吸都和回测的推演对得上,这说明,从数据清洗,特徵提取,信號生成,一直到最后的订单路由,他没有在任何一个微小的环节欺骗过自己。
    周五下午三点,他选定的那组白盘品种结束了本周最后一个交易时段。
    江临没有把夜盘纳入第一周样机测试。
    夜盘流动性、突发消息和断线风险更复杂,那是下一阶段的变量。
    如此结束了第一周的交易。
    他调出后台的清算结算单,把这五个交易日的流水做了一个总清算。
    刨掉付给交易所和期货公司的所有手续费,因为盘口跳动而產生的每一次实打实的滑点损耗,第一天因为模型误差而產生的那笔真金白银的亏损。
    帐户,在扣除了一切现实摩擦后,净赚了一万多块钱。
    【初始资金:300,000.00 元】
    【当前权益:310,842.63 元】
    【净收益:10,842.63 元】
    【周收益率:3.61%】
    【最大回撤:1.18%】
    区区一万块钱,比起他抓几个系统漏洞动輒几万块的报酬来说,似乎显得微不足道。
    可是当江临看著这几个不起眼的数字时,他內心的那种踏实与兴奋交织的震颤感,甚至比当初他推导出窄定理某个关键引理时还要强烈几分。
    因为这不仅是一万多块钱。
    更是一套他从零开始,一行代码一行代码亲手搭建起来,並且在真实的血肉磨盘中亲自验证过,成功扛住了第一周真实市场极限摩擦考验的活体系统。
    它现在的確很小。
    但只要流程是严密的,数据没有骗他,成本没有被他故意忽略,风险敞口被关在笼子里,这套系统就具备继续叠代的资格。
    它现在小,仅仅是因为有两样东西,目前都还处於幼苗阶段。
    第一样,是他的本金。
    这一万出头的利润,根本不是用三十万全仓跑出来的,而是三十万里那被他严格控制风险敞口,极小的一撮边缘本金跑出来的结果。
    只要这套系统能活著,隨著时间的推移,复利的齿轮开始咬合,本金的雪球越滚越大,这个绝对利润的数字自然会水涨船高。
    另一样,是他的策略深度。
    他现在掛在实盘上跑的,仅仅是一个为了跑通全部底层数据链路而选用的基础动量系统。
    因为坦白讲,在面对真正的金融市场时,他依然承认自己是个交易领域的新手。
    对市场微观结构这门复杂手艺的理解,才刚刚拉开帷幕。
    但手艺是可以通过实战继续打磨的。
    而他手里握著的最强王牌,mps架构,是能够隨著他在废土和现实世界数学研究的深入,而不断叠代升级的。
    他无比篤信,隨著他底层架构技术力的每一次跃迁,他对算力压榨的每一次提升,他都能在这个波譎云诡的市场里,找到更深层的非有效性规律,从而从这台无情的机器里,榨出十倍甚至百倍的现金流。
    本金,策略,底层工具链。
    这三样东西,会像三台互相咬合的巨型涡轮,在未来的日子里一起加速往上滚。
    当然,江临的头脑异常清醒。
    他知道,现在的小资金能跑出3.61%的周收益,並不代表未来资金量变大后还能维持这个比例。
    当资金量膨胀到一个临界点,庞大的订单本身就会成为惊动市场的巨鱷,它自己就会把策略原本依赖的微小套利机会瞬间踩得粉碎。
    到那时,衝击成本將呈指数级上升。
    这还需要他在未来的实盘中不断地去试探,去测试那个隱形的容量边界。
    所以,即使在脑海中描绘出了一幅足以让人疯狂的宏大蓝图,江临依然没有飘起来。
    市场是一头隨时会反咬一口的怪兽,任何一个在当前看起来有效的简单优势,都会隨著时间的推移和其他聪明资金的涌入而迅速衰减。
    今天帐户里多出来的这点利润,到了下个星期一的早晨,就极有可能因为一个突发的宏观政策而凭空蒸发,甚至让他倒亏本金。
    他收回思绪,打开桌面上一个名为trading_journal的加密文档。
    把这实盘第一周內的每一笔真实成交,每一次盘中与回测的细微偏差,以及他亲手调过的每一格滑点假设参数,都一字不落地记录进了电子日誌里。

章节目录