原创文章第601篇,专注“AI量化投资、世界运行的规律、个人成长与财富自由"。
之前说过,多因子模型在量化投资里占据很多比例。
多因子模型核心当然是找到好的因子。
可转债里我们可以把转债背后的正股的基本面数据合成进来。
大家可以看出来,我们的基础因子维度就扩充了不少。
当然还有很多财务指标还没有纳入进来。
可转债还有很多债性指标可以考虑进来。
多表合并的代码:
class DumpQuotes: def __init__(self, tb_basic, tb_quotes_list: list): self.tb_basic = tb_basic self.tb_quotes_list = tb_quotes_list def build(self): items = list(mongo_utils.get_db()[self.tb_basic].find({})) for item in tqdm(items): # 导出数据到csv main_symbol = item['symbol'] dfs = [] for symbol_col, tb_quotes in self.tb_quotes_list.items(): symbol = item[symbol_col] print(symbol) filters = {'limit_status': 0, 'symbol': 0, '_id': 0} if symbol != main_symbol: filters.update({'close': 0}) items = mongo_utils.get_db()[tb_quotes].find({'symbol': symbol}, filters) items = list(items) if len(items) == 0: print(main_symbol+'没有数据') continue df = pd.DataFrame(items) df = df.replace(pd.NA, 0) # print(df) # df.to_csv(DATA_DIR_QUOTES.joinpath('s_{}.csv'.format(symbol).format(symbol))) df.set_index('date', inplace=True) dfs.append(df) if len(dfs) == 0: continue df_all = pd.concat(dfs, axis=1) df_all['symbol'] = main_symbol df_all.dropna(inplace=True) df_all.to_csv(DATA_DIR_QUOTES.joinpath('{}.csv'.format(main_symbol)), index=True)
代码下载地址:(文末有优惠券和地址,扫码即可)
昨天经管理员提醒,可以使用pandas_ta来替代talib:
import pandas as pd import pandas_ta as ta from datafeed.expr_functions import calc_by_symbol @calc_by_symbol def ta_kdj(high, low, close, index=0): df_kdj = ta.kdj(high, low, close) if 0 <= index <= 2: name = list(df_kdj.columns)[index] return df_kdj[name] return None
讲讲quantlab的代码结果:
dataloader从本地目录读取csv集合,并使用因子表达式引擎计算因子。
在论论里发了详细讲解:
Quantlab代码结构讲解:datafeed数据加载与因子表达式。
吾日三省吾身
01
当下内心不平静时,把它用文字写出来。
写着写着你就平静了。
这个世界确实有很多人,他不想要过程,他也不想努力,但他也想要结果。
他不学习量化,但他就想实盘。
他不想理解,他只要策略。
而且还希望策略可以赚钱,而且要持续赚钱。
看到这里,可能你也觉得很奇怪,这怎么可能嘛。
但是,不自觉很多人就是这样,不是吗?
重申一次,量化里最核心的是策略,实盘是重要一环,但你策略都没理明白,实盘的意义是?
而且,现在实盘的接口有的是,你直接上去写不就好了。
然后他又问,你的策略能不能对接实盘。
其实就是改个API的事情。这是关键吗?不是。
人生的意义在于体验生命的过程、享受当下的生活和接纳所有的一切。每个阶段都有不同的美好和精彩,我们要把握当下,坦然接受一切,让生命成为一本精彩的故事书。不念过往,不惧将来,过好这一生。
02
时间是最好的解药,能解所有的事情。
确实是所有,因为我们一旦出生,就永不停息,直到结束。
无论你是王侯将相,还是贩夫走卒,时间都是一分一秒,不曾多,也不曾少。
但是生命之厚度是不一样的,体验的深度是不一样的。
做时间的朋友,这句话太好了。——做时间的朋友里包含几重奥义:长期主义、复利,被动收入管道等等。
不要急,做正确的事情,等时间的结果。
历史文章:
有些新朋友还不知道星球在哪里,下面是优惠券:
代码发布:quantlabv5.3,可转债所有数据及双低、动量因子策略,单因子分析框架
年化22.8%的单因子分析:基于Alphalens做可转债全市场数据的单因子分析(附python代码+全量数据)