问财量化选股策略逻辑
选股逻辑:在RSI小于65、非科创板、过去三年(2021年)营收增长明显的情况下,选取符合条件的个股。
选股逻辑分析
该选股策略综合考虑了技术面和基本面的指标,先通过RSI指标进行筛选,选取技术面上表现相对较好的个股,再通过过去三年(2021年)营收增长情况的筛选,检测该个股的基本面。如果营收增长明显,则表明该个股有望继续向好的趋势发展。
有何风险?
该选股策略同样存在着一定的主观性和不确定性,选股策略过于依赖于基本面因素,可能忽略了技术面和趋势面的影响。同时,对于某些个股在过去三年中营收增长乏力或者近期营收出现下滑的情况,该选股策略可能无法选中该个股。
如何优化?
-
完善选股逻辑:应该综合考虑其他基本面指标,如利润增长率、净利润率等,从不同角度检测个股的基本面。
-
设定阈值:可以通过设置不同的阈值对选股策略进行进一步优化,例如设置营收增长率阈值为1.2或者1.3等。
最终的选股逻辑
选股标准为RSI小于65、非科创板、过去三年(2021年)营收增长率大于1.1的股票。
同花顺指标公式代码参考
// RSI小于65
COND1 = RSI(CLOSE, 14) < 65;
// 不是科创板股票
COND2 = MARKETTYPE != 7;
// 营收增长率大于1.1
COND3 = (OPERATEREVE - OPERATEREVE_3Y)/OPERATEREVE_3Y > 0.1;
// 组合条件筛选股票
SELECT(ALL, (COND1 AND COND2 AND COND3))
Python代码参考
import tushare as ts
def select_stocks(stocks, n):
res = []
for stock in stocks:
try:
if stock.startswith('300'): # 排除科创板
continue
growth_data = ts.get_growth_data(stock)
if growth_data is None:
continue
if growth_data.iloc[-1]['mbrg'] < 0.1 or growth_data.iloc[-1]['mrgg'] < 0.1: # 营收增长率阈值
continue
price_data = ts.get_hist_data(stock, start='2021-01-01')
if price_data is None:
continue
rsi_data = ta.RSI(price_data['close'].values, timeperiod=14)
if rsi_data[-1] > 65: # RSI阈值
continue
res.append((price_data.iloc[-1]['close'], stock))
except Exception as e:
print(e)
continue
res.sort(reverse=True)
return [i[1] for i in res[:n]]
stocks = ts.get_stock_basics().index
res = select_stocks(stocks, 10)
print(res)
注意:同样需要对数据类型和异常进行判断处理,而选股策略的有效性和实际可行性需要在实践中进一步检验。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


