问财量化选股策略逻辑
选股逻辑为:选择换手率在3%-12%、饮料酒进出口的股票,且连续3天以上大单净量大于0.05。
选股逻辑分析
该策略在行业和换手率上进行了选择,与前一个选股逻辑不同之处在于增加了大单净量的指标。持续3天以上的大单净量大于0.05表示投资者对该股票的买入意愿较强,具有潜在的投资价值。
有何风险?
增加大单净量指标需要考虑个别投资者操作造成的影响,比如突发事件、市场走势变化等因素,可能会干扰机构的投资判断,选择错误的股票。
如何优化?
应该考虑增加其他稳定性更强的指标,比如公司的基本面、市盈率、市净率等,综合判断。
最终的选股逻辑
选择换手率在3%-12%、饮料酒进出口的股票,且连续3天以上大单净量大于0.05。
同花顺指标公式代码参考
换手率在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(SECTORCODE('K40')=1)
连续3天以上大单净量大于0.05:SELECT(BIGVOL>=0.05 AND REF(BIGVOL>=0.05, 1) AND REF(BIGVOL>=0.05, 2))
选股:SELECT(CODE, 换手率3%-12% AND SELECT_SECTORCOUNT('K43')>0 AND SELECT(SELECT(BIGVOL>=0.05 AND REF(BIGVOL>=0.05, 1) AND REF(BIGVOL>=0.05, 2))))
python代码参考
import pandas as pd
import tushare as ts
def select_stocks():
pro = ts.pro_api()
df1 = pro.stock_basic(exchange='', list_status='L', fields='ts_code,industry')
df1 = df1[(df1['industry'].str.contains('饮料') & df1['industry'].str.contains('酒'))]
df2 = pro.block_trade(trade_date='', start_date='20211006', end_date='20211008')
df2 = df2.groupby('ts_code').sum()
df2 = df2[df2['net_amount_main']>0.05*df2['volume_main']]
df2 = df2.join(df2.groupby('ts_code')['trade_date'].apply(lambda x: x.shift(1)), rsuffix='_1')
df2 = df2.join(df2.groupby('ts_code')['trade_date'].apply(lambda x: x.shift(2)), rsuffix='_2')
df2 = df2[(df2['trade_date_2']==df2['trade_date_1']) & (df2['trade_date_1']==df2['trade_date'])]
df3 = pro.daily_basic(ts_code='', trade_date='20211008', fields='ts_code,turnover_rate')
df3 = df3[(df3['turnover_rate'].between(3, 12))]
code_list = pd.merge(df1, df2, on='ts_code')
code_list = pd.merge(code_list, df3, on='ts_code')
return code_list['ts_code']
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
