机器学习-数据科学库 08 股票数据分析案例

利用tushare进行股票数据分析 笔者tushare ID:476408 在经过了半年时间的学习中,对熟练的使用tushare进行股票数据分析方面具有一定的基础,能够基本掌握一些常用的算法编程,以下就以自己在校期间的分析报告为分享内容。 利用tushare获取股票信息,画出股票K线图: 完整代码: import tushare as ts import pandas as pd import numpy as np import matplotlib.pyplot as plt import mpl_finance as mpf. 阅读详情

数据准备

需求:使用 tushare 包获取某股票的历史行情数据

# tushare财经数据接口包
import tushare as ts
import pandas as pd
from pandas import DataFrame, Series
import numpy as np

# 获取某只股票的历史行情数据
# code:字符串形式的股票代码
# 默认结束时间是前一天
df = ts.get_k_data(code='600519', start='2000-01-01')

# 将互联网上获取的股票数据存储到本地
df.to_csv('./maotai.csv')

# 将本地存储的数据读入到df
df = pd.read_csv('./maotai.csv')

# 删除 df 中指定的一列
# 备注:Unnamed 这里是原始数据中行号,后续处理不消费故洗掉
df.drop(labels='Unnamed: 0', axis=1, inplace=True)
 
# 查看每一列的数据类型
df.info()
 
# 将time列转化为时间序列类型
df['date'] = pd.to_datetime(df['date'])
 
# 将 date 列作为源数据的行索引
# 备注:此处只需要单键索引即可
df.set_index('date', inplace=True)

df:

PyDev console: starting.
           date      open     close      high       low     volume    code
0    2001-08-27  -113.034  -112.849  -112.453  -113.329  406318.00  600519
1    2001-08-28  -112.949  -112.616  -112.591  -113.016  129647.79  600519
2    2001-08-29  -112.595  -112.702  -112.591  -112.751   53252.75  600519
3    2001-08-30  -112.719  -112.574  -112.501  -112.769   48013.06  600519
4    2001-08-31  -112.565  -112.590  -112.481  -112.627   23231.48  600519
...         ...       ...       ...       ...       ...        ...     ...
5039 2022-09-21  1876.670  1848.000  1883.000  1848.000   20995.00  600519
5040 2022-09-22  1840.000  1820.810  1841.020  1816.850   22704.00  600519
5041 2022-09-23  1820.810  1834.430  1855.000  1820.810   28288.00  600519
5042 2022-09-26  1820.000  1863.000  1888.000  1819.980   35135.00  600519
5043 2022-09-27  1868.860  1888.000  1897.000  1851.110   28820.00  600519
[5044 rows x 7 columns]

捕获股市上涨日期

需求:输出该股票所有收盘比开盘上涨 3% 以上的日期

# 伪代码:(收盘-开票)/开盘>0.03
# 广播形式:(df['close'] - df['open']) / df['open'] > 0.03

# 看涨对应的布尔坐标
rise_df_index_series = (df['close'] - df['open']) / df['open'] > 0.03

# 日期正好是 index 直接返回即可
rise_date_time_index = df.loc[rise_df_index].index

捕获股票看空的日期

需求:输出该股票所有开盘比前日收盘跌超过2%的日期

# 伪代码:(开盘-前日收盘)/前日收盘 < -0.02
# 广播形式:df['open'] - df['close'].shift(1)) / df['close'].shift(1) < -0.02
# 备注:df['close'].shift(1) 的目的是为了和前一日比较

# 看跌对应的布尔坐标
decline_df_index_series = (df['open'] - df['close'].shift(1)) / df['close'].shift(1) < -0.02

# 日期正好是 index 直接返回即可
decline_date_time_index = df.loc[decline_df_index].index

股票买卖收益分析

需求:指定一直股票,假如我从 2010 年 1 月 1 日开始,每月第一个交易日买入 1 手(= 100 股)股票,每年最后一个交易日卖出所有股票,到今天为止(2020-02),我的收益如何?

分析:

  • 时间节点:2010-2021
  • 买:一个完整的年需要买入1200股股票
  • 卖:一个完整的年需要卖出1200股股票
  • 买卖股票的单价:使用开盘价
# 买股票:找到每个月的第一个交易日对应的行数据(捕获到开盘价)==每月的第一行数据
# 根据月份从原始数据中提取指定的数据
# 数据的重新取样'M'是月(数据没有问题,索引有问题)
target_df = df['2010-01':'2021-02']
df_monthly = target_df.resample('M').first()
 
# 买入股票花费的总金额
cost = df_monthly['open'].sum() * 100

# 取年底 'A' 是年
# 将2021年就是最后一行去掉,不考虑来年
# 提示:-1 坐标代表最后序列最后一个, [:-1] 则相当于去掉最后一个元素
yearly_df = target_df.resample('A').last()[:-1]
 
