问财量化选股策略逻辑
选股逻辑:在RSI小于65、昨日竞价换手率大于0.26、2019年分红比例大于25%的条件下,选择股票。
选股逻辑分析
该选股策略主要是在技术面指标筛选的基础上,考虑股票基本面分红情况,综合考虑公司财务健康状况和股票技术面上涨概率,寻找价格相对合理的股票。
有何风险?
该选股指标也无法避免市场风险及其它因素对股价变化的影响。同时,股票分红比例往往是公司管理层的决策,可能会受到其它因素的影响,如短期内现金流紧张等。因此,投资者应该根据自身风险偏好合理使用该选股策略。
如何优化?
-
考虑股票的风险收益比:在考虑分红比例的同时,应该充分考虑股票的风险收益比,避免出现高分红但风险较高的股票选择。
-
考虑行业和市场情况:除了考虑分红情况,也应该结合市场整体表现和关注某些热门行业,以获得更好的选股效果。
-
综合运用多个选股因素:可以添加和筛选其他可靠的指标,如MACD、RSV、量比等,以获得更全面的股票信息。
最终的选股逻辑
选股标准为:RSI小于65、昨日竞价换手率大于0.26、2019年分红比例大于25%。
同花顺指标公式代码参考
// RSI小于65
CONDITION1 = RSI(C,14) < 65;
// 昨日竞价换手率大于0.26
CONDITION2 = Turnover > 0.26;
// 2019年分红比例大于25%
CONDITION3 = BPS * MGZBG > 0.25;
// 筛选符合条件的股票
SELECT (CONDITION1 AND CONDITION2 AND CONDITION3);
注意:通达信中没有2019年分红比例的公式,可以使用自定义公式中的IF函数来实现该条件的筛选。
python代码参考
import tushare as ts
import talib
def select_stocks(stocks):
res = []
for stock in stocks:
try:
basic_info = ts.get_stock_basics()
if stock not in basic_info.index:
continue
bps = basic_info.at[stock, 'esp']
mgzbg = basic_info.at[stock, 'mgjzc']
if mgzbg * bps <= 0.25:
continue
k_data = ts.get_k_data(stock, start='2018-01-01', end='2021-08-31', ktype='D')
if len(k_data) >= 250:
rsi = talib.RSI(k_data['close'].astype(float).values, timeperiod=14)[-1]
turnover = k_data['turnover'].astype(float).values[-2] / 100
if rsi < 65 and turnover > 0.26:
res.append(stock)
except:
continue
return res
stocks = ts.get_stock_basics().index
res = select_stocks(stocks)
print(res)
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


