(supermind)振幅大于1、换手率_2%且_9%、机构动向大于0_

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

问财量化选股策略逻辑

选股逻辑为:振幅大于1,换手率>2%且<9%,机构动向大于0。该选股策略主要以技术面指标为主,即振幅、换手率和机构动向来判断股票的走势和资金流向,以筛选出符合标准的股票。

选股逻辑分析

该选股逻辑同样以技术面指标为主,通过综合运用振幅、换手率和机构动向等指标,以判断股票的走势情况和资金动向,从而筛选出符合条件的股票。同时,该选股策略相对较为稳健,可以适用于较多的市场环境。

有何风险?

该选股策略同样以技术面指标为主,可能会忽略了其他因素,如基本面、政策因素等的影响。此外,机构动向的数据可能会有滞后性,可能导致对股票走势的判断产生误差。另外,机构动向也可能会受到市场噪音等因素的影响,产生短期的波动。

如何优化?

为减少忽略市场环境的风险,可以在选股策略中加入市场趋势判断,如MACD、RSI等指标的判断,以及加入更多的技术面指标,如成交量、资金流向等指标,以充分判断股票的走势情况和资金动向。另外,可以适当加入基本面因素、政策因素等指标,以综合考虑多个因素对股票走势的影响。

最终的选股逻辑

选股条件为:振幅大于1,换手率>2%且<9%,机构动向大于0,并加入适应当前市场环境的判断因素,以及风险管理策略。

同花顺指标公式代码参考

选股条件为:振幅大于1,换手率>2%且<9%,机构动向大于0。

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

SYMBOL: C1 AND C2 AND C3;

Python代码参考

import pandas as pd
import tushare as ts

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 = '20220308'

    # 筛选符合条件的股票
    selected_stocks = []
    for index, row in stock_data.iterrows():
        code = row['ts_code']
        info = {}
        info['code'] = code
        info['name'] = row['name']

        # 排除科创板股票
        industry = row['industry']
        if industry.startswith('688'):
            continue

        # 获取技术数据
        tech_data = pro.daily(ts_code=code, start_date='20190101', end_date=current_date, fields='high,low,close,vol')

        if tech_data.empty or tech_data['low'].shift(1).dropna().reset_index(drop=True).rename('last_low') > tech_data.iloc[1:, 3].reset_index(drop=True):
            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
        
        # 获取机构动向数据
        moneyflow_data = pro.moneyflow(ts_code=code, start_date='20190101', end_date=current_date, fields='buy_sm_vol,sell_sm_vol,buy_md_vol,sell_md_vol,buy_lg_vol,sell_lg_vol')
        if moneyflow_data.empty or sum(moneyflow_data.iloc[-1][[0, 2, 4]]) <= sum(moneyflow_data.iloc[-1][[1, 3, 5]]):
            continue

        selected_stocks.append(info)

        if len(selected_stocks) >= length:
            break

    return selected_stocks

致辞

本次问答为问财量化选股策略逻辑的第七十二篇,该选股策略同样以技术面指标为主,通过综合运用振幅、换手率和机构动向等指标,以判断股票的走势情况和资金动向,从而筛选出符合条件的股票。在实际选股中,需要充分考虑市场环境、行情风险、基本面等多个因素,建立稳健的选股体系,以获得更稳定的投资收益。

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

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

    模板如何使用?

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


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

评论

需要帮助?

试试AI小助手吧