今天不顺。中午 mentor 找我吃饭谈话,指出我进度太慢了,而且思路可能不对,折腾半天没能出活。不过我之前确实思路很不清晰,现在稍微有一些思路但是也不能确定到底有没有用。在量化实习这一方面,我似乎还没有得到什么正反馈,对于手头的工作能不能作出成果没有信心。 下午抓紧时间弄了弄黑色板块整体的择时,发现做不出来。于是还是先从 hc 着手,看看能不能先把一个个品...
阅读全文
上午继续昨天的工作,又跟那个数据指标死磕了一会,简单移动平均线(SMA)对最近的极端趋势反映能力较弱,因此我将其替换成了指数移动平均线(EMA),再取一次时序滚动排序值,以此作为最终的因子。测试了一下,效果不算很好;替换了几组不同的参数,发现收益对参数比较敏感。于是,我以 5 为步长,对 EMA 的 $\alpha$ 和时序滚动排序值的窗口参数网格寻优,发现...
阅读全文
果然不对劲,空头的持仓就应该是负数不是正数。这个回测框架要求 nShortRatio 必须是正数,否则不会做空。也就是说我昨天的回测结果是错的,这个策略真实性能不行。此外,weight 参数不能设置成 False 也是一个 bug,跟我的数据没关系。跟负责这个回测框架的同事掰扯半天,他终于认真去改框架了。 一想到接下来还是必须使用这个回测框架就令人抓耳挠腮。...
阅读全文
故事的开头就像只是普通写实的小说,除了“叫乌鸦的少年”令人联想到多重人格以外,似乎就是一本普通的少年离家出走的故事。而野游的孩童们集体晕倒又失去记忆,也似乎会在后文给出什么科学的解释。 然而故事情节自第 15 章左右后开始了逐渐离谱的展开。收集猫的灵魂来制作笛子的神秘人、从天而降的竹䇲鱼和蚂蟥、拉皮条的肯德基老爷爷、性别模糊的大岛、无法逃离的预言式诅咒……...
阅读全文
被迫使用公司的回测框架之后,折腾却一点没少。这个回测框架结构混乱,却又没有文档,其中有一两个组件还是 .pyd 文件,debug 都 de 不进去,完全是个黑箱。 因此,今天的一整天,我都在对这个回测框架进行代码适配。好不容易跑通了,并且对于好几个品种进行了回测,得到了很棒的效果,结果下班前一看持仓,发现全都是正的。但是按照我的因子生成的持仓怎么可能全是正的...
阅读全文
工作需要,决定自己从头搭建一个系统的回测框架。开发至今,先暂停一会,思考下这个回测框架应该如何编写。 目前开发完全使用 Python 语言,已经完成了StratPerf 类和 NetWorthMaker 类,分别可以对净值序列生成绩效数据和对持仓数据生成净值。接下来,应该就是要对因子数据生成持仓。 由于量化策略的复杂性,一个显而易见的问题是,这些类是否能用于...
阅读全文
上午将周报提交到印象笔记之后,mentor 提出了很多意见,可能是因为对于进度稍有点急。mentor 说,如果数据挖掘的方式很难出活的话也可以考虑手搓因子或者复现一些研报,因此这些将成为我接下来的主线。 于是我决定先整理一下思路。由于之前研究的时候整理的习惯不好,文件一多就十分混乱,因此我重新整理了一遍文件(但是感觉之后还会变乱)。接着,我编写了一个小脚本,...
阅读全文
今天回到宿舍才想起来日记没写,简单写一写吧。 由于最近实际上在埋头开发回测框架,因此和 mentor 都没有什么交流,而实际上我这边在策略研发上也没有什么进度,正好不想被知道这一点。关于策略,我现在的想法主要有两点:一是把数据再做细一点,比如全部做成当月同比或累计同比这种数据;二是根据数据来做因子的方式上,可以采用数值在过去一年中的分位数的方法来尝试,看看能...
阅读全文
昨晚我写的数据库写入函数被提出了一些新要求,因此我整个上午和下午的前半段都在重新编写这个数据库写入函数。过程还是挺顺利的,也学到了一些用 Python 的 SQLAlchemy 来读写数据库的方法。或许以后我也可以将数据保存在 SQLite 中,并且用 Python 来读写,避免数据量太大而混乱的问题。 完成这个工作之后,我再次对着此前的回测结果陷入了沉思,...
阅读全文
上午和老板开了个小会。老板提到了各个行业可以考虑的数据来源和基本面分析方向,还是有不少收获的。也许我最终筛选出来的因子有点太多,而且过于集中在少数的角度。比如,一个品种的基本面景气度本质上就是由供给和需求来决定,那么不妨将因子分成供给和需求两个方面,而需求又可以归纳为库存和下游产业对于品种的需求。通过这样的方式将基本面的分析分解为几个部分,且每个部分精选最重...
阅读全文