工作五年

工作五年了,也算是达到资产收益大于生活开销的目标。至于资产收益的来源,在对冲基金做量化交易,个人交易肯定是要申报审批的,很麻烦。索性放到公司内部的基金里,有什么问题自己动手修好,也算是一定程度上管理着自己的资金了。感觉比常规公司那种发股票的还是要更直接一点。当然这个资产收益并不是纯粹被动的,也不是完全保险的。但试问世界上哪里有完全保险的投资呢?世界总是变化着的,也是充满矛盾的。

一些矛盾

投资收益率与资产规模的矛盾。一般而言,同样的策略,资金规模越大,收益率会越少。所以除了一些门槛性的东西,小资金总是比大资金更容易获得高的收益。这里门槛性的东西最经典就是像巴菲特那样把公司买下来,然后从某种程度上推动公司改变经营上的策略。尽管如此,小资金想获得高收益还是容易得多。所以有时候看到知乎上面有些回答拿自己个人交易记录黑管理上百亿的大基金收益率的,还是默默地点下反对,毕竟难度是不对等的。这个基本的规律带来了另外一个问题,投资者的利益和基金的规模本质是对立的。我也不太希望公司的资金规模涨得太快,这样我投在公司的资金收益只会下降。

员工利益与公司利益的矛盾。给员工越多,公司所能剩下的资金就会越少。分配问题似乎永远没有最优解,不可能让所有人对分配方案都满意。还是要集中精力提高公司的盈利能力,把蛋糕做大,让可分配的资源更多才是硬道理。最怕大家都不患寡而患不均,不聚焦到公司整体盈利能力的提升上。当你对公司的盈利能力做出重大贡献的时候,自然而然地收入就会上来了。

赚钱和发表成果的矛盾。量化交易的研究成果天然需要保密,当做出一些好的,甚至是超前的研究的时候,不但不能发表,甚至在公司内部也要保密。本质上有两点,一是机会就那么多,互相抢的话盈利就下来了,二是因为如果很多人和你用同样的策略,那么别人爆仓的时候会把你也炸了,这是十分危险的。不过商业机密这种东西,别的行业也多多少少有吧。好处也是有的,研究成果通常可以直接转换成公司的盈利,转换成自己的奖金。简单来说就是闷声发财,也只能闷声发财。这也是这几年都没怎么写博客的一个重要原因。当你每天思考的东西,大多是不能跟别人交流的,有时候也是有点尴尬的。

一些习惯

我希望用最简单明了的方式来描述我的想法。做研究本来就复杂,如果不能用简单的方式直指出最核心的东西,交流起来很容易出现困难。跟父母沟通的时候也是如此,在对方不是特别了解相关内容的情况下,如何清晰地将想法传递给对方,还是很有讲究的。个人特别不喜欢一些晦涩的术语,因为感觉说出来又不带解释的话,就有点说的话本来就没想让别人听明白的感觉。

观点尽可能地客观,稳定。观点应该是这样的:观点=f(信息),而不是:观点=f(信息, 情绪)。新的信息一般来说是没那么多的,如果一个人频繁地变换观点,那他的观点通常是情绪推动的,大概率并不客观。当我察觉自己的观点发生转变的时候,就会慎重地重新审视一遍“信息”有没有大的变化。如果没有,那就说明很可能是情绪推动着我观点的转变,这在投资里是很危险的。又比如这次新冠疫情前后,很多人的观点从“欧美什么都牛”转变成“中国什么都牛”,但其实很多领域并没有那么大的变化。抗疫中国做得最好是毫无疑问的,这值得骄傲,但是如果演变成傲慢,对国家发展也是没有好处的。

聚焦到最重要的事情上面。之前博客挂在Linode上经常要升级服务器系统、php、数据库之类的,现在搬到wp engine上,就是纯粹托管一个wordpress就行了,没必要一直折腾这些不重要的东西。生活上也是,只要是能有效节省时间精力的产品/服务,付出一些额外的开销也是可以接受的。以前喜欢在很多的事情上亲力亲为,现在还是倾向于让专业的人来做专业的事。明白自己最核心的价值并聚焦在上面才是提高产出最重要的事情。之前有一些自己一手建立的项目,后来是让别人去管理维护了。一开始觉得有些怪怪的,后来觉得那些事情是我的同事也能做的,而我现在主要的工作算是别的同事不太能接手的,聚焦在这上面也没什么不好的。

