(supermind量化策略)task17/a/换手率3%-12%、三连阴、前日实际换手率

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

问财量化选股策略逻辑

选股逻辑为:在换手率在3%-12%之间、连续三天收阴线、前一交易日实际换手率在3%~28%之间时,选取这些股票。

选股逻辑分析

该选股逻辑基于换手率、连续收阴线等技术面因素,同时将前一交易日的实际换手率作为筛选条件。这样既考虑了技术面的因素,也考虑了基本面的情况,提高了选股的精度。

有何风险?

该选股逻辑只考虑了前一交易日的实际换手率,没有考虑到换手率的走势。如果选股时该股票处于换手率较高的位置,但是其实际换手率并未达到筛选条件,可能会漏掉优质股票。

如何优化?

可以进一步考虑加入其它技术面因素,比如收盘价与开盘价的关系等,综合考虑多个因素,继而完善整个选股策略。

最终的选股逻辑

在换手率在3%-12%之间、连续三天收阴线、前一交易日实际换手率在3%~28%之间时,选取这些股票。

同花顺指标公式代码参考

以通达信公式为例:

SETBARS(250,0);
V_SELECT:=MAINbd AND 三连阴(5) AND REF(C, 2) / REF(O, 2) - 1 > 0.03 AND REF(C, 2) / REF(O, 2) - 1 < 0.28;
条件选股:V_SELECT;

python代码参考

import baostock as bs
import pandas as pd

#### 登陆系统 ####
lg = bs.login()

#### 获取满足条件的股票 ####
rs = bs.query_stock_basic()
stock_list = []
while (rs.error_code == '0') & rs.next():
    stock_code = rs.get_row_data()[0]
    # 查询历史K线和前一交易日的实际换手率
    rs_k = bs.query_history_k_data_plus(stock_code, "date,open,high,low,close,tradeStatus,volume,amount,turn,pctChg", start_date='2022-01-01', end_date='2022-07-06', frequency='d', adjustflag='3')
    if rs_k.error_code == '0':
        close_hist = list(map(float, rs_k.get_column("close")))
        volume_hist = list(map(float, rs_k.get_column("volume")))
        actual_turnover = volume_hist[-2] / (sum(volume_hist[-5:-1]) / 4)
        if len(close_hist) >= 4 and all([close_hist[i] < close_hist[i-1] for i in range(1, 4)]) and actual_turnover > 0.03 and actual_turnover < 0.28:
            stock_list.append(stock_code)

# 转换成DataFrame格式并输出结果
df = pd.DataFrame(stock_list, columns=['stock_code'])
print(df)

#### 登出系统 ####
bs.logout()
    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

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

    模板如何使用?

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


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

评论