问财量化选股策略逻辑
选股逻辑为:选择换手率在3%-12%、饮料酒进出口、昨天股票换手率大于8%的股票。
选股逻辑分析
该选股策略采用了市场交易活跃度、行业龙头因素,并且通过选择昨天换手率大于8%的股票,凸显出股民对该股票的短期关注度,有利于短期投机收益。
有何风险?
该选股策略的换手率选取较为中等的区间,可能忽略了市场活跃度较高的个股,同时昨天的换手率指标也可能不完全反映股票的长期趋势。
如何优化?
可通过加入其他交易流动性指标筛选出交易更加活跃的股票,如流通市值、日均成交额等;也可加入财务、行业等因素,以及技术指标等方面改进选股模型的准确度。
最终的选股逻辑
选择换手率在3%-12%、饮料酒进出口、昨天股票换手率大于8%的股票。
同花顺指标公式代码参考
换手率在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)
昨天换手率大于8%:SELECT(TURN>8)
选股:SELECT(CODE AND 换手率3%-12% AND 饮料酒进出口 AND 昨天换手率大于8%)
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.daily(trade_date='20221014')
df2 = df2[df2['trade_date'] != '20221014'] # 获取昨天数据
df2 = df2.groupby('ts_code').sum() # 按股票分组求和
df2 = df2[df2['vol'] > 8 * 10000 * 10000] # 昨天成交量大于8亿
df1 = pd.merge(df1[['ts_code', 'industry']], df2[['ts_code', 'vol']], on='ts_code')
df3 = pro.daily_basic(trade_date='20221014', fields='ts_code,turnover_rate_f') # 获取昨日换手率数据
df1 = pd.merge(df1, df3[['ts_code', 'turnover_rate_f']], on='ts_code')
df1 = df1[(df1['turnover_rate_f'] >= 3) & (df1['turnover_rate_f'] <= 12)]
df = df1.sort_values('vol', ascending=False) # 按成交量降序排列
return df['ts_code']
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
