问财量化选股策略逻辑
选股逻辑为:RSI小于65、振幅大于1、近一个月内有过涨停。该选股策略通过RSI指标和振幅指标判断股票具有一定波动性,通过筛选近期有涨停的股票策略,进一步筛选出具有上升趋势和市场认可的股票。
选股逻辑分析
该选股策略通过RSI和振幅判断股票具有一定波动性,同时通过筛选近期有涨停的股票,使得选出来的个股是市场认可度较高的股票,同时具有一定的波动性和上涨空间。
有何风险?
该选股策略可能存在以下风险:
- 近期的涨停并不能说明股票后续上涨空间,存在短期炒作的风险。
- 忽略了基本面分析对股票的长期影响。该选股策略只考虑了短期内的交易情况,没有充分考虑到股票的基本面。一些潜在的风险未被考虑到,如公司财务状况、行业趋势等。
- RSI指标和振幅指标在极端行情下可能会失效。
如何优化?
为了提高该选股策略的准确性和可靠性,应该:
- 结合其他基本面指标,如市盈率、销售额等,进行更全面的股票评估;
- 考虑更长的历史数据,综合考虑股票的走势和波动性;
- 增加条件,限制短期内出现过多的涨停,例如将条件改为近三个月或半年内有过涨停。
最终的选股逻辑
选股条件:RSI小于65,振幅大于1,近一个月内有过涨停。该选股策略可以用来做短期操作,应该与其他基本面指标相结合,在获得更全面的选股情况的同时,降低遭受市场风险的可能性。
同花顺指标公式代码参考
在当前逻辑中,可以采用以下通达信指标:RSI(6)、振幅指标为:V=(HIGHV-LOWV)/CLOSE,并维护一个涨停指标,如果近一个月内有过一次涨停,则该指标值为1。可以使用如下代码:
RSI(6);
(HIGHV-LOWV)/CLOSE>0.01;
REF(CLOSE/LAST(CLOSE, 2), 1)=1;
python代码参考
以下是python代码实现该选股逻辑(使用Tushare库):
import tushare as ts
# 获取所有股票代码列表
stocks = ts.get_stock_basics().index.tolist()
# 定义选股条件
condition = lambda stock: (ts.get_hist_data(stock, start='2021-01-01')['rsi'][0] < 65
and (ts.get_hist_data(stock, start='2021-01-01')['high'][0] - ts.get_hist_data(stock, start='2021-01-01')['low'][0]) / ts.get_hist_data(stock, start='2021-01-01')['close'][0] > 0.01
and ts.get_hist_data(stock)['pct_chg'].rolling(window=20).apply(lambda x: x[x > 9].count() > 0).iloc[-1])
# 筛选符合条件的股票
selected_stocks = filter(condition, stocks)
# 输出符合条件的股票代码和名称
for stock in selected_stocks:
print(stock, ts.get_stock_basics().loc[stock]['name'])
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
