(supermind)振幅大于1、换手率_2%且_9%、500日内至少2次涨停_

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

问财量化选股策略逻辑

选股逻辑为:振幅大于1、换手率>2%且<9%、500日内至少2次涨停的股票。该选股策略主要以波动性、市场关注度、趋势等指标为主,考虑股票的波动性和趋势性。

选股逻辑分析

该选股策略采用了振幅、换手率、涨停次数等指标,筛选出波动性较大且市场关注度较高的股票,并结合涨停次数来判断股票的趋势性。

有何风险?

该选股策略存在以下不足与风险:首先,通过涨停次数作为趋势判断标准可能存在过拟合问题,选出的股票可能不具备足够的长期投资价值;其次,该选股策略过于依赖历史数据,无法全面反映当前市场的变化。

如何优化?

该选股策略可以引入更多的指标,如市盈率、市净率等财务指标,加强对股票投资价值的评估。同时,可以增加更多的选股条件,如涨跌幅、相对强弱指数等技术指标,以更全面、准确地筛选股票。

最终的选股逻辑

选股条件为:振幅大于1、换手率>2%且<9%、500日内至少2次涨停的股票。该选股策略需要综合考虑股票波动性、市场关注度、趋势等指标,全面、准确地评估股票的投资价值。

同花顺指标公式代码参考

选股条件为:振幅大于1、换手率>2%且<9%、500日内至少2次涨停的股票。

C1: ABS((HIGH/LOW-1)*100)>=1;//振幅大于1
C2: TURNOVER>2 AND TURNOVER<9;//换手率大于2%小于9%

C3: COUNT(IF((HIGH == REF(HIGH,1) AND LOW == REF(LOW,1) AND CLOSE == REF(CLOSE,1)), 1, 0), 500) >= 2;//500日内至少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()

    # 获取股票数据
    stock_data = pro.stock_basic(list_status='L', exchange='SSE', fields='ts_code,symbol,name,industry,list_date')
    current_date = (datetime.datetime.now() - datetime.timedelta(days=2)).strftime("%Y%m%d")
    df_list = []

    # 筛选符合条件的股票
    for index, row in stock_data.iterrows():
        code = row['ts_code']
        info = {}
        info['code'] = code
        info['name'] = row['name']
        # 获取技术数据
        tech_data = pro.daily(ts_code=code, end_date=datetime.datetime.now().strftime("%Y%m%d"), fields='open, high, low, vol, trade_date, ma5, ma10')
        if tech_data.empty:
            continue
        max_price = tech_data['high'].rolling(500).max().max()
        if max_price != tech_data.iloc[-1]['high']:
            continue
        if tech_data.iloc[-1]['high'] - tech_data.iloc[-1]['low'] <= 0 or tech_data.iloc[-1]['vol'] / pro.stock_basic(ts_code=code).iloc[0]['total_share'] <= 0.02 or tech_data.iloc[-1]['vol'] / pro.stock_basic(ts_code=code).iloc[0]['total_share'] >= 0.09:
            continue
        count = tech_data.apply(lambda x: 1 if x['high'] == x['high'] and x['low'] == x['low'] and x['close'] == x['close'] and tech_data.loc[tech_data['trade_date'] == x['trade_date'] - datetime.timedelta(days=1), 'high'].iat[0] != x['high'] else 0, axis=1).rolling(500).sum().iat[-1]
        if count < 2:
            continue
        # 添加股票
        df_list.append(info)

    selected_stocks = pd.DataFrame(df_list).head(length)
    return selected_stocks

致辞

本次问答为选股逻辑:振幅大于1,换手率>2%且<9%,500日内至少2次涨停的问答。该策略选股条件相较之前增加了涨停次数,需要同时考虑股票的波动性、市场关注度、趋势等指标,以更全面、准确地评估股票的投资价值。

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

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

    模板如何使用?

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


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

评论

需要帮助?

试试AI小助手吧