虽然还有很多可以说的,但是就写到这里吧,是时候饮茶了。

交易是如何进行的?

这篇2017年发在知乎上,现在觉得还是备份到自己博客比较好。

入职QC当Quant也半年了,总体感觉还是很棒的,项目难度相比以前在Google大一些。但公司只有我一个中国人比较囧,还好fqw大大在12月份也准备加入敝司。想了不少东西,但觉得其中最重要的还是一些根源性的问题。

而里面最本质的就是:

交易到底要做一些什么?

相信每个交易者都试过面对色彩斑斓的行情不知道该做什么。大部分人也看过各种大V说要怎么看基本面、技术面,看的时候用什么指标,要怎么使用等等。这些固然都有用处,但是当他们互相冲突的时候,就没办法分清楚对错了。

为了解决我们到底要做什么这个问题,先让我们来理清楚交易的输入和输出。

输出我们都很清楚,下单或者什么都不做。

输入的话,就比较五花八门了,但是其中比较常见的有这么几种。

  • 市场交易数据
  • 基本面数据
  • 言论观点
  • 交易规则
  • 人生经验等玄学向的先验知识

市场交易数据的本质是市场上所有人下单操作构成的集合。基本面数据就包括很多了,除了来自公司财报与资本运作(定增、可转债等)以外,还包括行业的整体供需数据,利率,经济数据等等。言论除了新闻,论坛以外,还包括研报,整体社会大众的观点等等(巴菲特的别人恐惧时我贪婪相信做过交易的人都听说过)。交易规则这个对于单做国内市场的人可能没什么感受,但是放到全球会发现怎么好像全世界的交易规则都不一样。人生经验这个东西和每个人的阅历有关系,形式各异,但大致上是一种类比,觉得这个情形和某个见过的情况类似,那么他们可能会有相同的性质。

现在输入输出都清楚了,那么我们要做的事情就是构建一个函数f

[公式]

然后这个函数就是“交易”的本体。

如何作出更好的交易

从上面简单的式子来看,要作出更好的交易,有以下几个方向。

  1. 提高数据的质量和数量
  2. 提高对数据的分析能力
  3. 提高f的计算速度,这样可以抢得一些明显的机会

总的来讲,数据为我们提供了一个交易对象的信息,而我们根据这些信息去分析认识这个对象的状态,最后作出判断。由于我们不可能完全获得一个交易对象的信息(我们甚至都没有办法获得自己朋友的所有信息对吧...),所以在分析能力和计算能力足够的情况下,信息肯定是越多越好的。对,我就是在反驳那句“一切都包含在价格当中”的江湖传言。

尽管如此,我们的分析和计算能力并不是无限的,那么这时候人类经常会做的就是抓重点。舍弃部分数据或者将数据模糊地概括是最常见的做法,而这种方法的极端就是不在意短期波动的价值投资和“一切都包含在价格当中”的技术派。一种是极度忽略市场交易数据,另外一种是极度忽略基本面等场外数据。这些信息都是交易对象的重要特征,忽略任何一部分,都是在放弃对交易对象更精确的建模。当然,这两种数据无疑都是影响力很大的,拥有深入分析任何一种的模型,对盈利来讲就够用了。只是这样显然是有些浪费这种信息所能带来的价值了。而用Ensemble Learning组合这些各方面的模型,在Quant里则是非常经典的方法。从这个角度上看,个人觉得机器对这些数据的利用能力早晚会比人类强的,这是大趋势。

但这并不意味着人类就早晚没啥事干了。这个世界上充斥着大量在线下才能获得信息的。比如说人类可以去股票背后的公司进行调研,查看公司生产销售情况,可以看懂国家规划的大方向等等。这些线下的信息处理要全自动,必须人家来配合,而且收集他们合不合法还不知道呢。

这扯得有点远了,目前机器的能力要谈完全利用数据里的信息还是很有距离的,回到如何作出更好的交易这个话题。对于手工交易,因为人脑有限的数据处理能力,解决方法当然是不断地抓重点。虽然这浪费了很多信息,但是依然是一个相对可靠的做法。比如要预测一天以后的股价,你可能觉得市场交易数据决定了90%的变化,然后你完全抛下剩下的10%。然后市场数据里,最近一年的走势特别决定了90%,于是你决定只看最近一年的价格走势。然后一年下来所有实时交易的数据量太多了,日内的实时走势好像没那么重要,于是你把每天的走势总结成“开盘价,收盘价,最高价格,最低价格”,也就是日K线。有了日k线组合,你发现这像是禅师说的中枢下沿,第二类买点,于是你重仓买入...

