(supermind)振幅大于1、换手率_2%且_9%、10天内涨停天数大于2_

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

问财量化选股策略逻辑

选股逻辑为:振幅大于1、换手率大于2%小于9%、10天内涨停天数大于2的股票。该选股策略主要考虑了股票的波动性、市场交易情况以及近期市场情绪,找出一些具有较高热度的投资标的。

选股逻辑分析

选股策略主要考虑了股票的波动性、市场交易情况以及近期市场情绪,振幅大于1可以较好地筛选出波动性较大的股票,换手率大于2%小于9%表明了股票市场的交易活跃程度,而10天内涨停天数大于2则表明股票近期市场热度、情绪较高。

有何风险?

该选股策略较为依赖近期市场情绪及市场热度,存在选股风险。同时,过度追求涨停板的股票可能会产生慣性上涨而存在较大的风险。需要注重结合基本面因素进行综合考虑。

如何优化?

可以考虑加入基本面因素的综合分析,如市盈率、市净率、分红率等方面。同时,可以设置较为严格的选股条件,同时多考虑市场风格、趋势等因素,从而减少风险。

最终的选股逻辑

选股条件为:振幅大于1、换手率大于2%小于9%、10天内涨停天数大于2的股票。该选股策略主要考虑了股票的波动性、市场交易情况以及近期市场情绪,找出一些具有较高热度的投资标的。

同花顺指标公式代码参考

选股条件为:振幅大于1、换手率大于2%小于9%、10天内涨停天数大于2。

C1: ABS((HIGH/LOW-1)*100)>=1;//振幅大于1
C2: TURNOVER>2 AND TURNOVER<=9;//换手率大于2%小于9%
C3: CNTT(REF(HIGH==MAXS(HIGH,9)),10)>2;//10天内涨停天数大于2

SYMBOL: C1 AND C2 AND C3;

python代码参考

import pandas as pd 
import tushare as ts
import datetime

def select_stocks(length):
    ts.set_token('your token')
    pro = ts.pro_api()

    # 筛选符合条件的股票
    df_list = []
    for i in range(1, 10):
        trade_date = (datetime.datetime.today() - datetime.timedelta(days=i)).strftime('%Y%m%d')
        # 获取涨停股票
        limit_data = pro.limit_list(trade_date=trade_date, limit_type='U', fields='ts_code')
        if limit_data.empty:
            continue
        # 获取股票市场和技术数据
        tech_data = pro.daily_basic(ts_code=limit_data['ts_code'].tolist(), trade_date=trade_date, fields='ts_code,turnover_rate')
        if tech_data.empty:
            continue
        # 获取股票均线数据
        ma_data = pro.daily(ts_code=tech_data['ts_code'].tolist(), start_date=datetime.date.today()-datetime.timedelta(days=120), end_date=datetime.date.today()+datetime.timedelta(days=1),
                            fields='ts_code,trade_date,close')
        # 筛选符合条件的股票
        for index, row in tech_data.iterrows():
            if row['turnover_rate'] <= 0.02 or row['turnover_rate'] > 0.09:
                continue
            ma = ma_data[ma_data['ts_code'] == row['ts_code']]
            if ma.empty or ma.iloc[-1]['close'] > ma.iloc[-1]['close'].rolling(window=20).mean() or ma.iloc[-1]['close'] < ma.iloc[-1]['close'].rolling(window=120).mean():
                continue
            info = {}
            info['code'] = row['ts_code']
            # 获取企业名称
            info['name'] = pro.stock_basic(ts_code=row['ts_code'], fields='name').iloc[0]['name']
            # 获取近10日涨停天数
            cnt_data = pro.limit_list(ts_code=row['ts_code'], start_date=(datetime.datetime.today() - datetime.timedelta(days=10)).strftime('%Y%m%d'), end_date=datetime.datetime.today().strftime('%Y%m%d'),
                                    limit_type='U', fields='ts_code')
            if cnt_data.empty or len(cnt_data) <= 2:
                continue
            # 添加股票
            df_list.append(info)

    # 根据个股热度排序
    selected_stocks = pd.DataFrame(df_list)
    selected_stocks = selected_stocks.head(length)
    return selected_stocks

致辞

本次问答为选股逻辑:振幅大于1、换手率大于2%小于9%、10天内涨停天数大于2的股票的问答。该选股策略主要考虑了股票的波动性、市场交易情况以及近期市场情绪,找出一些具有较高热度的投资标的。

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

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

    模板如何使用?

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


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

评论

需要帮助?

试试AI小助手吧