多因子选股策略

#coding:gbk

'''

策略以HS300为基础股票池,在日线下运行,20个交易日进行一次调仓,每次买入在买入备选中因子评分前10的股票,每支股票各分配当前可用资金的10%(权重可调整)

扩展数据需要在补完HS300成分股数据之后生成,本模型中扩展数据暂时使用VBA指标ATR和ADTM生成,命名为atr和adtm

'''

importpandas as pd

importnumpy as np

importtime

importdatetime

#1.=============================初始化部分=============================================

definit(ContextInfo):

# 获取沪深300成分股

ContextInfo.s =ContextInfo.get_sector('000300.SH')

# 设定基础股票池为沪深300成分股

ContextInfo.set_universe(ContextInfo.s)

# 策略运行天数

ContextInfo.day = 0

# 持仓情况

ContextInfo.holdings = {i: 0 for i inContextInfo.s}

# 资金权重

ContextInfo.weight = [0.1] * 10 # 设置资金分配权重

# 买入点

ContextInfo.buypoint = {}