首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >怎么获取昨日涨停指数今日表现分时数据附代码

怎么获取昨日涨停指数今日表现分时数据附代码

作者头像
子晓聊技术
发布2026-04-23 17:03:50
发布2026-04-23 17:03:50
1270
举报
文章被收录于专栏:子晓AI量化子晓AI量化

昨天群里有同学问怎么获取昨日涨停指数今日表现分时数据, 这里写一个例子演示下。

先说明下为什么 要获取昨日涨停今日表现分时表现,看上面截图数据可以看出, 从早上9点半到下午3点, 昨日涨停指数今日表现分时一路走低, 说明 昨日涨停溢价越来越低 ,可以看出短线风险了。 昨天又是腥风血雨的一天, 大家有没有感觉?

回到正题

这篇文章将介绍如何使用Python获取股票分时数据并进行基础分析。我们将通过调用同花顺提供的金融数据API,获取股票的分时行情数据,然后使用Pandas进行数据处理和计算,最终得到包含价格、涨跌幅等关键指标的分析结果。

技术栈与工具

  • requests: HTTP请求库,用于调用API
  • pandas: 数据分析与处理库
  • json: JSON数据处理
  • datetime: 时间处理(通过pandas实现)

实际应用场景

  1. 实时监控: 获取实时分时数据,监控股票价格波动
  2. 技术分析: 计算技术指标,辅助投资决策
  3. 数据回测: 历史分时数据用于策略回测
  4. 可视化展示: 结合Matplotlib/Plotly生成分时图表

注意事项与最佳实践

  1. API限制: 注意API的访问频率限制,避免过于频繁的请求
  2. 数据准确性: 验证API返回数据的准确性和完整性
  3. 时区处理: 确保时间数据处理的一致性,避免时区混淆
  4. 错误处理: 在生产环境中增强错误处理和日志记录
  5. 合规使用

免责声明: 本文仅用于技术学习目的,不要用于商业目的。另外股票投资有风险,入市请谨慎。

最后这里贴一下完整代码,参考下思路, 具体根据自己的实际情况改造。 备注:如果发现格式有多余的特殊字符,用普通浏览器打开复制应该没问题。 希望我的分享对大家有所帮助。

代码语言:javascript
复制
import requests
import json
import pandas as pd
def get_and_process_stock_trend():
    """
    获取股票分时数据,并将其转换为Pandas DataFrame进行分析。
    """
    # 1. 定义请求的URL和参数
    url = "https://quota-h.10jqka.com.cn/fuyao/common_hq_aggr/quote/v1/single_trend"
    payload = {
        "code_list": [{"codes": ["883900"], "market": "48"}],
        "trade_date": 0,
        "gpid": 1,
        "time_zone": "Asia/Shanghai",
        "trade_class": "intraday"
    }
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36',
        'Content-Type': 'application/json'
    }
    try:
        # 2. 发送POST请求
        print("正在发送POST请求...")
        response = requests.post(url, headers=headers, json=payload, timeout=10)
        response.raise_for_status()
        data = response.json()
        # 3. 检查API返回的状态
        if data.get("status_code") != 0:
            print(f"API返回错误: {data.get('status_msg')}")
            return
        # 4. 提取核心数据
        quote_data_item = data["data"]["quote_data"][0]
        base_price = quote_data_item["base_price"]
        value_list = quote_data_item["value"]
        print(f"成功获取数据,代码: {quote_data_item['code']}, 基准价格: {base_price}")
        print("-" * 50)
        # 5. 创建Pandas DataFrame
        df = pd.DataFrame(value_list, columns=['timestamp', 'price', 'volume', 'amount'])
        # 6. 数据处理与转换(处理时区)
        df['datetime'] = pd.to_datetime(df['timestamp'], unit='ms').dt.tz_localize('Asia/Shanghai')
        # 将datetime列设为索引
        df.set_index('datetime', inplace=True)
        # 删除原始的时间戳列
        df.drop(columns=['timestamp'], inplace=True)
        # 7. 计算涨跌幅
        df['change_pct'] = ((df['price'] - base_price) / base_price) * 100
        df['change_pct'] = df['change_pct'].round(2)
        # 8. 打印处理后的DataFrame
        print("--- 处理后的DataFrame---")
        print(df)
        # 9. (可选) 打印数据摘要
        print("\n--- 数据摘要 ---")
        print(f"最高价: {df['price'].max():.4f}")
        print(f"最低价: {df['price'].min():.4f}")
        print(f"最新价: {df['price'].iloc[-1]:.4f}")
        print(f"最大涨幅: {df['change_pct'].max():.2f}%")
        print(f"最大跌幅: {df['change_pct'].min():.2f}%")
    except requests.exceptions.RequestException as e:
        print(f"\n请求失败,发生错误: {e}")
    except json.JSONDecodeError:
        print("\n请求成功,但返回的不是有效的JSON格式。")
    except KeyError as e:
        print(f"\n处理数据时发生错误,缺少预期的键: {e}")
    except Exception as e:
        print(f"\n发生未知错误: {e}")
# --- 主程序入口 ---
if __name__ == "__main__":
    get_and_process_stock_trend()

如果我的分享对你投资有所帮助,不吝啬给个点赞关注呗。 这个号主要分享AI量化技术相关, 当天的灵感相关记录,相对比较杂。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-11-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 子晓聊技术 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 技术栈与工具
    • 实际应用场景
  • 注意事项与最佳实践
    • 最后这里贴一下完整代码,参考下思路, 具体根据自己的实际情况改造。 备注:如果发现格式有多余的特殊字符,用普通浏览器打开复制应该没问题。 希望我的分享对大家有所帮助。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档