(iwencai量化策略)按今日竞价金额排序前5_、昨日竞价换手率大于0

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

问财量化选股策略逻辑

选股逻辑:RSI小于65、昨日竞价换手率大于0.26、按今日竞价金额排序前5的股票。

选股逻辑分析

在基于RSI和竞价换手率的选股逻辑基础上,加入了新的选股条件:按今日竞价金额排序,选取前五只股票。这一条件的加入可以更好地筛选出活跃的个股,但也会增加一定风险。

有何风险?

按今日竞价金额排序选取前五只股票可能容易选中短线炒作的个股,而非长期持有的优质公司,因此需要进行进一步优化。

如何优化?

  1. 结合基本面指标对筛选结果进行过滤:在选取前五只股票后,需要对其基本面指标进行进一步比较,筛选出质量更高的个股。

  2. 增加其他技术指标:可以加入MACD、KDJ、DMI等指标,综合分析更多的技术指标可以更好地反映股票走势。

  3. 加入量价关系的分析:可以根据股票的成交量情况,结合价格等信息进行综合分析,更为全面地评估股票走势。

最终的选股逻辑

选股标准为:RSI小于65、昨日竞价换手率大于0.26、按今日竞价金额排序选取前五只股票。

同花顺指标公式代码参考

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

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

// 按今日竞价金额排序,选取前5
SELECT TOP 5 SORTBY(BidTradeAmount1) AS A;

// 筛选符合条件的股票
SELECT (CONDITION1 AND CONDITION2 AND A);

python代码参考

import tushare as ts

def select_stocks(stocks):
    res = []
    for stock in stocks:
        k_data = ts.get_k_data(stock, start='2018-01-01', end='2021-08-31', ktype='D')
        if len(k_data) >= 250:
            rsi = talib.RSI(k_data['close'].astype(float).values, timeperiod=14)[-1]
            turnover = k_data['turnover'].astype(float).values[-2] / 100
            bid_trade_amount1 = ts.get_realtime_quotes(stock)['b1_v'][0]
            if rsi < 65 and turnover > 0.26:
                res.append((stock, float(bid_trade_amount1)))
    res = sorted(res, key=lambda x: x[1], reverse=True)[:5]
    return [r[0] for r in res]

stocks = ts.get_stock_basics().index
res = select_stocks(stocks)
print(res)
    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

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

    模板如何使用?

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


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

评论