问财量化选股策略逻辑
选股逻辑:选择RSI小于65、500日内至少2次涨停、2021年营收/2018年营收大于1.1。
选股逻辑分析
此选股策略主要通过技术面的RSI和涨停次数,以及基本面的财务指标,筛选低估值、高增长的个股。
有何风险?
该选股逻辑存在以下风险:1)过度依赖财务指标,可能忽略一些其他重要因素;2)财务数据可能存在造假等情况。
如何优化?
可引入更为全面的财务指标和基本面数据,例如动态市盈率、市净率等。同时,可以考虑加入其他市场情绪指标,如市场热度、各类交易量等。
最终的选股逻辑
基于RSI小于65、500日内至少2次涨停、2021年营收/2018年营收大于1.1,筛选出低估值、高增长的个股。
同花顺指标公式代码参考
HHV(C,2)==C
Python代码参考
import pandas as pd
import akshare as ak
def get_stock_list():
stock_list = ak.stock_zh_a_spot_em()
stock_list['RSI'] = talib.RSI(stock_list['现价'], timeperiod=14)
stock_detail = ak.stock_financial_report_sina(stock="000001", symbol="balance", year=2021)
stock_detail = stock_detail[['代码', '营业收入']]
stock_detail.rename(columns={"营业收入": "2021年营收"}, inplace=True)
stock_detail2 = ak.stock_financial_report_sina(stock="000001", symbol="balance", year=2018)
stock_detail2 = stock_detail2[['代码', '营业收入']]
stock_detail2.rename(columns={"营业收入": "2018年营收"}, inplace=True)
stock_detail = pd.merge(stock_detail, stock_detail2, on='代码', how='left')
stock_detail.dropna(inplace=True)
stock_detail['营收增长率'] = stock_detail['2021年营收'] / stock_detail['2018年营收']
stock_detail.drop(['2021年营收', '2018年营收'], axis=1, inplace=True)
stock_list = pd.merge(stock_list, stock_detail, on='代码', how='left')
cond1 = stock_list['RSI'] < 65
cond2 = stock_list['涨停次数'] >= 2
cond3 = stock_list['营收增长率'] > 1.1
stock_list = stock_list[cond1 & cond2 & cond3]
stock_list = stock_list[~pd.isnull(stock_list['每股收益'])]
stock_list = stock_list[(stock_list['每股收益'] > 0) & (stock_list['市盈率'] < 20)]
return stock_list[['代码', '名称', '现价', 'RSI', '涨停次数', '营收增长率']]
get_stock_list()
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


