这里选用tushare平台获取股票历史数据

所用包

tushare 、pandas、datetime

import tushare as ts
import pandas as pd
import datetime

获取股票历史数据

初始化tushare

未有tushare账户的亲可以到这里注册:https://tushare.pro/register?reg=486428

#初始化你的tushare权限
token='你的token'
ts.set_token(token)
pro=ts.pro_api()

获取股票 000001.SZ 从2021-1-17到2022-1-17过去365天的数据

stock_df= pro.daily(ts_code='000001.SZ', start_date='20210117',end_date='20220117')
stock_df

输出数据如下

数据含有该股票的交易日、开盘价、最高价、最低价、收盘价、成交量等常用数据。由于我们需要获取不同股票最近一年的数据,所以对pro.daily的参数ts_code、start_date、end_date提供三个变量。分别是ts_code = stocknum、start_date=startday、end_date=today,这里需要用到datetime插件对today与startday进行初始化,代码如下。

#获取股票代码
stocknum='000001.SZ'#获取今天日期
today = datetime.datetime.today()#计算从今天起过去365天的日期
startday=today+datetime.timedelta(days=-365)#使日期格式以年月日形式显示,如20220117
today = today.strftime('%Y%m%d')
startday =startday.strftime('%Y%m%d')stock_df= pro.daily(ts_code=stocknum, start_date=startday,end_date=today)stock_df

现在能获得动态股票最近一年的数据,但这些数据还不能直接使用需要根据需求进行优化。根据后续要求对列trade_date的数据变成时间格式并作为主索引、对列vol改名为volume、将时间从远到近排列,对此操作的代码如下。

#获取股票代码
stocknum='000001.SZ'#获取今天日期
today = datetime.datetime.today()#计算从今天起过去365天的日期
startday=today+datetime.timedelta(days=-365)#使日期格式以年月日形式显示,如20220117
today = today.strftime('%Y%m%d')
startday =startday.strftime('%Y%m%d')#获取股票历史数据
stock_df= pro.daily(ts_code=stocknum, start_date=startday,end_date=today)#把列trade_date数据转换为时间格式
stock_df['trade_date'] = pd.to_datetime(stock_df['trade_date'])
#把trade_date作为主索引
stock_df.set_index('trade_date',inplace=True)
#把列vol改名为volume
stock_df=stock_df.rename(columns={'vol':'volume'})
#数据倒序显示
stock_df=stock_df.iloc[::-1]stock_df

输出数据如下

由于我们的股票代码是从EXCEL表格读取的,因此我们需要导入外部表格数据传值get_stocknum给stocknum,代码如下。

#读取股票代码
get_stocknum =pd.read_excel('股票代码.xlsx')

最后把代码封装在get_stock函数里,实现stock_df=get_stock(get_stocknum.iloc[0,0])

完整代码如下

import tushare as ts
import pandas as pd
import datetimetoken='你的token'
ts.set_token(token)
pro=ts.pro_api()#定义获取股票历史数据函数
def get_stock(num):stocknum=numtoday = datetime.datetime.today()startday=today+datetime.timedelta(days=-365)today = today.strftime('%Y%m%d')startday =startday.strftime('%Y%m%d')stock_df= pro.daily(ts_code=stocknum, start_date=startday,end_date=today)stock_df['trade_date'] = pd.to_datetime(stock_df['trade_date'])stock_df.set_index('trade_date',inplace=True)stock_df=stock_df.rename(columns={'vol':'volume'})stock_df=stock_df.iloc[::-1]return stock_dfget_stocknum =pd.read_excel('股票代码.xlsx')
#get_stocknum.iloc[0,0]值为 000001.SZ
stock_df = get_stock(get_stocknum.iloc[0,0])stock_df

