deepseek将妖股的筹码峰解析,编辑一个筛选妖股策略,能不能赚钱

内容分享1周前发布
0 10 0

deepseek的无限可能,就是将一个交易理念转化为一个可行的交易策略,然后将每一个关键细节因子编辑为源代码,然后实现EA自动化交易的过程。

涨得幅度一旦大了,就会被标注为妖股,而幅度之所以大的逻辑是什么?

当deepseek将妖股的筹码峰进行了三个维度七个具体的条件的框架圈定,这一切就会一目了然。


deepseek:按照筹码峰编辑一个筛选妖股的策略。

妖股筛选条件详解:系统从筹码结构、资金动向、价格动能三个维度综合评估股票,符合妖股的核心特征。

各个的条件的详细解析:

条件1: 成本高度聚焦 :

筹码聚焦度 < 15

# 计算逻辑
cost_5 = np.percentile(recent['close'], 5)    # 5%投资者的成本价
cost_95 = np.percentile(recent['close'], 95)  # 95%投资者的成本价
concentration = (cost_95 - cost_5) / (cost_95 + cost_5) * 100

市场含义:

  • 筹码聚焦:说明大部分投资者的持仓成本聚焦在相对狭窄的价格区间
  • 主力控盘:高度聚焦的筹码一般意味着有主力资金在控盘
  • 突破容易:一旦突破成本密集区,上方抛压较小,容易形成连续拉升

实战意义:

  • <15:筹码高度聚焦,主力控盘明显
  • 15-30:筹码相对聚焦
  • >30:筹码分散,难以形成合力

条件2: 筹码穿透力强 :

筹码穿透力 > 2.0

# 计算逻辑
penetration = (近期均量 / 历史均量) / (价格波幅 / 近期均价)

市场含义:

  • 量价配合:衡量成交量对价格区间的穿透能力
  • 资金效率:值越大说明用相对较小的成交量就能推动较大的价格波动
  • 锁仓良好:高穿透力表明抛压很小,少量买盘就能大幅推高价格

实战意义:

  • >2.0:强势特征,资金效率极高
  • 1.0-2.0:正常水平
  • <1.0:资金效率低下

条件3: 筹码锁定度高 :

筹码锁定度 > 3.0

# 计算逻辑
lock_ratio = 1 / (换手率 × 价格波动率 + 0.001)

市场含义:

  • 惜售心理:投资者不愿卖出,持仓稳定
  • 信心充足:持有者对后市看好,不惧波动
  • 浮筹减少:市场流通筹码减少,有利于价格拉升

实战意义:

  • >3.0:筹码锁定良好,抛压很小
  • 1.0-3.0:正常锁定状态
  • <1.0:筹码松动,抛压较大

条件4: 主力控盘度 :

主力控盘度 > 30%

# 计算逻辑
大单天数 = 成交量 > 均量×2 的天数
控盘度 = 大单天数 / 总天数 × 100

市场含义:

  • 资金介入:有明显的大资金在活跃交易
  • 主导力量:主力资金在引导价格走势
  • 持续关注:不是一日游行情,有持续的资金关注

实战意义:

  • >30%:主力深度介入
  • 15%-30%:有必定主力活动
  • <15%:散户行情为主

条件5: 短期强势 :

5日涨幅 > 20%

市场含义:

  • 强势启动:短期内有明显的资金推动
  • 市场关注:涨幅较大吸引市场眼球
  • 趋势确立:突破前期整理平台

妖股特征: 妖股往往在启动初期就有惊人的涨幅,这是识别的重大标志。


条件6: 成交量放大 :

量比 > 2.0

# 计算逻辑
量比 = 当日成交量 / 最近20日平均成交量

市场含义:

  • 资金涌入:明显有新增资金进场
  • 活跃度提升:交易活跃度大幅提高
  • 关注度增加:吸引更多投资者关注

实战意义:

  • >2.0:明显放量,资金关注度高
  • 1.5-2.0:温和放量
  • <1.5:量能不足

条件7: 高换手

换手率 > 8%

# 计算逻辑
换手率 = 近期5日均量 / 历史均量 × 100

市场含义:

  • 充分换手:新旧资金充分交换
  • 成本抬高:新进投资者成本较高,支撑股价
  • 流动性好:便于大资金进出

以上是deepseek所完成的一个依据筹码峰筛选妖股的关键的因子,三个维度,七个因子,并且进行了逐一的解释,当然,可以把它变成一种打分的方式,就像量化一样,满分为100分,然后将以上七个因子项逐一打分,在保证每一项保持高质以外,其综合分数越高越好,一般以80分为及格分,90分以上,就是必选的优质标的了。


deepseek:将妖股筹码峰源代码编辑为一个代码和文字说明共同存在的系统。

为了便于观瞻和理解的需要,我要求deep将文字和源代码共同载体的系统复制于此。

