使用pytdx获取股票信息总结

行情接口

pytdx中提供了hq(标准行情)及exhq(扩展市场行情)两种接口,扩展市场目前已经失效无法使用。

标准行情

这里只提供代码,见附录。

对接总结

除了一开始不熟悉股票领域的相关定义,目前是遇到一个概念去查询一个概念,这个只有慢慢来了。

界面展示

目前采用odoo框架来存储和展示获取下来的相关信息。
体验地址:http://111.229.103.209:8090/
用户名:john,密码:123456
在这里插入图片描述

性能问题

目前是获取了深市和沪市的全部5300+股票的所有数据,历史交易数据打算只获取9月1号以后的。后续真实的使用,肯定是选定部分股票去获取数据。

数据可靠性

数据获取太频繁的时候,会遇到timeout,于是统一都增加了重试机制

附录代码

# -*- coding: utf-8 -*-
import time
from pytdx.hq import TdxHq_API


class Tdx_Client():

    def __init__(self, ip='111.229.247.189', port='7709'):
        self.ip = ip
        self.port = port
        self.api = TdxHq_API(auto_retry=True, raise_exception=False)
        self.api.connect(self.ip, int(self.port))

    def get_stock_quotes(self, all_stock, code=None):
        """
        获取股票行情
        """
        for retry in range(3):
            try:
                if self.api.connect(self.ip, int(self.port)):
                    data = self.api.get_security_quotes(all_stock, code)
                    return data or []
            except Exception as e:
                time.sleep(3)
        return []

    def get_stock_bars(self, mkt_id, code, start, size):
        """
        获取k线
        """
        for retry in range(3):
            try:
                if self.api.connect(self.ip, int(self.port)):
                    data = self.api.get_security_bars(mkt_id, code, start, size)
                    return data
            except Exception as e:
                time.sleep(3)
        return None

    def get_stock_count(self, mkt_id):
        """
        获取股票数量
        """
        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值