(supermind量化-)振幅大于1、周线macd在零轴之上、100亿市值以内的无亏损企

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

问财量化选股策略逻辑

本选股策略选取振幅大于1、周线MACD在零轴之上,并且市值在100亿以内且无亏损的企业作为投资标的。

选股逻辑分析

本选股策略在基础选股条件的基础上加入了市值和盈利能力的考量。选股条件包括振幅大于1、周线MACD在零轴之上,同时剔除亏损企业,以及选取市值在100亿以内的企业作为投资标的。这样也能够有效避免过度关注大型企业而忽略中小型企业的投资机会。

有何风险?

市值在选股时是一个非常重要的变量,但仅仅关注企业市值,却忽略了企业盈利能力、持续增长能力等因素,可能导致其市值被低估,或者忽略了一些有潜力的小型企业。同时,市值在不同行业也可能起到不同的作用,需要针对不同行业进行分析。

如何优化?

除了考虑基本面因素外,也应该注意行业趋势、政策风险等其他因素。同时,市值的绝对值并不是唯一标准,还应该结合相应行业的市值水平、盈利能力等指标进行分析。此外,市值水平和选股周期也应该结合起来综合考虑,选择合适的市值范围。

最终的选股逻辑

本选股策略选取振幅大于1、周线MACD在零轴之上,市值在100亿以内且无亏损的企业作为投资标的。同时,考量企业的盈利能力、行业趋势和政策风险等因素,从长期和稳健的角度考虑,避免盲目追逐短期波动。

同花顺指标公式代码参考:

振幅大于1:

(HIGH - LOW) / PRE_CLOSE > 0.01

周线MACD在零轴之上:

(REF(MACD(12,26,9),1) > REF(MACDSIGNAL(12,26,9),1)) AND (MACD(12,26,9) > 0)

市值在100亿以内:

TOTALMV < 100000

无亏损企业:

(SUM(IF((IFNULL(ROE,0)>0),1,0),4)/4=1) OR (SUM(IF((IFNULL(ROA,0)>0),1,0),4)/4=1)

python代码参考:

# 引入Tushare库
import tushare as ts

# 查询股票数据,根据条件筛选股票
selected_stocks = []
for code in ts.get_stock_basics().index:
    # 获取股票数据
    daily_data = ts.get_k_data(code)
    if len(daily_data) < 1:
        continue
    # 筛选符合条件的股票
    if (daily_data['high'] - daily_data['low']).mean() / daily_data['close'].mean() > 0.01 and \
            (REF(MACD(12, 26, 9), 1) > REF(MACDSIGNAL(12, 26, 9), 1)) and \
            ts.get_hist_data(code)['totalmv'][0] < 100000 and \
            (ts.get_hist_data(code)['roe'] > 0).sum() == 4 or (ts.get_hist_data(code)['roa'] > 0).sum() == 4:
        selected_stocks.append(code)

# 输出选中的股票
print(selected_stocks)

本选股策略选取振幅大于1、周线MACD在零轴之上,并且市值在100亿以内且无亏损的企业作为投资标的。同时,要关注公司的基本面、盈收情况、行业趋势以及选择合适的投资策略进行投资。

    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

    select_sentence = '市值小于100亿' #选股语句。

    模板如何使用?

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


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

评论