问财量化选股策略逻辑
选股逻辑为:选择换手率在3%-12%、饮料酒进出口、股价连续七个交易日下跌的股票。
选股逻辑分析
该选股策略在行业面和技术面指标上考虑,考虑连续下跌的情况,表征股票当前的市场情况。但该选股策略仍然没有考虑公司的基本面等其他因素,存在一定风险。
有何风险?
该选股方式只考虑了技术面(股价连续下跌)和行业面因素,没有考虑公司基本面、市场竞争力等其他因素的影响,可能存在一定的风险。
如何优化?
可考虑增加其他指标,如公司财务指标、市场竞争力、行业前景等,综合考虑公司的综合性能、提高选股的准确性和风险控制。
最终的选股逻辑
选择换手率在3%-12%、饮料酒进出口、股价连续七个交易日下跌的股票。
同花顺指标公式代码参考
换手率在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)
股价连续七个交易日下跌:SELECT(REF(CLOSE, 1)>REF(CLOSE, 2) AND REF(CLOSE, 2)>REF(CLOSE, 3) AND REF(CLOSE, 3)>REF(CLOSE, 4) AND REF(CLOSE, 4)>REF(CLOSE, 5) AND REF(CLOSE, 5)>REF(CLOSE, 6) AND REF(CLOSE, 6)>REF(CLOSE, 7))
选股:SELECT(CODE, 换手率3%-12% AND SELECT_SECTORCOUNT('K43')>0 AND 股价连续七个交易日下跌, NOT ST)
python代码参考
import pandas as pd
import tushare as ts
def select_stocks():
pro = ts.pro_api()
df1 = pro.daily_basic(ts_code='', trade_date='20220128', fields='ts_code,turnover_rate,industry')
df1 = df1[(df1['industry'].str.contains('饮料') & df1['industry'].str.contains('酒'))]
df1 = df1[df1['turnover_rate'].between(3, 12)]
df2 = pro.daily(ts_code='', start_date='20220118', end_date='20220128', fields='ts_code,trade_date,close')
df2 = df2.pivot(index='trade_date', columns='ts_code').droplevel(level=0, axis=1)
df2[~df2.isna()] = df2[~df2.isna()].diff()
df2 = df2[df2.iloc[:, -7:].sum(axis=1) < 0]
df = pd.merge(df1, df2, on='ts_code')
code_list = pd.DataFrame({'code': df.index})
return code_list
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
