问财量化选股策略逻辑
选股逻辑:选取RSI小于65、500日内至少2次涨停、近25个交易日有单日涨幅大于等于百分之10的股票。
选股逻辑分析
该选股策略继续考虑了市场情绪和技术面两个方面因素,通过近期的单日涨幅情况来筛选具有特定上涨趋势的个股,同时也继续关注RSI和涨停等技术性指标。
有何风险?
该选股策略在只重视短期趋势信号的同时,可能忽视了股票的长期发展趋势和基本面因素,筛选结果需要进一步确认。
如何优化?
可以加入更多因素,如资金流向、市场活跃度等,以尽可能减少单一指标的风险,并可以适当调整筛选条件,以获得更丰富的选股结果。
最终的选股逻辑
选取RSI小于65、500日内至少2次涨停、近25个交易日有单日涨幅大于等于百分之10的股票(可加入更多技术指标和基本面因素)进一步检查其是否收盘价在均线上方,确认其趋势判断的准确性。
同花顺指标公式代码参考
选股条件:RSI(14) < 65 AND 近25个交易日内 (涨幅 - REF(涨幅,1) > 0.1) >= 1 AND 涨停家数 >= 2
Python代码参考
import pandas as pd
import akshare as ak
import talib
def get_stock_list(days=500, rsi_threshold=65):
stock_list = ak.stock_zh_a_daily_kline(symbol="", adjust="qfq", period="daily").iloc[-days:]
stock_list['high_shift1'] = stock_list['high'].shift(1)
stock_list['low_shift1'] = stock_list['low'].shift(1)
stock_list['close_shift1'] = stock_list['close'].shift(1)
stock_list['reverse_condition'] = (stock_list['low'] > stock_list['low_shift1']) & (stock_list['close'] > stock_list['close_shift1'])
stock_list = stock_list.groupby('symbol').filter(lambda x: x['涨跌幅'].apply(lambda x: x > 0).sum() >= 2)
stock_list['RSI'] = talib.RSI(stock_list['close'].values, timeperiod=14)
stock_list['gt_10_percent'] = (stock_list['涨跌幅'] - stock_list['涨跌幅'].shift(1)) > 0.1
stock_list = stock_list[(stock_list['RSI'] < rsi_threshold) & (stock_list['reverse_condition']) &
(stock_list['gt_10_percent'].rolling(25).sum() >= 1)]
# 添加更多的技术指标和基本面筛选条件,如收盘价在均线上方、MACD指标、EPS等
return stock_list[['股票代码', '名称', '收盘', '市值']]
get_stock_list()
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