基于macd、kdj、ma技术指标分析股票多空方向——应用开发2 获取股票历史数据相关推荐

  1. 基于macd、kdj、ma技术指标分析股票多空方向——应用开发3 计算股票相关技术指标数据

    接上一节,我们获取了000001.SZ股票过去一年的历史数据stock_df,接下来我们就计算技术指标 所用包 pandas_ta import pandas_ta as ta 关于pandas_ta ...

  2. 基于macd、kdj、ma技术指标分析股票多空方向——应用开发6 导出到EXCEL表格

    接上一节,我们获得了分析结果 result_df 与图片,现在把结果导出为excel表格 导出表格 代码如下 #建立book writer = pd.ExcelWriter('分析结果.xlsx',e ...

  3. 基于macd、kdj、ma技术指标分析股票多空方向——应用开发1 前言

    应用效果 通过在EXCEL表格输入股票代码. 导出该股过去10个交易日技术指标(MACD.KDJ.MA分析结果)与60天的K线图(含MACD.KDJ.MA线.成交量)到EXCEl表格. 效果如图 系统 ...

  4. 基于macd、kdj、ma技术指标分析股票多空方向——应用开发4 分析技术指标一系列形态结果

    接上一节,我们计算获取了技术指标的结果total_df,结果如下图 我们需要显示股票最近10天的分析结果,对此我们只需要截取total_df前12天数据就可以了. #获取前12天的数据 total_d ...

  5. python tushare获取股票数据并可视化_使用Python获取股票数据Tushare

    最近不是在炒股吗,挣点儿零花钱,权当学习金融知识了,前几天了解到转债,T+0,这个东西有点儿刺激啊,哈哈,就是老去看手机,实在有点儿耽误事儿,就想着,用python把股票价格拉下来,如果有上下的变动, ...

  6. 免费获取股票历史交易数据方法与代码获取股票实时数据方法集合

    现在网上有越来越多开源的股票数据的获取方法,言简意赅,小编在这里提供2种方法去获取股票数据,第一种呢还是针对于所有的用户,通过使用第三方平台提供的方法来获取到所需要的股票数据. 方法一:使用免费的网站 ...

  7. python tushare获取股票数据并可视化_荐Python获取股票数据及其可视化--基于tushare库...

    01 Tushare简介 Tushare是一个金融大数据开放社区,它免费提供各类金融数据和区块链数据 , 助力智能投资与创新型投资.在Tushare 旧版 运行了3年后,Tushare Pro终于要跟 ...

  8. python 股票分析包_如何利用Python开发一套股票分析软件

    股票数据分析对象为沪深300,通过对数据的爬取以及分析,使数据可视化,这些为该分析软件要满足的功能. 确定目标,然后 JUST DO IT ! 第一步:获取数据 沪深300历史交易数据的 URL 地址 ...

  9. 获取股票数据【实时更新股票数据、创建你的股票数据】、计算交易指标【买入、卖出信号、计算持仓收益、计算累计收益率】

    在上一次获取股票数据[使用JQData查询行情数据.财务指标.估值指标]学习了使用JQData来查询股票相关数据, 这次则开始一点点构建咱们的量化交易系统了. 量化交易平台功能模块了解: 对于一个量化 ...

最新文章

  1. Java多线程中join方法详解
  2. 数据上移下移简单的存储过程
  3. 手把手教你用直方图、饼图和条形图做数据分析(Python代码)
  4. leetcode题解167-两数之和 II - 输入有序数组
  5. DotNetBar.Bar图标列表的使用
  6. 和root权限挣扎过的一些记录
  7. comsol积分函数_空间与时间的积分方法概述
  8. ps渐变如何使用?如何使用Photoshop 2021给图片制作出渐变效果?
  9. C语言趣味一百道 第25题 2017_12_24
  10. 安装及调用Matlab程序可能存在的问题解决办法
  11. ESP32学习11:PWM
  12. 用python统计文本里的单词出现次数最多的10个
  13. SSM集成shiro权限管理
  14. 2020.7月做题记录
  15. 加装机械硬盘遇到的问题
  16. python三人同行七十稀_【算法入门第二章练习题】(示例代码)
  17. 中国计算机信息系统集成行业协会的系统集成工程师证书难考吗?
  18. 萤石云创建两次EZUIKit出现监控画面只显示一个
  19. Flash 命令大全
  20. 微型计算机PTR说明类型,微机原理复习资料

热门文章

  1. 秒杀程序调试-环境搭建
  2. Python 21 常用模块02
  3. 内存泄漏,关于异步回调导致的内存泄漏,使用LeakCanary检测内存泄漏
  4. Cadence ADE使用基础
  5. Kafka Streams开发者指南
  6. CSS3简单实现,数字滚动效果
  7. 15年+码龄,用过的所有笔记本电脑
  8. 中国二手车出口现状与趋势分析
  9. python messagebox弹窗退出_Python messagebox.showinfo方法代码示例
  10. 华为nova7pro手机计算机在哪里,华为nova7pro在哪里插耳机