(supermind量化策略)task17/a/换手率3%-12%、七连阴、10日涨幅大于

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

问财量化选股策略逻辑

选股逻辑为:在换手率3%到12%之间,选择最近七天内连续下跌并且十日涨幅在0%到35%之间的股票作为投资标的。

选股逻辑分析

该选股逻辑相对于前一个问题,增加了选股范围,这会导致更多的标的被选出。此外,该逻辑也考虑了股票的10日涨幅,即考虑了股票的短期涨势,增强了投资标的的赚钱能力。

有何风险?

该选股逻辑仍存在过度拟合的风险,同时,加入更多条件限制也会限制标的的数量,可能影响选股的可行性和收益性。

如何优化?

类似前一个问题,可以尝试添加其他类型的指标或基本面数据进行进一步筛选,如财务指标、技术指标等。同时,适当放宽条件,扩大标的数量也是一个不错的策略。

最终的选股逻辑

选择在换手率3%到12%的范围内, 在最近七天内连续下跌并且股票的10日涨幅在0%到35%之间的股票作为投资标的。在基本面或技术面上,可以加入相应的指标,如市盈率、技术指标等,作为进一步筛选标准。

同花顺指标公式代码参考

以下是通达信选股公式:

选股公式:
选股条件: TURNOVERRATE >3 AND TURNOVERRATE <12 AND SUM(IF(CLOSE < REF(CLOSE, 1), 1, 0), 7) = 7 AND DIFF > 0 AND DIFF < 35 AND D > COUNT(CLOSE > REF(CLOSE, 1), 10) AND YEAR(DATE)=YEAR(TODAY)

注:CLOSE为收盘价,TURNOVERRATE为换手率,DIFF为股价变动率,D为股价最近十日的涨跌情况。该选股公式选择了在3%到12%的换手率范围内, 最近七天内连续下跌并且股票的10日涨幅在0%到35%之间的股票,符合条件的股票将被筛选出来。

python代码参考

import pandas as pd

def select_stock(data: pd.DataFrame) -> List[str]:
    selected_stocks = []
    for code, df in data.groupby(level=0):
        if (df['turnoverratio'].iloc[-1] > 3 and df['turnoverratio'].iloc[-1] < 12 and \
            (df['close'].rolling(window=7).apply(lambda x: (x[:-1] > x[-1]).all())).iloc[-1] and \
            (df['pct_chg'].iloc[-1] > 0 and df['pct_chg'].iloc[-1] < 35) and \
            (df['close'] > df['close'].shift(1)).rolling(window=10).sum().iloc[-1] > 0 and \
            (df.index.year == df.index[-1].year).all()):
            selected_stocks.append(code)
    return selected_stocks

同样需要注意数据源指标名称的相应调整。最终选股策略可以根据实际情况和市场变化进行微调和调整。

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

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

    模板如何使用?

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


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

评论