(supermind)振幅大于1、9点25分涨幅小于6%、外盘除内盘大于1

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

问财量化选股策略逻辑

选股逻辑为:振幅大于1、9点25分涨幅小于6%、外盘/内盘比大于1.3,选择外盘成交量大于内盘成交量的股票作为选股对象。该选股策略综合考虑股票的波动性和市场情况,旨在挖掘有潜力的个股,做短线投资。

选股逻辑分析

该选股逻辑在振幅和9点25分涨幅的限制基础上,加入了外盘和内盘成交量的考量,通过外盘/内盘比和外盘成交量的大小逐步筛选优质股票。该逻辑能较好地反映资金的流入和流出情况,为资金实时监测和短线投资提供有效的参考。

有何风险?

该选股策略仍然存在较大的风险,主要表现在对市场情况的适应性不足,可能在市场变动时失去优势,同时过多依赖指标的运算结果,相对准确性较低。由于外盘/内盘比和外盘成交量等指标本身具有局限性,也可能导致选股的误判和风险。

如何优化?

对于该选股策略,需要深入分析市场情况和股票基本面,引入更多因子进行选股,以增加选股的准确性和可靠性。同时,需要对指标的选择和运算方法进行调整和优化,提高指标的精确度和实用性,避免误判和风险。

最终的选股逻辑

选股逻辑为:振幅大于1、9点25分涨幅小于6%、外盘/内盘比大于1.3,选择外盘成交量大于内盘成交量的股票作为选股对象。该选股策略注重股票的波动性和成交情况等综合指标的考量,综合财务和市场法则,寻找有短期投资价值的个股。

同花顺指标公式代码参考

FZ_RANGE > 1 AND LAST/LAST[1]-1<=0.06 AND EBP > 1.3 AND WP_VOL > WP_VOL[1] AND WP_VOL > MP_VOL

其中FZ_RANGE表示振幅的大小,LAST表示当天的收盘价,LAST[1]表示前一天的收盘价,EBP表示外盘/内盘比,WP_VOL表示外盘成交量,MP_VOL表示内盘成交量。通过以上指标查找符合条件的股票。

Python代码参考

import tushare as ts
from datetime import datetime, timedelta

def get_selected_stocks():
    pro = ts.pro_api()
    selected_stocks = []
    for ts_code in pro.stock_basic(exchange='', list_status='L', fields='ts_code,industry').values.tolist():
        # 振幅大于1
        k_data = pro.daily(ts_code=ts_code[0], start_date=(datetime.now()-timedelta(days=30)).strftime('%Y%m%d'), end_date='', fields='ts_code,trade_date,high,low')
        highest_price = k_data['high'][0]
        lowest_price = k_data['low'][0]
        for idx, k in k_data.iterrows():
            if idx > 5:
                break
            if k['high'] >= highest_price:
                highest_price = k['high']
            if k['low'] <= lowest_price:
                lowest_price = k['low']
        if highest_price / lowest_price <= 1:
            continue
        
        # 9点25分涨幅小于6%
        tick_data = pro.tick(ts_code=ts_code[0], date=datetime.now().strftime('%Y%m%d'))
        current_price = tick_data[tick_data['time'] == '09:25:00']['price'].values[0]
        pre_close = pro.daily(ts_code=ts_code[0], start_date=(datetime.now()-timedelta(days=6)).strftime('%Y%m%d'), end_date='', fields='ts_code,trade_date,close', freq='1D').iloc[1]['close']
        if current_price / pre_close >= 1.06:
            continue
        
        # 外盘/内盘比大于1.3
        k_data = pro.daily(ts_code=ts_code[0], start_date=(datetime.now()-timedelta(days=6)).strftime('%Y%m%d'), end_date='', fields='ts_code,trade_date,close')
        vol_data = pro.moneyflow(ts_code=ts_code[0], start_date=(datetime.now()-timedelta(days=6)).strftime('%Y%m%d'), end_date='', fields='ts_code,trade_date,p.buy_l_volume,p.sell_l_volume')
        if len(k_data) == 0 or len(vol_data) == 0:
            continue
        select_data = k_data.merge(vol_data, on='trade_date')
        select_data['ebp'] = select_data['buy_l_volume'] / select_data['sell_l_volume']
        if select_data[select_data['ebp'] <= 1.3].empty:
            continue
        
        # 外盘成交量大于内盘成交量
        wp_vol = select_data['buy_l_volume'].sum()
        mp_vol = select_data['sell_l_volume'].sum()
        if wp_vol < mp_vol:
            continue
        
        # 判断是否为主板股票
        if ts_code[1] != '主板':
            continue
        
        selected_stocks.append(ts_code[0])
    
    return selected_stocks

在Python代码中,同样使用tushare库获取股票数据,进而筛选符合条件的股票。通过振幅、涨幅和外盘/内盘比等综合指标来判断个股的波动性和成交情况,并逐步筛选储备有短期投资价值的股票。

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

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

    模板如何使用?

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


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

评论