用 Python + Deepseek 打造 A股“聪明钱”雷达📡
最近板块轮动之快,超乎想象。之前的“策略”仿佛完全失效,资金根本不愿意接力,牛散也被量化打击得不敢轻易出手。
散户常常在山顶接盘,而聪明钱早已悄悄离场。这个问题,让我这段时间都没有“开张”。今天就利用python和deepseek试着解决一下这个问题,各位看官老爷请慢慢往下看。
A股市场每天都有数百亿的资金在板块间轮动,作为普通投资者,我们无法像机构那样拥有内幕信息、交易系统,但我们可以借助 Python 自动化 + 大模型 AI 分析,打造一套属于自己的“聪明钱雷达”系统:
总结起来还是躲不过三部曲,抓取数据、写prompt、AI分析输出。
主力建仓的三种风格
1.小单连续吸筹(隐蔽建仓)
选股策略
1.小单净买入金额 > 中大单净卖出
2.连续多日小单买入占比 > 60%
2.大单暴力建仓(强势派主力)
选股策略
1.单笔成交金额 > 50万 && 成交频率短期内激增
2.单日大单买入占比 > 60%
3.成交量为10日均量2倍以上
3.震荡+缩量+横盘(洗盘吸筹)
选股策略
1.收盘价标准差 < 1.5%
2.成交量连续3日下降
3.下影线日数 > 上影线日数
条件选股,推导板块
用主力建仓的三种方式(小单吸筹、大单扫货、缩量震荡)筛出一批疑似被建仓的个股,然后统计它们所属的概念板块,哪个板块股票出现得最多,就可能是主力正在布局的方向。
三个选股条件的代码:
def check_condition_1(
tick_data: pd.DataFrame, daily_data: pd.DataFrame) -> bool:
tick_data['amount'] = tick_data['price'] * tick_data['volume']
small_buy = tick_data[(tick_data['bsflag'] == 'B') & (tick_data['volume'] 10000)]
medium_large_sell = tick_data[(tick_data['bsflag'] == 'S') & (tick_data['volume'] > 30000)]
small_net_in = small_buy['amount'].sum()
large_net_out = medium_large_sell['amount'].sum()
recent_days = daily_data.tail(3)
small_ratio_pass = all(recent_days['small_buy_ratio'] > 0.6)
return small_net_in > large_net_out and small_ratio_pass
def check_condition_2(tick_data: pd.DataFrame, daily_data: pd.DataFrame) -> bool:
tick_data['amount'] = tick_data['price'] * tick_data['volume']
large_orders = tick_data[tick_data['amount'] > 500000]
recent_large_count = large_orders.groupby('time').size()
freq_spike = recent_large_count.max() > 3
large_buy = tick_data[(tick_data['bsflag'] == 'B') & (tick_data['volume'] > 100000)]
buy_ratio = large_buy['amount'].sum() / max(1, tick_data[tick_data['bsflag'] == 'B']['amount'].sum())
last_vol = daily_data.iloc[-1]['volume']
avg_10d = daily_data.tail(10)['volume'].mean()
return freq_spike and buy_ratio > 0.6 and last_vol > 2 * avg_10d
def check_condition_3(daily_data: pd.DataFrame) -> bool:
std_close = daily_data.tail(10)['close'].std() / daily_data.tail(10)['close'].mean()
price_stable = std_close 0.015
recent_vol = daily_data.tail(3)['volume']
vol_down = all(recent_vol.diff().dropna() 0)
recent_k = daily_data.tail(10)
upper = (recent_k['high'] - recent_k[['open', 'close']].max(axis=1)) > 0.01
lower = (recent_k[['open', 'close']].min(axis=1) - recent_k['low']) >
0.01
return price_stable and vol_down and lower.sum() > upper.sum()
def classify_stock(code: str, tick_data: pd.DataFrame, daily_data: pd.DataFrame):
if check_condition_1(tick_data, daily_data):
absorb_list.append(code)
elif check_condition_2(tick_data, daily_data):
sweep_list.append(code)
elif check_condition_3(daily_data):
shake_list.append(code)
最终输出:
print("小单吸筹型:", absorb_list)
print("大单扫货型:", sweep_list)
print("震荡吸筹型:", shake_list)
股票和板块级评分机制
使用for循环,逐一获取每只股票的tik级交易数据,进行分析。
获取数据,由Deepseek分析
使用通达信接口获取个股tik级交易数据。这一步在之前的教程已经进行过详细介绍,我们通过for循环遍历上一步的选股结果,分别是absorb_list
、sweep_list
、shake_list
。将这些List中的每只股票都通过获取tik级交易数据——交给AI进行打分的流程,得到一个板块的排行列表和股票得分列表。
股票评分机制
根据此评分机制,把第一步中选出的股票进行打分。
板块评分机制
每只股票会有一个或多个所属板块,统计以下维度:
主力聚焦度 = (高分股票数量 / 板块总股票数) × 平均得分 × 10
这样就能排出主力“密集建仓”的热点板块排行表。
顺便也可以知道主力在偷偷建仓哪些股票了。
结果示例
🧩 板块得分列表(示例)
以上结果,我们能够发现,资金正在悄悄的流入光伏、新能源车、半导体板块。
📝 字段说明:
- •主力聚集指数:高分股票(≥8分)占比,衡量主力在该板块的集中布局情况
📈 个股建仓评分列表(示例)
以上结果,我们能够发现,主力在偷偷建仓光伏板块的欧菲光、半导体板块的长电科技等等。
📝 字段说明:
- •综合评分:基于多因子评分体系(如小单吸筹、大单扫货等)计算得出
- •主力行为特征:通过盘口行为分析主力是否可能在建仓
好啦!这就是今天的思路分享啦。本文提供的内容纯属python和deepseek的技术应用交流,不具投资建议!股市有风险,投资需谨慎!祝各位看官老爷帐户常红!