# 卖出股票到手的钱
resv = yearly_df['open'].sum() * 1200
 
# 最后手中剩余的股票需要估值其价值计算到总收益中
# 使用昨天的收盘价作为剩余股票的单价
last_money = 200 * target_df['close'][-1]
 
# 计算总收益
profit = resv + last_money - cost
【基金量化研究系列】大类资产配置研究(四)——基于马科维茨模型的资产配置研究 2. 马科维茨模型简介 所谓 马科维茨模型(Markowitz Model) 3. 基于马科维茨模型的资产配置策略 伪代码如下: Step 0:始化参数。规定调仓频率(本文以60个交易日为单位进行调仓),设定每一周期模型的优化目标函数(本文以最优夏普比率为例),并规定 t = 0,进入Step 1; Step 1:在每一调仓日,根据前一周期的日收盘价格(本文以前60个交易日收盘价)计算每日的权重方差, 马科维茨模型生成的各类资产目标权重进行 ... 阅读详情

相关推荐

机器学习利用线性回归实现股票预测分析(含有数据集)

股价预测其实是一个较难拟合的问题,因为在现实生活中影响股价的因素有非常多,不只是过去股价有影响,不过为了体会LSTM网络的作用,本文中LSTM模型去对股价做一个大致的预测,只考虑时序因素,未掺杂其它影响因子,下图为拟合过后的图。

斌擎科技 2062

股票预测和股票分析就用FineBI!

股票是常见的理财手段。对于新手而言,他们会盲目的去跟涨或者看见股价暴跌就抛售,最终理财不成反而亏钱。FineBI主要面对才接触的白酒相关股票或者基金的新手,帮助其进行股票分析和股票预测让他们把握大体趋势减少亏损,增加自己理财经验。...

hualalalalali的博客 1237

如何利用 多 张 GPU 高效运行 Ollama

通过以上步骤,我们可以确保系统尽可能地利用所有 多张GPU 来运行 Ollama。如果在配置过程中遇到问题,建议查阅 Ollama 的官方文档,确认其是否支持多 GPU 并行计算,或者对系统性能进行进一步的优化。充分利用多 GPU 的并行计算能力,可以显著提升 Ollama 的运行效率,加快模型的推理和训练速度。希望本文能帮助你顺利实现 多张 GPU 的高效利用。

weixin_44997264的博客 8032

【python与数据分析】Tushare库详解(1)

tushare基础知识介绍

m0_72318954的博客 8481

网络可视化工具netron详细安装流程

netron安装目录1.netron 简介2.不同操作系统下的安装使用方式2.1 在线版本:只要有浏览器就可以2.2 不同操作系统安装使用3.netron支持的网络框架4.netron测试演示 1.netron 简介 在实际的项目中,经过会遇到各种网络模型,需要我们快速去了解网络结构。如果单纯的去看模型文件,脑海中很难直观的浮现网络的架构。 这时,就可以使用netron可视化工具,可以清晰的看到每一层的输入输出,网络总体的架构,而且支持各种不同网络框架,简单好用。 2.不同操作系统下的安装使用方式 2.1

江南研习社 12万+

pytorch实现手语识别

连续手语识别项目,中文数据集CSL

masteryi-0018的博客 1万+

如何用Python对股票数据进行LSTM神经网络和XGboost机器学习预测分析(附源码和详细步骤),学会的小伙伴们说不定就成为炒股专家一夜暴富了

最近调研了一下我做的项目受欢迎程度,大数据分析方向竟然排第一,尤其是这两年受疫情影响,大家都非常担心自家公司裁员或倒闭,都想着有没有其他副业搞搞或者炒炒股、投资点理财产品,未雨绸缪,所以不少小伙伴要求我这边分享下关于股票预测分析的技巧。基于股票数据是一个和时间序列相关的大数据,所以我打算给大家分享时下最受欢迎的时序模型:**LSTM、XGBoost两大经典模型**。

小胡说人工智能的博客 1万+

强化学习 之 Actor Critic

简介 Actor Critic是一种结合体算法: (1)Actor 的前生是 Policy Gradients,这能让它毫不费力地在连续动作中选取合适的动作,而 Q-learning 做这件事会瘫痪; (2)Critic 的前生是 Q-learning 或者其他的 以值为基础的学习法,能进行单步更新,而传统的 Policy Gradients 则是回合更新,这降低了学习效率。 算法思想 Actor...

Test_tju的博客 812

python使用Tushare库进行股票数据分析

Tushare是一个开源的Python财经数据接口库,可以获取股票、基金、期货等金融数据。本文将介绍如何使用Tushare库进行股票数据分析。

码奴一只猿 2425

