(supermind量化策略)task17/a/换手率3%-12%、kdj(k)增长值、5

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

问财量化选股策略逻辑

选股逻辑为:在换手率3%到12%之间,选取KDJ(K)增长值大于0且小于100的个股,且500日内至少有两次涨停。

选股逻辑分析

该选股逻辑基于对个股的技术面和市场表现的综合考虑,要求在趋势上表现强劲(KDJ增长值大于0且小于100)且市场反应良好(500日内至少两次涨停)。

有何风险?

该选股逻辑可能会将短期内潜力强的但市场表现尚未出现的个股筛掉,同时可能会将市场表现极佳但已经到达高位的个股选入组合中。

如何优化?

可以考虑引入其他技术指标进行筛选,如RSI指标、BOLL指标等,以对趋势和短期变化进行综合考量。同时可以引入其他财务指标、公司基本面数据等进行深度分析。

最终的选股逻辑

在换手率3%到12%之间,选取KDJ(K)增长值大于0且小于100的个股,且500日内至少有两次涨停。

同花顺指标公式代码参考

通达信选股公式:

选股条件:TURNOVERRATE > 3 AND TURNOVERRATE < 12 AND KDJK > REF(KDJK, 1) AND COUNT(IF(VAR1==0, 0, 1), 500) >= 2
变量定义:VAR1: 涨停板,取值1表示涨停,0表示未涨停。

其中,TURNOVERRATE 表示换手率指标,KDJK 表示KDJ技术指标,REF 表示引用前一根K线数据,COUNT 表示统计VAR1在过去500个交易日中有多少次不为0。

Python代码参考

import pandas as pd
from typing import List

def select_stock(data: pd.DataFrame) -> List[str]:
    selected_stocks = []
    stock_data = data[data['turnover_rate'].between(3, 12)]
    stock_data = stock_data[stock_data['kdj_k'].diff() > 0]
    stock_data = stock_data[stock_data['up_count_500'] >= 2]
    selected_stocks = stock_data.index.levels[0].tolist()
    return selected_stocks

选取在换手率3%到12%之间的个股,筛选出KDJ技术指标增长值大于0且小于100的个股,并要求500日内至少两次涨停。其中,data表示记录个股交易数据的DataFrame,up_count_500表示过去500个交易日中的涨停板累积数量。

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

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

    模板如何使用?

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


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

评论