(同花顺量化)100亿市值以内的无亏损企业_、昨日竞价换手率大于0

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

问财量化选股策略逻辑

选股逻辑:在RSI小于65、昨日竞价换手率大于0.26、市值不超过100亿且近几年盈利稳定的无亏损企业中进行选股。

选股逻辑分析

该选股策略基于技术指标、市场情绪和公司基本面进行选股,主要考虑的是股票市场前景和公司财务状况等因素。添加了市值和企业盈利等指标的考察。RSI小于65代表股票有一定的安全边际,且昨日竞价换手率大于0.26代表市场对于该股看好程度较高。同时,该选股策略可以避开亏损的企业并选取市值小于100亿且近几年盈利稳定的企业,以寻求长期投资价值。

有何风险?

该选股策略的风险在于,较大的市值范围可能会涵盖一些资本等行业产业,这些公司的财务状况不稳定,可能出现业绩大幅下滑等问题。同时,近几年盈利表现稳定并不代表未来稳定,可能存在其他风险并未考虑到。

如何优化?

1.更细致的市值划分范围:可以根据不同的选股目标设定具体的市值划分范围,以便更好地观察合适的企业范围。

2.加入其他财务指标或分析明细:可以加入更具细化的财务分析指标,如资产负债率、净利润率等,从更多维度来衡量企业的财务状况。

3.结合行业分析:可以结合行业分析来选取企业,判断企业竞争力和未来可能的发展趋势等。

最终的选股逻辑

选股标准为RSI小于65、昨日竞价换手率大于0.26、市值不超过100亿且近3年内净利润、归母净利润呈现稳定增长的无亏损企业为选取对象。

同花顺指标公式代码参考

// RSI小于65
CONDITION1 = RSI(C,14) < 65;

// 昨日竞价换手率大于0.26
CONDITION2 = Turnover > 0.26;

// 市值不超过100亿
CONDITION3 = Capitalization < 100;

// 近3年净利润稳定增长
CONDITION4 = LastYearNetProfit > NetProfit3YearsAgo AND NetProfit3YearsAgo > NetProfit5YearsAgo;

// 选取符合条件的股票
SELECT (CONDITION1 AND CONDITION2 AND CONDITION3 AND CONDITION4);

python代码参考

import datetime
import tushare as ts
import numpy as np

def select_stocks(stocks):
    res = []
    for stock in stocks:
        try:
            basic_data = ts.get_stock_basics()
            circ_value = basic_data.loc[stock]['circulating_a'] * basic_data.loc[stock]['price'] / 100000000
            if circ_value < 0.55 or circ_value > 100: # 流通盘大小范围筛选
                continue
            if basic_data.loc[stock]['totalAssets'] == 0: # 筛选数据存在性判断
                continue
            capitalization = basic_data.loc[stock]['totalAssets'] * basic_data.loc[stock]['pb']
            if capitalization > 100: # 市值范围筛选
                continue
            quarter_data = ts.get_profit_data(stock)
            lst = quarter_data['roe'].values
            if len(lst) < 3 or min(lst[-3:]) < 0: # 近3年ROE为正才算稳定
                continue
            res.append((basic_data.loc[stock]['price'], stock))
        except:
            continue
    res.sort(reverse=True)
    return [i[1] for i in res]

stocks = ts.get_stock_basics().index
res = select_stocks(stocks)
print(res)

注意:在实际代码中可能需要对于数据类型和异常进行额外判断。对于无法用tushare查询到的数据,可以使用信息披露网站或者其他数据源查询。

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

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

    模板如何使用?

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


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

评论