首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >再谈获取量化行情数据源的推荐技术方案

再谈获取量化行情数据源的推荐技术方案

作者头像
子晓聊技术
发布2026-04-23 14:31:55
发布2026-04-23 14:31:55
1490
举报
文章被收录于专栏:子晓AI量化子晓AI量化

自从上次写了一篇东方财富被封技术文章,不少同学留言吐槽都遇到这种问题, 这里再谈行情数据源。

毕竟量化分析,行情数据源是关键。没有高质量的数据,分析就无从谈起。

这里从个人角度分析, 获取量化行情数据源的推荐技术方案。

一、QMT(迅投量化平台)数据获取

QMT券商数据源,只需要新开户入金几万-几十万不等就可以获取行情数据。

如果你已经有自己的量化分析程序,比如之前用了东方财富的接口,那么选择支持miniqmt的券商是首选。 毕竟你只需要开通miniqmt,借助xtquant的xddata 就能平替自己之前的函数方法。

如果需要新开户,可以联系我。 一个人最多3个账户,也提供其他券商的销户流程。

代码类似:

代码语言:javascript
复制
from xtquant import xtdata
import pandas as pd

def get_history_data(symbol, period='1d', start_date='', end_date='', adjust='none'):
    """
    封装类似 AkShare 的历史行情接口
    :param symbol: 股票代码(如 "000001.SZ")
    :param period: 周期,可选 1d/1m/5m/tick 等
    :param start_date: 起始日期(格式 20230101)
    :param end_date: 结束日期(格式 20231231)
    :param adjust: 复权类型,none/front/back
    :return: pd.DataFrame
    """
    # 1. 下载历史数据(增量下载避免重复)
    def on_progress(data):
        print(f"下载进度: {data['finished']}/{data['total']}")

    xtdata.download_history_data2(
        stock_list=[symbol],
        period=period,
        start_time=start_date,
        end_time=end_date,
        callback=on_progress
    )

    # 2. 查询本地数据
    data = xtdata.get_market_data_ex(
        field_list=['time', 'open', 'high', 'low', 'close', 'volume', 'amount'],
        stock_list=[symbol],
        period=period,
        start_time=start_date,
        end_time=end_date,
        dividend_type=adjust,
        fill_data=True  # 自动填充停牌数据
    )

    # 3. 转换为 AkShare 风格 DataFrame
    df = data[symbol].reset_index()
    df = df.rename(columns={
        'time': '日期',
        'open': '开盘价',
        'high': '最高价',
        'low': '最低价',
        'close': '收盘价',
        'volume': '成交量',
        'amount': '成交额'
    })
    df['日期'] = pd.to_datetime(df['日期'], format='%Y%m%d%H%M%S')  # 统一时间格式
    return df.set_index('日期')

# 示例调用
df = get_history_data(symbol="000001.SZ", period="1d", start_date="20240101", adjust="front")
print(df.head())

如果从0开始,不需要用到其他第三方库, 对于Python薄弱的同学来说,直接使用大QMT编写策略可能相对容易,直接可以回测。 miniqmt的话需要你自行搞定回测等。

另外,借助AI 实现基础的策略没太大问题。边调试边修改呗。

如果你在乎策略的隐私性, 且不希望花钱,这种技术方案是首选。 不管是选择本地运行 (机器开着耗电) ,还是购买云服务器(现在云服务器不算贵,买个便宜的机器一年几十块)。

二、恒生电子的Ptrade

如果你不想购买云服务器,本地一直开着耗电, 且在意交易速度,恒生电子的Ptrade 是你的另外一个选择。

ptrade跑在服务端上。你的策略,其实在券商的服务器上跑,你关掉客户端以后,策略也能正常运行,这对于一些上班族来说比较友好。 如果你care策略的隐私安全性, 那还是选择qmt。

三、Tushare

如果你用的是mac,不想用windows,也没有在windows自动交易的需求。 那么tushare是你的另一个选择。

官方花几百块购买5000积分, 如果仅仅学习研究,淘宝上看看XX块的共享账号研究(个人不推荐哈,毕竟共享账号可能存在不稳定情况)。

另外,像 akshare、mootdx 、wencai等 目前看或多或少有了限制, 今后还不知道会怎么改版。 如果你希望一劳永逸,自己的量化程序更稳定, 上面可能是你最合适的选择。毕竟你不想一直修改程序吧。

最后说一句,免费的东西可能是最贵的,耗费的是时间精力。除非你认为自己的时间不值钱。

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、QMT(迅投量化平台)数据获取
  • QMT券商数据源,只需要新开户入金几万-几十万不等就可以获取行情数据。
  • 如果你已经有自己的量化分析程序,比如之前用了东方财富的接口,那么选择支持miniqmt的券商是首选。 毕竟你只需要开通miniqmt,借助xtquant的xddata 就能平替自己之前的函数方法。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档