今天来一个比昨天还简单的策略,创业板ETF动量择时:年化21%,最大回撤18%。
创业板择时策略代码如下:
def gen_cy_picktime(): proj = ProjConfig() proj.name = '创业板动量择时' proj.commission = 0.0001 proj.slippage = 0.0001 proj.symbols = ['159915.SZ'] # 证券池列表 proj.benchmark = '159915.SZ' proj.start_date = '20100101' proj.data_folder = 'etfs' # 这里指定data/数据目录 fields = ['roc(close,20)'] names = ['roc_20'] proj.fields = fields proj.names = names # 这里是策略算子列表 proj.algos.append( AlgoConfig(name=SelectBySignal().name, kwargs={'rules_buy': ['roc_20>0.08'], 'rules_sell': ['roc_20<-0.0']}) ) #proj.algos.append( # AlgoConfig(name=SelectTopK().name, kwargs={'factor_name': 'roc_20'}) #) proj.algos.append(AlgoConfig(name=WeightEqually().name)) proj.algos.append(AlgoConfig(name=Rebalance().name)) return proj
昨天的策略,再优化一下,年化20.3%,就两个标的:沪深300ETF和创业板ETF两个宽基ETF。
大家选择“大小盘轮动”策略即可:
代码在个位置:
之前的文章提及的DeepAlphaGen:
DeepAlphaGen:强化学习的因子组合挖掘:框架代码+数据下载
代码在如下目录:
吾日三省吾身
“凡事发生必有利于我”。
上周开始,眼晴不舒服,初步判断是干眼症。
想来,沉浸式写代码,做研究,用眼过度。
停下来,思考方向,人的精力真的很有限,专注做好能力圈的一点事情就好。
做有积累的事情,尽量自动化。一次时间投入,多次复用的事情。
如无必要,勿增实体。
投资应该是轻松,愉悦,甚至是略显无聊的事情,它不需要你特别努力,也不是你努力就有用的。关键是你要做对的事情,方向对就好。
后续的重心:
Dagster盘后更新数据,在线的, SAAS化的回测系统,不排除可转接对实盘。数据上会专注把ETF先搞扎实,当然技术栈,框架,因子挖掘,我相信都是通用的,大家愿意用在股票上,期货上,甚至加密货币上,都是可以的。
后端的框架应该还是Django,如果需要前后端分离,会使用django-ninja 一个类似fastapi的框架。前端暂时不想引入nodejs,太麻烦,还是喜欢bootstrap(jquery)的老方式。
我们那个年代的程序员,对于SEO是有执念的,也不知道有没有用。
SAAS版本AI量化回测系统,最大的挑战在于,任务可能需要异步运行,当然django也有celery这样的框架。
发布者:股市刺客,转载请注明出处:https://www.95sca.cn/archives/103724
站内所有文章皆来自网络转载或读者投稿,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!