百天计划第21天,关于“智能量化,财富自由,个人成长感悟”。
本月的核心重点,让qlib成为智能量化平台的基础框架。
qlib有为金融量化定制的数据库,因子表达式,策略集,回测系统,高频交易支持等。
Qlib的一些高级功能:在线任务、高频投资、财务数据库
基于qlib框架的“AI+”的典型架构
01 qlib的测试用例
qlib的框架松散,让我们集成调用很方便。
它还有良好的测试用例,测试用例是一开始学习框架非常好的示例。
从用例中可以看出作者的设计思路,从更低的层次看代码细节。
在源代码根目录的tests目录可以看到测试用例集合:
从沪深300的股票集合里读取收盘价,按天分组分析统计信息:
close_p = D.features(D.instruments("csi300"), ["$close"]) size = close_p.groupby("datetime").size() cnt = close_p.groupby("datetime").count()["$close"] size_desc = size.describe(percentiles=np.arange(0.1, 1.0, 0.1)) cnt_desc = cnt.describe(percentiles=np.arange(0.1, 1.0, 0.1)) print(size_desc) print(cnt_desc) self.assertLessEqual(size_desc.loc["max"], 305, "Excessive number of CSI300 constituent stocks")
分析沪深300收盘价的收益率:
def testClose(self): close_p = D.features(D.instruments("csi300"), ["Ref($close, 1)/$close - 1"]) close_desc = close_p.describe(percentiles=np.arange(0.1, 1.0, 0.1)) print(close_desc) self.assertLessEqual(abs(close_desc.loc["90%"][0]), 0.1, "Close value is abnormal")
文档里一直没有体现,但代码和测试用例里都有体现“强化学习”。
个人一直认为传统机器学习不太适合交易,而强化学习这种多轮博弈,总体最优的范式与围棋、交易更加契合,qlib的强化学习的支持还是非常值得期待的。
把测试用例好好跑一遍,对qlib代码很多细节都可以得到掌握。
02 qlib的示例代码examples
示例里大量的基准模型,基本把前沿的模型都搞一轮:
03 成长感悟
前段时间高考放榜,很多寒门贵子的视频,文章在自媒体传播。
很感人,很励志,很欣慰。
毕竟这几乎是唯一通往大山,离开贫穷的一条路。
但是,上了985|221,甚至是清华北大,固然可喜可贺,不过这不过是万里长征的第一步。
阶层的固化,不止在于财富,还有认知。
“穷爸爸”不能给予财富,更无法给出财富认知。—好好学习,将来找个好工作。—恐怕是我们听得最多的一句话。
上了大学,还埋头功课,生怕其他活动会影响自己的学习。学习没什么不好,但只有成绩,恐怕对于进入社会无益。
软技能:
海量阅读习惯,写作能力,演讲能力。
如何海量阅读,构建认知体系。
写作倒逼输入,并建立与外界的有效连接。
硬技能:编程技能,销售技能等等。
如何把一件事情做成?
趋势的判断力,如马云之于互联网,张一鸣之于移动互联网,李笑来之于比特币。
高效的执行力。
李笑来写书,两本畅销书。
张一鸣是连续创业者,王兴九败一胜创美团。
过去30年,国家经济高速发展,房价暴涨。
互联网创富。
我们赶上了多少呢?为何?格局!
我们总是盯着工作和生活中的一亩三分地,而且还没有看清楚。
少数看到大机会的人,看到了也未必有执行力。
抖音、头条、拼多多。
要思考,认知到位。
要行动,重在执行。
建立社群圈子,需要有人带。
交际的本质是价值交换,还得自己有价值。
而后强强联手。
总结:
一、qlib的进阶,可以通过tests和examples往细节去。
二、阶层固化的不止是财富,还有关于财富的认知。突围需要从认知开始,并贯穿强执行力。
三、做时间的朋友,长期主义,海量阅读去建立认知体系,而且躬身入局!