需要帮助?

试试AI小助手吧

(supermind量化策略)task17/a/换手率3%-12%、流通市值50-100亿

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

问财量化选股策略逻辑

选股逻辑为:在换手率3%到12%、流通市值50亿元到100亿元、9点25分涨幅小于6%的股票中选取个股。

选股逻辑分析

该选股逻辑在前一个选股逻辑的基础上,增加了对盘中涨幅的限制,以避免暴涨的股票。选股逻辑中换手率和流通市值是市场活跃性和规模的代表,而限制盘中涨幅则有助于降低短期内的交易风险。

有何风险?

该选股逻辑的数据周期较为短,可能会忽略个股的基本面和财务状况等因素。同时,仅考虑盘中涨幅的控制,可能会忽略其他价格调整过程中的波动。

如何优化?

可以综合考虑市场的流动性、规模、基本面和价格走势等多个因素,更利用技术指标加强选股的策略,提高选股准确性和可靠性。

最终的选股逻辑

在换手率3%至12%、流通市值50亿至100亿、9点25分涨幅小于6%的条件下,选取个股。

同花顺指标公式代码参考

通达信选股公式:

选股条件:(TURNOVERRATE > 3) AND (TURNOVERRATE < 12) AND (CIRCULATION_VALUE > 5000000000 AND CIRCULATION_VALUE < 10000000000) AND (TIME=925 AND (HIGH-REF(OPEN,1))/REF(OPEN,1)*100<6)

其中,TURNOVERRATE表示换手率,CIRCULATION_VALUE表示流通市值,TIME表示时间(925表示9点25分),HIGH表示最高价,OPEN表示开盘价,REF表示数据移位函数。

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['close'].count() > 1:
            if 5e9 <= df['circulation_value'].mean() <= 1e10 and 3 <= df['turnoverrate'].mean() <= 12 and df.loc[(df.index.get_level_values(1).hour==9) & (df.index.get_level_values(1).minute==25), 'high'].pct_change().iloc[-1]*100 < 6:
                selected_stocks.append(code)
    return selected_stocks

该代码中,计算股票数据的平均换手率和流通市值等数据,选取流通市值50亿至100亿的股票,同时选取换手率在3%至12%之间的股票,并限制9点25分的涨幅小于6%。返回符合条件的股票列表。

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

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

    模板如何使用?

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


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

评论