我将逐字码翻译上面的Python妖股筛选器代码:

# 导入必要的库
import pandas as pd  # 导入pandas库,用于数据处理和分析
import numpy as np  # 导入numpy库,用于数值计算
import talib  # 导入talib库,用于技术分析指标计算
from datetime import datetime, timedelta  # 从datetime模块导入datetime和timedelta类,用于处理日期和时间

class MonsterStockScreener:  # 定义名为MonsterStockScreener的类,用于筛选妖股
    def __init__(self):  # 定义类的初始化方法
        self.results = []  # 初始化实例变量results为空列表,用于存储筛选结果
    
    def calculate_chip_indicators(self, df, period=60):  # 定义计算筹码峰相关指标的方法,参数为数据框和统计周期(默认60)
        """
        计算筹码峰相关指标
        """
        # 基础价格数据
        high = df['high'].values  # 获取最高价序列并转换为numpy数组
        low = df['low'].values  # 获取最低价序列并转换为numpy数组
        close = df['close'].values  # 获取收盘价序列并转换为numpy数组
        volume = df['volume'].values  # 获取成交量序列并转换为numpy数组
        
        # 1. 成本聚焦度计算
        def cost_concentration(df, period):  # 定义内部函数计算成本聚焦度
            recent = df.tail(period)  # 获取最近period天的数据
            cost_5 = np.percentile(recent['close'], 5)  # 计算收盘价的5%分位数(代表5%成本线)
            cost_95 = np.percentile(recent['close'], 95)  # 计算收盘价的95%分位数(代表95%成本线)
            concentration = (cost_95 - cost_5) / (cost_95 + cost_5) * 100  # 计算成本聚焦度指标
            return concentration  # 返回成本聚焦度值
        
        # 2. 筹码穿透力
        def chip_penetration(df):  # 定义内部函数计算筹码穿透力
            recent = df.tail(20)  # 获取最近20天的数据
            avg_volume = recent['volume'].mean()  # 计算近期平均成交量
            price_range = recent['high'].max() - recent['low'].min()  # 计算近期价格波动范围
            if price_range > 0:  # 如果价格范围大于0(避免除以0的错误)
                penetration = (avg_volume / df['volume'].mean()) / (price_range / recent['close'].mean())  # 计算筹码穿透力指标
            else:  # 如果价格范围为0
                penetration = 0  # 设置穿透力为0
            return penetration  # 返回筹码穿透力值
        
        # 3. 筹码锁定度
        def chip_lock_ratio(df):  # 定义内部函数计算筹码锁定度
            # 通过换手率和价格稳定性判断筹码锁定程度
            turnover = df['volume'].tail(10).mean() / df['volume'].mean()  # 计算近期换手率相对于历史平均的比例
            price_volatility = df['close'].pct_change().std()  # 计算价格波动率(收益率的标准差)
            lock_ratio = 1 / (turnover * price_volatility + 0.001)  # 计算筹码锁定度(换手率和波动率越低,锁定度越高)
            return min(lock_ratio, 10)  # 返回锁定度值,限制最大值为10
        
        # 4. 主力控盘度
        def main_force_control(df):  # 定义内部函数计算主力控盘度
            # 基于大单净流入和价格走势判断
            large_volume_days = len(df[df['volume'] > df['volume'].mean() * 2])  # 统计成交量超过平均成交量2倍的天数
            control_ratio = large_volume_days / len(df) * 100  # 计算主力控盘度比例
            return control_ratio  # 返回主力控盘度值
        
        # 计算所有指标
        indicators = {  # 创建字典存储所有计算出的指标
            'cost_concentration': cost_concentration(df, period),  # 成本聚焦度指标
            'chip_penetration': chip_penetration(df),  # 筹码穿透力指标
            'chip_lock_ratio': chip_lock_ratio(df),  # 筹码锁定度指标
            'main_force_control': main_force_control(df.tail(period)),  # 主力控盘度指标(使用最近period天数据)
            'price_increase_5d': (close[-1] / close[-6] - 1) * 100,  # 5日涨幅(当前收盘价相对于6天前收盘价的涨幅)
            'price_increase_20d': (close[-1] / close[-21] - 1) * 100,  # 20日涨幅(当前收盘价相对于21天前收盘价的涨幅)
            'volume_ratio': volume[-1] / np.mean(volume[-20:]),  # 量比(当日成交量相对于最近20日平均成交量的比例)
            'turnover_rate': np.mean(volume[-5:]) / df['volume'].mean() * 100  # 换手率(最近5日平均成交量相对于历史平均的比例)
        }
        
        return indicators  # 返回包含所有指标的字典
    
    def monster_stock_criteria(self, indicators):  # 定义妖股筛选条件的方法,参数为指标字典
        """
        妖股筛选条件
        """
        score = 0  # 初始化得分为0
        
        # 条件1: 成本高度聚焦 (筹码聚焦度 < 15)
        if indicators['cost_concentration'] < 15:  # 如果成本聚焦度小于15
            score += 25  # 加25分
        
        # 条件2: 筹码穿透力强 (> 2.0)
        if indicators['chip_penetration'] > 2.0:  # 如果筹码穿透力大于2.0
            score += 20  # 加20分
        
        # 条件3: 筹码锁定度高 (> 3.0)
        if indicators['chip_lock_ratio'] > 3.0:  # 如果筹码锁定度大于3.0
            score += 15  # 加15分
        
        # 条件4: 主力控盘度 (> 30%)
        if indicators['main_force_control'] > 30:  # 如果主力控盘度大于30%
            score += 15  # 加15分
        
        # 条件5: 短期强势 (5日涨幅 > 20%)
        if indicators['price_increase_5d'] > 20:  # 如果5日涨幅大于20%
            score += 10  # 加10分
        
        # 条件6: 成交量放大 (量比 > 2.0)
        if indicators['volume_ratio'] > 2.0:  # 如果量比大于2.0
            score += 10  # 加10分
        
        # 条件7: 高换手 (> 8%)
        if indicators['turnover_rate'] > 8:  # 如果换手率大于8%
            score += 5  # 加5分
        
        return score  # 返回总得分
    
    def screen_stocks(self, stock_data_dict):  # 定义批量筛选股票的方法,参数为股票数据字典
        """
        批量筛选股票
        stock_data_dict: {股票代码: DataFrame}
        """
        monster_candidates = []  # 初始化妖股候选列表为空
        
        for code, df in stock_data_dict.items():  # 遍历股票数据字典中的每个股票代码和数据框
            if len(df) < 100:  # 如果数据量不足100条
                continue  # 跳过该股票,继续下一个
                
            try:  # 尝试执行以下代码
                # 计算筹码指标
                indicators = self.calculate_chip_indicators(df)  # 调用calculate_chip_indicators方法计算指标
                
                # 计算妖股得分
                score = self.monster_stock_criteria(indicators)  # 调用monster_stock_criteria方法计算得分
                
                if score >= 60:  # 如果得分大于等于60分(及格分数)
                    candidate = {  # 创建候选股票字典
                        'code': code,  # 股票代码
                        'score': score,  # 得分
                        'indicators': indicators,  # 所有指标
                        'current_price': df['close'].iloc[-1],  # 当前价格(最后一天的收盘价)
                        'signal_time': datetime.now()  # 信号时间(当前时间)
                    }
                    monster_candidates.append(candidate)  # 将候选股票添加到列表中
                    
            except Exception as e:  # 如果发生异常
                print(f"计算股票 {code} 时出错: {e}")  # 打印错误信息
                continue  # 继续处理下一个股票
        
        # 按得分排序
        monster_candidates.sort(key=lambda x: x['score'], reverse=True)  # 使用lambda函数按得分降序排序
        return monster_candidates  # 返回排序后的妖股候选列表

