最近和朋友聊股票,他神秘兮兮地问我:"你觉得机构调研这事儿靠谱吗?他们真的是去挖掘潜力股,还是只是走个过场?"
我一听,来了兴趣。这问题咱不能光凭感觉瞎猜,得拿数据来说话!💡于是,我撸起袖子,打开 VS Code,准备用 Python 做一波深度分析,看看机构调研到底对股价有没有影响。
📊 机构调研对股价走势的影响分析
1. 机构调研到底是个啥?
简单来说,机构调研就是一些券商、基金、私募等大佬们,带着小本本去上市公司拜访,看看这家公司最近经营状况如何,有没有潜力。
问题是,机构调研后,股价是涨还是跌? 这是股民们最关心的事情,对吧?
常见的市场观点:
- 有人说:"机构去调研,一般是看好才去的,股价大概率上涨!" 📈
- 也有人说:"机构调研完,股价反而跌了,难道是出货信号?" 🤔
咱们不争论,直接用 Python 看数据!🚀
📥 2. 数据获取:用 AkShare 拿机构调研数据
💾 安装必要的库
首先,我们需要用 AkShare 获取机构调研的统计数据,同时用 Pandas 进行数据处理:
python
# 安装依赖(如果没有安装的话)
pip install akshare pandas plotly
📡 获取机构调研数据
AkShare 是一个超强的金融数据接口库,可以直接获取机构调研数据,我们用它来看看最近哪些股票被机构调研了:
python
import akshare as ak
import pandas as pd
# 获取最近机构调研数据
df = ak.stock_jgdy_tj_em(date="20200101")
# 把机构调研数据存放到csv文件方便后期分析
df.to_csv("jgdy.csv",index=False)
# 查看数据结构
print(df.head())
stock_jgdy_tj_em
获取机构调研数据比较慢,所以我们把获取的数据放入到csv文件,后面就直接从csv文件读取数据来分析了。
数据示例:
数据和东财官网的展示数据格式是一样的

看到这里,咱们已经成功拿到机构调研数据了!🎯 接下来,咱们看看这些股票在调研后的表现如何?
📈 3. 机构调研后,股价是涨是跌?
💹 获取股票历史数据
我们用 AkShare 获取股票历史行情数据:
python
# 获取个股历史行情
stock_code = "000026" # 以飞亚达行为例
stock_data = ak.stock_zh_a_hist(
symbol=stock_code,
period="daily",
start_date="20200101",
end_date="20251201" ,
adjust="qfq")
# 查看数据
print(stock_data.head())

📉 数据可视化
为了方便查看机构调研后股票到底是涨还是跌,我们用 Plotly 画个漂亮的折线图,并在机构调研的日期上标记:
python
import akshare as ak
import pandas as pd
import plotly.express as px
import plotly.graph_objects as go
import datetime
stock_code = "000333" # 以飞亚达行为例
# 获取最近机构调研数据
# df = ak.stock_jgdy_tj_em(date="20200101")
# 把机构调研数据存放到csv文件方便后期分析
# df.to_csv("jgdy.csv",index=False)
# stock_jgdy_tj_em 比较慢,数据获取后存本地csv 然后从csv拿数据
df = pd.read_csv("jgdy.csv")
df = df.sort_values(by="公告日期", ascending=True) # ascending=True表示升序
# 将股票代码转换成6位字符串
df["代码"] = df["代码"].astype(str).str.zfill(6)
# 把公告日期转换成日期格式方便查找
df["公告日期"] = pd.to_datetime(df["公告日期"])
# 获取机构调用的公告日期
df_find = df[df['代码']==stock_code]
research_dates = df_find['公告日期'].to_list()
start_date = datetime.datetime.strftime(research_dates[0],"%Y%m%d")
# 获取从机构调研公告日期开始后的股票K线数据
stock_data = ak.stock_zh_a_hist(
symbol=stock_code,
period="daily",
start_date=start_date,
end_date="20251201" ,
adjust="qfq")
# 把日期转换成日期格式方便查找
stock_data["日期"] = pd.to_datetime(stock_data["日期"])
# 开始画图
fig = px.line(stock_data, x="日期", y="收盘", title=f"{stock_code} 机构调研后股价走势")
result = stock_data[stock_data['日期'].isin(research_dates)]
highlight_dates = result['日期'].to_list()
highlight_values = result['收盘'].to_list()
# 添加标记点
fig.add_trace(go.Scatter(x=highlight_dates, y=highlight_values,
mode='markers', name='机构调研公告日期',
marker=dict(size=10, color='red', symbol='circle')))
fig.write_html("jgdy.html")

