当前位置: 首页 > article >正文

使用pytdx获取历史股票行情

使用pytdx获取历史股票行情

  • 先看效果
  • pytdx基础
  • 获取历史股票行情
  • 将历史数据存入数据库

先看效果

获取从2010年01月01日-2024年09月30日的股票数据
在这里插入图片描述

pytdx基础

https://blog.csdn.net/firexiaHouse/article/details/142687052?spm=1001.2014.3001.5501

获取历史股票行情

    def get_k_data(self, code, start, end):
        logging.info("获取历史股票行情")
        if self.api.connect(self.ip, int(self.port)):
            df = self.api.get_k_data(code, start, end)
            return df.to_dict('records') or []
        return []

在这里插入图片描述

将历史数据存入数据库

    def create_history_individual_stock(self, stock_id, date_from, date_to, page):
        """

        """
        start = timeit.default_timer()
        if not date_from:
            date_from = date.today() - timedelta(days=30)
        else:
            date_from = datetime.strptime(date_from, '%Y-%m-%d').date()
        if not date_to:
            date_to = date.today()
        else:
            date_to = datetime.strptime(date_to, '%Y-%m-%d').date()
        if date_from > date_to:
            return
        tdx_client = self.env['tdx.service'].get_tdx_client()
        history_k_data = tdx_client.get_k_data(
            stock_id.code, date_from.strftime('%Y-%m-%d'), date_to.strftime('%Y-%m-%d')
        )
        individual_stock_data = []
        for security_data in history_k_data:
            if security_data is None:
                continue
            stock_date = datetime.strptime(security_data.get('date'), '%Y-%m-%d').date()
            stock_vals = self.prepare_history_individual_stock_vals(security_data)
            stock_vals.update({
                'stock_id': stock_id.id,
                'stock_date': stock_date,
            })
            individual_stock_data.append(stock_vals)
        self.env['individual.stock'].create(individual_stock_data)
        end = timeit.default_timer()
        logging.info('获取历史股票行情, 第%s页,总计条数:%s, 总计用时:%s', page, len(individual_stock_data),
                     end - start)

http://www.kler.cn/news/330537.html

相关文章:

  • Excel下拉菜单制作及选项修改
  • C++设计模式之观察者模式
  • STM32三种启动模式:【详细讲解】
  • Web安全 - 服务端请求伪造SSRF(Server-Side Request Forgery)
  • 基于VirtualBox和Ubuntu的虚拟环境搭建
  • Python 面向对象编程基础
  • 高精度(3)——高精度乘法
  • WPS(金山文档)与金蝶云星空通过HTTP实现连接
  • paypal支付v2.0(php)支付代码
  • 通过OpenScada在ARMxy边缘计算网关上实现远程监控
  • 设置docker拉取镜像的超时时间
  • STM32F103C8----3-3 蜂鸣器(跟着江科大学STM32)
  • MATLAB中图形导出功能的详细使用指南
  • 探索Kimi:用Spring Boot + Vue打造现代网站
  • 【机器学习】集成学习——提升模型准确度的秘密武器
  • AJAX JSON 实例
  • java8 缓存对比并存值
  • 机器学习-聚类
  • Android数据存储
  • 指针 (5)