显然这每一步都是对信息的“有损压缩”,到最后你看的“第二类买点”,可能对于原来第二天价格的决定性只有 [公式] 。这还是非常理想的90%的情况,万一某个分支选了低于50%决定能力的特征提取方式,感觉和买彩票差不多。

用Quant的方法来做的话,也是一级一级地提特征,但是能同时考虑到所有分支罢了,反正也是一层一层有损压缩,最后一拍脑袋,就压成了预测价格。

对目前形势人工交易的看法就是:我们看那么多书,懂得这么多金融各路东西的道理与联系,最后对自己的交易起影响作用的,就是你自己心里觉得重要的东西罢了。所以抓对重点的能力真的是无比重要。

以上是分析方法的方向,在数据层面上,巴菲特也讲了,只买自己懂的公司。非常直观地阐述了数据的重要性。你有足够的信息,才能相对精确地刻画出描述它的模型。否则你看到的那些东西对公司的将来可能并不是什么具有决定性的东西,用那些信息来买起来大概和玩彩票差不多。

其实通篇下来并没有什么操作上的干货,但这是一个能把我自己看的东西都融进来的框架。哪天市场送一波开始狂妄的时候,拿出来看看自己是哪一点变强,如果没有,那心里就有数了:这完全是天给饭吃罢了。

从Google到Quadrature Capital

发生了什么

本马甲从浙大CS本科毕业之后,在Google伦敦干Software Engineer一年多,跳槽到了一家在伦敦名为Quadrature Capital的对冲基金做Quant Developer。

无论未来怎么样,这都是一个人生重要的转折点。

从互联网到金融;从大公司到小公司;从旁敲侧击,到直面自己的理想。

理想

首先必须明确我的理想是开对冲基金。

做这件事的原因是要帮助那些信任我的小伙伴们获得财务自由,能去追寻自己真正想要的东西,能多一些时间分给亲朋好友。见过了太多太多的朋友把闲钱放在活期账户里,吃着活期利息。虽然财务自由的定义众说纷纭,但是大致就是资本收益要能覆盖日常的支出。那么最简单地说:

资本收益=资本\times 收益率

因为不可能在资本上帮,那只能从收益率上帮了。

自己发大财当然好,然而带着大家一起发家致富才是真男人吧!

种子

大概是大四的期间经历了那波大牛市,开始萌生了做对冲基金的想法。那时候每周在学校去听老李讲股票,讲A股背后的各种资本运作,基本面,技术面,如何估值等等,自己也操作了一段时间股票。后来见到股灾又去开了股指期货,自己看各种材料想了很多,也学了不少。

家庭是金融背景,加上我自身的技术背景,怎么看做Quant都是一个非常适合的方向。另外看了一下本站里自己写的博客,这两个方向也特别明显。这么说吧,我大概是搞技术的里面比较懂金融的,搞金融的里面比较懂技术的。虽然中间也对各类互联网商业模式有了自己的思考,但很多时候是以服务于投资的心态去了解的。所以对冲基金这个方向也就可以理解了吧。

继续阅读“从Google到Quadrature Capital”

回顾那些自己展现出优势的时刻,大多是因为自己做了别人没做的事情,思考过别人没思考过的问题。当发现自己因为困难而想回避的时候,恰恰是提升水平的绝好机会。

分享一个看A股各种估值数据走势的方法

www.jointquant.com

上面点『我的策略』

比如要看市盈率曲线:

def initialize(context):
    g.security = '000826.XSHE'

def handle_data(context, data):
    security = g.security
    df = get_fundamentals(query(
        valuation
    ).filter(
        valuation.code.in_([security])
    ).order_by(
        valuation.market_cap.desc()
    ))
        
    # df 包含各种数据,把下面的'pe_ratio'改成别的就能画出其他数据的曲线
    record(pe_ratio=df['pe_ratio'][0])

df里有的域是
id
code
pe_ratio
turnover_ratio
pb_ratio
ps_ratio
pcf_ratio
capitalization
market_cap
circulating_cap
circulating_market_cap
day
pe_ratio_lyr
默认的pe_ratio是TTM的,非常科学。

敲进去以后,选择要想获得的日期范围再运行,结果就出来。