量化交易
量化交易是指以先进的数学模型替代人为的主观判断,利用计算机技术从庞大的历史数据中海选能带来超额收益的多种“大概率”事件以制定策略,极大地减少了投资者情绪波动的影响,避免在市场极度狂热或悲观的情况下作出非理性的投资决策。
就职公司
以前我做什么
2014年毕业, 接触客户端的C++开发工作, 当时主要使用的是window下的duilib开发, 在15年的时候转向linux后端开发, 后面岔开一年左右负责PHP后端开发工作, 直到17年继续负责行情后端的研发, 在18年左右, 正式成为了公司行情后端的组长, 随后一直负责行情后端. 期间带领团队重新建立起了一套完整的行情后端服务, 支持高可用, 水平拆分, 垂直拆分等, 除开一些基础库之外, 全部使用自己编写的框架, 将公司的后端技术水平提升到行业前列.
转方向
与其说是转方向, 不如说是开拓一片新的天地, 行情相关的项目, 已经被我玩透了, 在我手下估计很难再玩出花来. 而量化交易是一片新的蓝海, 可以从0到1搭建出一个完整的量化交易项目, 再均衡各种利弊之后, 依然决定跳出以前的项目组, 转向量化交易.
量化交易系统到底在做什么
从20年开始, 公司资管部门的负责人就已经跟我再搭线, 帮忙做量化交易系统。那么到底什么事量化交易系统呢? 网上有很多种定义, 但是从程序员的角度上看呢, 量化交易 = 策略 + 机器交易, 策略根据行情,持仓等各种因素产生交易信号, 然后程序化的下单。虽然只有两句话, 但是实际里面的行为是非常复杂的, 市面上的量化交易系统, 大多比较复杂, 看他们的PPT都吹得牛逼哄哄的, 也不知道是真的还是假的. 但是每个公司的需求不一样, 做出的量化系统也各有千秋.
需求
我们资管本身是公司内部的私募机构, 主要做的是alpha的指数增强, 当前我们最大的需求是实现收益的增厚, 所以我们最大的需求是日内T0策略的上线. 那什么是日内的T0呢, 日内T0就是今天买的票,今天必须卖出. 因为A股市T + 1的, 所以要实现日内T0, 必须持有底仓, 可以买入新的股票, 然后日内卖出底仓, 实现T0. 当alpha策略必须持有底仓的时候, 如果叠加日内T0策略, 将能非常有效的实现收益的叠加.
我们量化交易系统的组成部分
因为工作问题, 我们不能将这个地方讲的非常的细致, 但是也可以大体说说, 核心量化交易系统大体包括三部分, 策略系统, 行情系统, 交易系统. 三个系统完整独立, 又互相依赖. 行情系统接收数据并加工之后会发送给策略系统, 策略系统根据行情以及其他数据会产生交易信号, 发送给交易系统, 交易系统收到信号之后发送给对接的柜台, 并将结果及时反馈给策略系统. 这样就构成了一个核心的量化交易系统。市面上的系统特别复杂,大多是因为加入了各种辅助系统, 比如策略系统啊, 回测系统啊,历史行情啊诸如此类的, 所以显庞大. 但是实际上最为核心的应该就这个了.
为什么用C++
首先肯定是因为我会啊!如果有了解量化交易的小伙伴, 应该都知道大多的量化交易系统用的是python, 比如米匡啊, 聚宽啊, vnpy啊之类的. 实际上都行, 主要取决于策略是否对行情敏感, 对延迟是否敏感等, 如果你的策略是分时类型的, 而且本身持有的股票较少,应该python就能满足了, 但是T0的许多策略是盘口类型的, 对盘口敏感, 而且我们多策略持仓量大, 需要更高的性能, 所以我们使用C++, 但是我个人觉得其他静态语言一样的可以, 比如java啊, rust都行, 只要你擅长, 基本上都能。
目标
我的目标是做成行业一流的量化交易服务商, 当前做得还很浅, 而且只在T0这一个方向上深耕, 但是我们的目标是星辰大海.
招聘
因为从行情组到现在的量化组, 是净身出户的, 并没有带小伙伴过来, 来了之后也入职了几位非常不错的小伙伴, 但是相对于我们的目标还远远不够, 如果有想加入的小伙伴, 欢迎勾搭, 也欢迎推荐. 可以关注我的订阅号, 私信我.
欢迎大家订阅雀观代码, 关注量化交易路程上, 程序员的故事.