以上代码必定要核实修正后来,方可使用于实际的过程,切不可拿来就用。

代码功能总结:

这个MonsterStockScreener类是一个专门用于筛选”妖股”(指短期内涨幅巨大、波动剧烈的股票)的工具,主要包含:

  1. 筹码指标计算:计算成本聚焦度、筹码穿透力、筹码锁定度、主力控盘度等关键技术指标
  2. 评分系统:根据各项指标设定评分标准,总分100分
  3. 批量筛选:能够处理多只股票数据,自动筛选出符合条件的候选股票
  4. 异常处理:包含完整的错误处理机制,确保程序稳定性

该工具通过分析股票的筹码分布特征和价格行为,识别具备妖股潜力的股票。


这是我使用deepseek的一些结果,当然经验为先,结果次之,就是授人以鱼不如授人以渔。

© 版权声明

相关文章

10 条评论

您必须登录才能参与评论!
立即登录
  • 头像
    為爱修行 读者

    运行结果怎样?

    无记录
  • 头像
    绳系 读者

    此指标是否可以对过去某个时间的股票进行评分?

    无记录
  • 头像
    广东梅岭泉酒业有限公司 读者

    可以复盘使用

    无记录
  • 头像
    江沅 读者

    梁就是用这个发财的

    无记录
  • 头像
    坏筱阳 读者

    妖股的Deepseek筹码峰解析

    无记录
  • 头像
    花落微凉梦清幽 读者

    这里的筹码峰是指 90% 还是 70。

    无记录
  • 头像
    听涛看海登云端 读者

    这里的筹码集中度看的是日线还是周线?

    无记录
  • 头像
    朴雪玲 读者

    你这个根本没法实盘

    无记录
  • 头像
    徐简七 读者

    让他算一下你的人生终点

    无记录
  • 头像
    明湖照影 读者

    收藏了,感谢分享

    无记录