本策略的核心是精选ST股票,国九条过滤,防止直接暴雷退市,只做ST股票的弱转强,弱转强的认定标准是前日涨停但昨日不涨停,昨日收盘价大于前一日最低价,昨日收盘价大于10日线,昨日成交量大于前一日的成交量但小于前一日成交量的10倍,股价大于1;这类股票强势,有资金介入,能获得超额收益。
回测数据如下:

*回测数据只作测试用,不代表未来实际收益
1、策略初始化配置
主要定义了持股数量、当日股票池、运行周期等等
g.stock_num=5
g.today_list=[]#当日股票池
run_daily(perpare,time="9:25")
run_daily(buy,time="9:30")
run_daily(sell,time='13:00')
run_daily(sell,time='14:00')
2、选股逻辑
(1)选取全市场所有的ST股票
##获取所有ST股##
def get_st(context):
yesterday=context.previous_date
stockList=get_all_securities(types='stock',date=yesterday).index
st_data=get_extras('is_st',stockList, count = 1,end_date=yesterday)
st_data = st_data.T
st_data.columns = ['is_st']
st_data=st_data[st_data['is_st']==True]
df = st_data.index.tolist()
return df
(2)1、4、12月份进行国九条过滤
1、4、12月份进行国九条过滤,避免直接暴雷和退市风险
#1 4 12月 国九
singal=today_is_between(context)
if singal==True:
print(f'筛选前:{len(stk_list)}')
stk_list=GJT_filter_stocks(stk_list)
print(f'筛选后:{len(stk_list)}')
def today_is_between(context):
today = context.current_dt.strftime('%m-%d')
if ('01-15' <= today) and (today <= '01-31'):
return True
elif ('04-15' <= today) and (today <= '04-31'):
retu

最低0.47元/天 解锁文章
1053

被折叠的 条评论
为什么被折叠?



