问财量化选股策略逻辑
选股逻辑为:选择换手率在3%-12%、饮料酒进出口、规模在2亿以上的股票。
选股逻辑分析
该策略基于饮料酒行业和企业规模,从行业和企业质量等多维度考虑,选出换手率适中、符合行业特色和规模的企业,提升选股的准确性。
有何风险?
该策略选股仅考虑了饮料酒行业和企业规模等因素,没有对股票价格、财务等进行综合考虑,选股精度较低,存在一定风险。
如何优化?
可综合考虑多个因素,如行业环境、股票价格、公司财务、市场情况等,构建更加完整、系统的选股模型,增强其选股的准确性和稳定性。
最终的选股逻辑
选择换手率在3%-12%、饮料酒进出口、规模在2亿以上的股票。
同花顺指标公式代码参考
换手率在3%-12%:SELECT(TURN<N>=AVG(TURN, N) AND TURN<N+1>AVG(TURN, N+1) AND TURN<N>3 AND TURN<N<12)
饮料酒进出口:SELECT(SECTOR('K40')=1)
规模在2亿以上:SELECT(TOT_SHRHLDR_EQY_INCL_MIN_INT > 2e8)
选股:SELECT(CODE AND 换手率3%-12% AND 饮料酒进出口 AND 规模2亿以上)
python代码参考
import pandas as pd
import tushare as ts
def select_stocks():
pro = ts.pro_api()
df1 = pro.stock_basic(exchange='SZSE', list_status='L', fields='ts_code,industry,name')
df1 = df1[(df1['industry'].str.contains('饮料') & df1['industry'].str.contains('酒'))]
df2 = pro.fina_mainbz(ts_code='', type='P', fields='ts_code,end_date')
df2['year'] = df2['end_date'].str[:4]
df2 = df2.groupby('ts_code')['year'].count().reset_index(name='count')
df = pd.merge(df1[['ts_code']], df2[['ts_code', 'count']], on='ts_code')
df = df[df['count'] > 3] # 最近四年有业绩的公司
df3 = pro.daily_basic(ts_code='', trade_date='20211013', fields='ts_code,tot_shrhldr_eqy_incl_min_int,pb,pe,dv_ratio,total_mv')
df3 = df3[(df3['pe'] > 0) & (df3['pe'] < 50) & (df3['pb'] > 0) & (df3['pb'] < 10)]
df = pd.merge(df, df3[['ts_code', 'tot_shrhldr_eqy_incl_min_int', 'total_mv']], on='ts_code')
df = df[(df['tot_shrhldr_eqy_incl_min_int'] > 2e8)] # 企业规模大于2亿
df = df.groupby('ts_code').tail(1).sort_values('total_mv', ascending=False)
return df['ts_code']
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
