摘要: 妖股具有高波动与资金驱动特征。结合量价、筹码、市场情绪构建量化选股模型,严格执行止损,可提升捕捉概率。

妖股的本质与量化捕捉逻辑

妖股走势脱离大盘与行业基本面,由短期资金接力与情绪共振驱动。捕捉妖股需要放弃价值投资框架,转而研究筹码分布、换手率与波动率突变。期货市场同样存在类似妖股特征的品种,如某些小品种合约在供需错配下出现连续单边行情。量化方法能剥离主观情绪,通过统计规律识别潜在妖股启动点。

识别妖股启动前的量价特征

妖股启动前通常出现以下量化信号:

  • 换手率突然放大至过去20日均值的3倍以上,且持续2-3个交易日

  • 价格突破60日最高价,同时成交量创60日新高

  • 日内振幅从平静的2%-3%跃升至7%以上

  • 融资余额或龙虎榜出现游资席位净买入

用Python计算这些条件:

想捉只妖股总是捉不着 怎么才能捉到呢


import pandas as pd

import numpy as np

def detect_yaogu_signals(df, window=20):

    df['turnover_ma'] = df['turnover'].rolling(window).mean()

    df['vol_ma'] = df['volume'].rolling(window).mean()

    df['high_60'] = df['high'].rolling(60).max().shift(1)

    df['amplitude'] = (df['high'] - df['low']) / df['close'].shift(1)



    cond1 = df['turnover'] > 3 * df['turnover_ma']

    cond2 = df['volume'] > df['vol_ma'] * 2

    cond3 = df['close'] > df['high_60']

    cond4 = df['amplitude'] > 0.07



    df['signal'] = cond1 & cond2 & cond3 & cond4

    return df

期货市场中,妖股对应的是逼仓行情或供需拐点。监控持仓量变化与现货升贴水,当持仓量骤增且价格突破关键位,往往预示大行情。

筹码结构与资金流向的量化跟踪

妖股需要高度集中的筹码锁仓。通过计算股东户数变化、人均持股金额、前十大流通股东占比,可以筛选出筹码快速集中的个股。量化指标包括:

  • 股东户数季度环比下降超过15%

  • 户均持股金额超过50万元

  • 龙虎榜游资净买入额占当日成交额5%以上

期货中,跟踪主力合约前20席位净持仓变化,当净空转为净多且幅度剧烈,对应妖股般的拉升。


# 模拟游资净买入强度

net_buy = df['lhb_buy'] - df['lhb_sell']

df['hot_money_ratio'] = net_buy / df['amount']

df['chip_concentrate'] = df['holder_num'].pct_change(-1) < -0.15

情绪周期与涨停板基因

妖股诞生于情绪冰点后的修复期。统计涨停板数量、连板高度、炸板率可以定位情绪周期。当涨停家数从20家以下回升至50家以上,且出现3连板以上个股,妖股概率大增。

期货情绪通过波动率指数与持仓量比价观察。当波动率从低位跳升,且近月合约升水扩大,趋势性妖孽行情启动。

量化模型需加入时间衰减因子:


emotion_score = (limit_up_count / 50) * 0.4 + (max_continuous / 5) * 0.3 - (fail_rate * 0.3)

if emotion_score > 0.6:

    position_size = 0.3  # 仓位可提升至30%

严格止损与仓位管理

捉妖股失败的核心原因是止损不坚决。妖股一旦断板或跌破5日线,必须离场。量化规则:

  • 买入后次日不涨停即减半仓

  • 跌破买入价5%无条件清仓

  • 单只妖股仓位不超过总资金20%

期货妖孽行情中,使用ATR止损:


atr = df['tr'].rolling(14).mean()

stop_loss = entry_price - 2 * atr

不要试图抄底妖股,只做启动确认后的追涨。市场每季度会诞生3-5只妖股,用上述量化条件扫描全市场,每周筛选出1-2只候选,等待信号触发。坚持执行,捕捉概率从随机提升至可重复。

实战流程与代码整合

每日收盘后运行选股脚本:

  1. 计算换手率突变、突破60日高点、振幅跃升

  2. 检查龙虎榜游资净买入

  3. 统计市场情绪得分

  4. 输出候选池,次日开盘观察竞价强度

期货每日监控:持仓量前20席位净持仓变化、近月升贴水、波动率跳升。


candidates = []

for stock in all_stocks:

    if stock.signal and stock.hot_money_ratio > 0.05 and emotion_score > 0.6:

        candidates.append(stock.code)

最终执行需要机器纪律。妖股是概率游戏,量化系统能提高胜率,无法保证每只都成功。亏损时快速认错,盈利时让利润奔跑,通过多次小亏大赚累积收益。