SAP PFCG 中的单一角色与复合角色

在 SAP 系统的安全与授权管理中,事务码 PFCG(角色维护)扮演着关键角色。理解单一角色(Single Role)和复合角色(Composite Role)的概念,对于有效地管理用户权限至关重要。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1481

lammps教程:非晶sio2建模方法

大家好,我是小马老师。 本文介绍非晶sio2的建模方法。 sio2的建模方法有很多,可以下载cif文件使用atomsk转为data文件,也可以直接在ms中导入sio2结构,这些方法建的sio2都是标准的sio2晶体。 如果要建立非晶状态的sio2,就是把排列规则的sio2变成无序排列的sio2。 非晶建模方法有很多,在lammps中,可以通过高温高压的方法打乱sio2的排列实现非晶建模。 代码中的温度和步数可根据需要自己调整。 下面给出in文件案例代码。 units metal atom

lammps_jiayou的博客 5270

计算机毕业设计选题推荐-股票数据可视化分析与预测-Python爬虫

股票市场作为全球经济的晴雨表,其数据分析和预测对于投资者决策至关重要。根据相关数据,中国股民人数已超过1.7亿,显示出股票市场对广大投资者的吸引力。然而,面对海量的股票数据,如何有效进行分析和预测,成为投资者和金融分析师面临的一大挑战。传统的分析方法在处理大数据集时存在局限性,而人工智能和机器学习技术的发展为股票数据分析提供了新的解决方案。本课题旨在探索如何利用大数据和人工智能技术,提高股票数据的分析效率和预测准确性。本课题的研究目的在于开发一个基于大数据和人工智能技术的股票数据可视化分析与预测系统。

IT毕设梦工厂的博客 1351

概率的接力:拆解大模型“预测下一个词“的底层逻辑

大模型的智能不在于它拥有了意识,而在于它用纯数学的架构,将人类语言的复杂结构压缩为可计算的向量轨迹与概率接力。当我们不再将其拟人化为"思考者",而是视作高维条件概率引擎时,才能真正驾驭它。预测下一个词,从来不是终点,而是起点。未来的核心竞争力,属于那些能洞察其统计本质、善用其模式生成能力,并以人类理性与事实为锚点的协作者。词元的轨迹终会止步于上下文窗口,但对技术底层的清醒认知,才是跨越幻觉、走向真实智能的基石。

AI浩 333

[转载] 机器学习数据集统计系列(二)

金融 美国劳工部统计局官方发布数据 房地产公司 Zillow 公开美国房地产历史数据 沪深股票除权除息、配股增发全量数据,截止 2016.12.31 上证主板日线数据,截止 2017.05.05,原始价、前复权价、后复权价,1260支股票 深证主板日线数据,截止 2017.05.05,原始价、前复权价、后复权价,466支股票 深证中小板日线数据,截止 2017.05.05,原...

aiwanghuan5017的博客 494

教程: 将 SolidWorks 设计导出为 ROS 的 URDF

请按照以下步骤应用自定义徽标纹理:创建徽标材质文件:techniquepass材质名称:测试/材质颜色属性:环境、漫反射、镜面和发射都设置为白色(1 1 1 1),这意味着该材质看起来完全是白色的。纹理 在表面应用纹理图像 logo.png。将材质文件复制到 gazebo matrial:复制徽标图像:将 “徽标 ”替换为机器人上徽标所在位置的适当参考值。按照以上步骤,您就可以在 Gazebo 中为机器人添加自定义材质和纹理,包括徽标。

机器人控制与仿真应用 2459

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

如何通过Pandas实战练习项目快速掌握Python数据分析技能

如果你正在寻找一个系统化的Pandas学习路径,那么GitCode上的pandas_exercises项目正是为你准备的终极实践指南。这个精心设计的Pandas练习项目通过10个核心主题、30多个真实数据集,帮助你从零基础到数据分析高手。无论你是Python数据分析的新手,还是希望系统巩固技能的从业者,这个项目都能为你提供宝贵的实战经验。 ## 🎯 项目核心优势:为什么选择pandas_exe

gitblog_00116的博客 805

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

各领域数据集

上网找到了个数据集的整理,原文地址:https://zhuanlan.zhihu.com/p/25138563 金融 美国劳工部统计局官方发布数据 房地产公司 Zillow 公开美国房地产历史数据 沪深股票除权除息、配股增发全量数据,截止 2016.12.31 上证主板日线数据,截止 2017.05.05,原始价、前复权价、后复权价,1260支股票 深证主板日线数据,截止 2017....

博客&brz 5498

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

500款各领域机器学习数据集,总有一个是你要找的

