(supermind量化)连续5年ROE>15%_、价格<12、振幅大于1

用户头像神盾局量子研究部
2023-09-01 发布

问财量化选股策略逻辑

选股逻辑为:振幅大于1,价格低于12元,连续5年ROE大于15%。

选股逻辑分析

该选股逻辑的核心是通过对股票的基本面进行分析,筛选出连续5年ROE大于15%的优质企业股票,并结合振幅大于1和价格低于12元的条件,以期望获得高收益。

有何风险?

该选股逻辑存在以下风险:

  • 过多关注过去的财务数据,不能充分反映未来的业绩变动;
  • ROE数据可能会被公司财务操作所影响,存在一定的失真风险;
  • 选股策略的灵活性较差,不能及时适应市场变化,导致投资组合的持续下滑。

如何优化?

为降低风险,可考虑以下优化方案:

  • 引入更多股票技术指标数据支持,以完善选股逻辑,降低投资组合风险;
  • 对选股结果进行分析,确定买入卖出点,制定相应的财务和技术指标控制策略,以提高持仓能力;
  • 在选股逻辑中引入较为灵活的技术指标,以适应市场变化。

最终的选股逻辑

最终的选股逻辑如下:

  1. 振幅大于1;
  2. 价格<12元;
  3. 连续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亿' #选股语句。

    模板如何使用?

    点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。


    ## 如果有任何问题请添加 下方的二维码进群提问。
    ![94c5cde12014f99e262a302741275d05.png](http://u.thsi.cn/imgsrc/pefile/94c5cde12014f99e262a302741275d05.png)
收益&风险
源码

评论