(iwencai量化策略)竞价涨幅>-2<5_、2021年营收除2018年营收大于1

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

问财量化选股策略逻辑

选股逻辑:选用RSI小于65、2021年营收/2018年营收大于1.1、竞价涨幅在-2%到5%之间的股票。

选股逻辑分析

该选股策略结合了技术面和基本面指标,RSI指标用于判断股票是否超卖,营收数据用于判断基本面情况,竞价涨幅用于判断近期机构资金已经介入该股票的情况,筛出具有潜力、机会大的个股。

有何风险?

  1. 筛选竞价涨幅时,只考虑了短期内的机构资金情况,可能存在价格被短期操纵导致的误判风险。
  2. 策略忽略了其他指标,如市盈率等,可能在一定程度上影响筛选结果的准确性。
  3. 数据来源的准确性和完整性,未考虑财务造假、管理层经营能力等因素,具有一定的风险。

如何优化?

  1. 结合技术面和基本面指标,在确定筛选条件时,需要选择多个具有代表性的指标来进行综合评估,提高筛选结果的准确性。
  2. 结合市场情况,在调整筛选条件时,需要考虑市场面和宏观经济等因素,避免过度依赖几个关键指标。
  3. 对数据来源进行质量把控,首选官方公开数据或具有较好声誉的第三方数据,并尽可能采集多方面的数据来验证筛选结果。

最终的选股逻辑

选用RSI小于65、2021年营收/2018年营收大于1.1、竞价涨幅在-2%到5%之间的股票。

同花顺指标公式代码参考

通达信公式:

C/REF(C,1)>1.1 AND RSI(CLOSE,14)<65 AND (-2<=((OPEN/REF(CLOSE,1)-1)*100)<=5)

其中,REF表示时间序列向前位移函数。

python代码参考

以下是基于该选股策略编写的 Python 代码示例,仅供参考。

import tushare as ts
import talib

def select_stocks():
    res = []
    for stock in ts.get_stock_basics().index:
        try:
            rsi_threshold = 65
            revenue_ratio_threshold = 1.1
            open_increase_threshold_lower = -2
            open_increase_threshold_upper = 5
            
            # 过滤条件
            if ts.get_stock_basics().loc[stock]['name'].startswith('*ST'):
                continue
            if ts.get_stock_basics().loc[stock]['pe'] > 50:
                continue
                
            # 营收筛选条件
            revenue_ratio = ts.get_hist_data(stock)['revenue'][-1] / ts.get_hist_data(stock)['revenue'][0]
            if revenue_ratio < revenue_ratio_threshold:
                continue
            
            # RSI指标筛选条件
            rsi_data = talib.RSI(ts.get_hist_data(stock)['close'].values, timeperiod=14)
            if rsi_data[-1] > rsi_threshold:
                continue
                
            # 竞价涨幅筛选条件
            open_increase = (ts.get_today_ticks(stock)['price'].values[0] / ts.get_hist_data(stock)['close'].values[-2] - 1) * 100
            if open_increase < open_increase_threshold_lower or open_increase > open_increase_threshold_upper:
                continue
                
            res.append(stock)
        except Exception as e:
            continue
    return res

res = select_stocks()
print(res)

注:在使用该代码时,请遵守国家法律法规和相关规定,严禁擅自开展证券投资活动,自行承担相应风险。

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

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

    模板如何使用?

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


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

评论