问财量化选股策略逻辑
选股逻辑为:振幅大于1,价格低于12元,连续5年ROE大于15%。
选股逻辑分析
该选股逻辑的核心是通过对股票的基本面进行分析,筛选出连续5年ROE大于15%的优质企业股票,并结合振幅大于1和价格低于12元的条件,以期望获得高收益。
有何风险?
该选股逻辑存在以下风险:
- 过多关注过去的财务数据,不能充分反映未来的业绩变动;
- ROE数据可能会被公司财务操作所影响,存在一定的失真风险;
- 选股策略的灵活性较差,不能及时适应市场变化,导致投资组合的持续下滑。
如何优化?
为降低风险,可考虑以下优化方案:
- 引入更多股票技术指标数据支持,以完善选股逻辑,降低投资组合风险;
- 对选股结果进行分析,确定买入卖出点,制定相应的财务和技术指标控制策略,以提高持仓能力;
- 在选股逻辑中引入较为灵活的技术指标,以适应市场变化。
最终的选股逻辑
最终的选股逻辑如下:
- 振幅大于1;
- 价格<12元;
- 连续5年ROE大于15%。
同花顺指标公式代码参考
使用通达信实现该选股逻辑:
SELECT: ABS(OPEN - PREV_CLOSE) / PREV_CLOSE > 0.01 AND CLOSE < 12 AND FINANCE("roe", 5) > 15 AND DAY K;
Python代码参考
使用tushare实现该选股逻辑:
import tushare as ts
def is_selected(code):
# 判断股票是否满足选股逻辑
hist_data = ts.get_hist_data(code)
if hist_data is None or len(hist_data) < 30:
return False
if ts.get_profit_data(year=5, quarter=4, code=code).iloc[0]['roe'] > 15 and hist_data['close'][0] < 12:
return True
return False
# 获取股票列表,遍历股票进行选股
stocks = ts.get_stock_basics()
selected_stocks = []
for code, row in stocks.iterrows():
if is_selected(code):
selected_stocks.append(code)
# 利用选股结果进行股票交易
for code in selected_stocks:
pass # 参考其他策略
使用tushare库获取股票财务和历史数据,进行股票筛选,并最终进行选股。需要注意算法的优化和过滤机制。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