🎨 这样,我们就可以直观地看到,机构调研后股价是涨还是跌!
根据上面的走势图,基本上可以分析出如果股价处于低位,机构调研后大概率是会涨,如果股价处于高位,机构调研并不会让股价上涨。
📺 4. 用 Streamlit 打造可视化 Web 应用
我们还可以用 Streamlit 做个交互式数据分析工具,让大家输入股票代码,看看机构调研后的表现:
先看看最终效果:

复制下面代码然后粘贴到app.py
文件中运行streamlit run app.py
来运行下面代码
python
import streamlit as st
import akshare as ak
import pandas as pd
import plotly.express as px
import plotly.graph_objects as go
import datetime
import os
st.set_page_config(page_title="📈 机构调研后股价表现分析", layout="wide")
st.title("📈 机构调研后股价表现分析")
# 用户输入股票代码
stock_code = st.text_input("请输入股票代码(6位):", "000026")
jgdy_file = os.path.join(os.path.dirname(os.path.abspath(__file__)), "jgdy.csv")
if os.path.isfile(jgdy_file):
print(f"机构调研文件存在")
else:
with st.spinner("机构调研数据下载中,请稍候..."):
# 获取最近机构调研数据
df = ak.stock_jgdy_tj_em(date="20200101")
# 把机构调研数据存放到csv文件方便后期分析
df.to_csv(jgdy_file,index=False)
st.success()
# 读取机构调研数据
df = pd.read_csv(jgdy_file)
df = df.sort_values(by="公告日期", ascending=True)
df["代码"] = df["代码"].astype(str).str.zfill(6)
df["公告日期"] = pd.to_datetime(df["公告日期"])
# 过滤用户输入的股票代码数据
df_find = df[df['代码'] == stock_code]
if df_find.empty:
st.warning("未找到该股票的机构调研数据,请尝试其他股票代码!")
else:
research_dates = df_find['公告日期'].to_list()
start_date = datetime.datetime.strftime(research_dates[0], "%Y%m%d")
# 获取股票K线数据
stock_data = ak.stock_zh_a_hist(
symbol=stock_code,
period="daily",
start_date=start_date,
end_date=datetime.datetime.today().strftime("%Y%m%d"),
adjust="qfq"
)
# 转换日期格式
stock_data["日期"] = pd.to_datetime(stock_data["日期"])
# 画图
fig = px.line(stock_data, x="日期", y="收盘", title=f"{stock_code} 机构调研后股价走势")
result = stock_data[stock_data['日期'].isin(research_dates)]
highlight_dates = result['日期'].to_list()
highlight_values = result['收盘'].to_list()
# 添加标记点
fig.add_trace(go.Scatter(x=highlight_dates, y=highlight_values,
mode='markers', name='机构调研公告日期',
marker=dict(size=10, color='red', symbol='circle')))
st.plotly_chart(fig)
💡 这样,我们就可以在浏览器里,随时分析不同股票的调研影响了! 🎉
结论:机构调研到底靠不靠谱?
经过分析,我们会发现:
- 有些股票调研后确实涨了,但有些却跌了
- 机构调研 ≠ 必涨,但往往影响市场情绪,短期内可能有波动
- 结合成交量、主力资金流向一起看,效果更好!
💡 机构调研数据可以作为参考,但不能作为唯一的投资依据! 🎯
如果觉得这篇文章有用,顺手点赞 + 在看,就是对花姐最大的支持! ❤️