大数据挖掘DT数据分析  公众号: datadw目录:金融交通商业推荐系统医疗健康图像数据视频数据音频数据自然语言处理社会数据处理后的科研和竞赛数据1金融美国劳工部统计局官方发布数据:http://dataju.cn/Dataju/web/datasetInstanceDetail/139沪深股票除权除息、配股增发全量数据,截止 2016.12.31 http://dataju.cn/Dataju

深度学习世界 1115

各个领域公开数据集下载(持续更新)

金融 美国劳工部统计局官方发布数据 房地产公司 Zillow 公开美国房地产历史数据 沪深股票除权除息、配股增发全量数据,截止 2016.12.31 上证主板日线数据,截止 2017.05.05,原始价、前复权价、后复权价,1260支股票 深证主板日线数据,截止 2017.05.05,原始价、前复权价、后复权价,466支股票 深证中小板日线数据,截止 2017.05.05,原始价、前复...

1874

各领域公开数据集下载

金融 美国劳工部统计局官方发布数据 房地产公司 Zillow 公开美国房地产历史数据 沪深股票除权除息、配股增发全量数据,截止 2016.12.31 上证主板日线数据,截止 2017.05.05,原始价、前复权价、后复权价,1260支股票 深证主板日线数据,截止 2017.05.05,原始价、前复权价、后复权价,466支股票 深证中小板日线数据,截止 2017.05.05,原始价、前复...

视觉小新的博客 1110

Python财务数据分析与金融风险评估

Python社区活跃,拥有一系列专为数据科学设计的库,比如Pandas、NumPy和SciPy,它们就像是矿工手中的镐子和铲子,帮助我们高效地清理和整理数据。期待与你共同创造更多美好的回忆!想象一下,如果你是一位厨师,那么Pandas就是你厨房里的那把锋利的刀,能够迅速准确地切好食材,让每一道菜都色香味俱全。你可以把这里当作自己的家,无论是工作之余的小憩,还是寻找灵感的驿站,我都希望你能在这里找到属于你的那份快乐和满足。

master_chenchen的博客 1529

4. pandas使用2

import pandas as pd import numpy as np 示例 股票数据离散化 stock=pd.read_csv("/home/python/练习/stock_day/stock_day.csv") stock.head() open high close low volume price_change p_change ma5 ma10

archmagus的博客 1176

Pandas实现股票分析

需求:股票分析 使用tushare包获取某股票的历史行情数据。 输出该股票所有收盘比开盘上涨3%以上的日期。 输出该股票所有开盘比前日收盘跌幅超过2%的日期。 假如我从2015年1月1日开始,每月第一个交易日买入1手股票,每年最后一个交易日卖出所有股票,到今天为止,我的收益如何? 准备工作: 先安装财经数据接口包tushare pip install tushare 我们以当下的热门个股九安医疗为例,九安医疗股票代码:002432 首先获取九安医疗股票的历史行情数据: 结果: … 这样在ju.

自成背后的博客 1万+

Python+Tushare股票数据分析

Tushare是一个免费提供各类金融数据 , 助力智能投资与创新型投资的平台。在这个平台上可以免费获得股票、期货和外汇的各种数据。 本次我就使用Tushare来获取股票数据,模拟股票交易。 一、Tushare的注册安装 1、Tushare注册链接:https://tushare.pro/register?reg=492265,注册完成之后进入个人主页 2、完善个人信息 完善好个人资料可以获得20积分,加上注册送的100积分,可以用股票的行情数据,对于练手来说,够用了。如果你是学生的话,还可以进行学生认证,

weixin_44800021的博客 5999

Python数据分析(机器学习)经典案例实战

购买课程后,添加小助手微信(微信号:csdn500)回复【唐宇迪】进入学习群,获取唐宇迪老师社群答疑使用Python数据分析流行的库Numpy,Pandas,Matplotlib, Scikit-learn结合真实数据集展开可视化特征分析与机器学习建模和评估。每次课程涉及一个完整的案例,基于案例讲解python库的使用以及如何建立机器学习模型,对涉及到的机器学习算法给出通俗易懂的解释,帮助大家掌握经典机器学习算法,并应用在实际的案例中。

股票数据集机器学习训练(全免费!)

可以当机器学习课设。股票涨跌预测,选用了一个具有3556行数据,25个特征的真实csv数据集,我将会为此数据集在jupyter 上使用机器学习相关Python库进行数据集的读取分析,根据具体的情况进行数据预处理,步骤包含缺失值重复值检测,选取与目标涨跌%%相关的特征重新定义新数据集,标准化,pca主成分降维,拆分训练集数据和测试集数据。

悟已往之不谏,知来者之可追。 2963
上一篇: 机器学习-数据科学库 07 pandas 时间序列
下一篇: 机器学习-数据科学库 09 欧洲杯案例
eddiechen10081
博客等级 码龄11年 1粉丝 24原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值