我们的目标是实盘,从ETF开始。
ETF的数据维度来对股票少,基本面的数据可以算,但比较麻烦;比之可转债更少。
应用机器学习比较容易陷入过拟合,那就没有办法了嘛?不会,简单的,也可以是有效的。
动量轮动+分散=骑最快的马。
etfs = [ '510300.SH', # 沪深300ETF '159915.SZ', # 创业板 '518880.SH', # 黄金ETF '513100.SH', # 纳指ETF '159985.SZ', # 豆柏ETF '511880.SH', # 银华日利ETF ]
我选择了A股的大小盘,纳指,商品,黄金,货币这样的低相关性的资产进行动量轮动。
我的实盘逻辑:暂定10个策略组合,一个策略分配仓位10%,比如50万的本金,当前这个策略5万。
代码已经提交至星球:
dataloader作了升级——对齐交易日历,比如大类资产,不同国家交易日历不一样,在回测时可能会有日期缺失,我们使用reindex+ffill前向填充数据,确保数据可以正常计算:
def _reset_index(self, dfs: list): trade_calendar = [] for df in dfs: trade_calendar.extend(list(df.index)) trade_calendar = list(set(trade_calendar)) trade_calendar.sort() dfs_reindex = [] for df in dfs: df_new = df.reindex(trade_calendar, method='ffill') df_new['return_0'] = df_new['close'].pct_change() dfs_reindex.append(df_new) return dfs_reindex
我们是AI+量化的投资系统,我们也一直在关注前沿AI技术的进展。
今天介绍一个AutoML的框架——AutoGluon。
亚马逊开源的AutoML框架 – autogluon,只需要几行代码就可以轻松实现数据预处理、模型融合、择优参数以及模型选择等。autoGluon除了处理表格数据外,还可以处理图像和文本等多模态数据。
支持结构化数据、时间序列数据,这个还真挺适合量化投资的,所以我们必须来关注一下。关于模型实现、参数优化,如果不是资深的算法工程师,自己还未必能调得一手好参。
pip install autogluon
依赖的包不少,但是安装还是很顺利的。
from autogluon.tabular import TabularDataset, TabularPredictor train_data = TabularDataset('train.csv') test_data = TabularDataset('test.csv') train_data.to_csv('train.csv') test_data.to_csv('test.csv') print(train_data) predictor = TabularPredictor(label='class').fit(train_data=train_data) predictions = predictor.predict(test_data)
如下代码,除了数据加载之外,就是直接指定label后使用fit直接训练。
按传统的机器学习,我们要对数据进行预处理,然后做特征工程,作数据集划分,选择适当的模型,然后对参数进行优化,最后自己对模型进行评估,这些都不需要了。
模型自动推断出这是一个“二分类”问题。
对数据自动进行预测处理:
对数据调用11个模型进行训练:
选择最优的模型是:集成学习。
代码和数据在这里,请前往星球下载:
发布者:股市刺客,转载请注明出处:https://www.95sca.cn/archives/104022
站内所有文章皆来自网络转载或读者投稿,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!