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

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

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

#coding=utf-8
import tushare as ts
import pandas as pd
import numpy as np#获取某支股票的历史行情数据
df=ts.get_hist_data(code='600519',start='2001-01-01')
#将互联网上的数据获取并且存储到本地
df.to_csv('./maotai.csv')
#将本地的数据读取
date_path='./maotai.csv'
df2=pd.read_csv(date_path)
#print(df2.info())#需要对读取出的数据做相关的处理
#df2.drop(labels='close',axis=1,inplace=True)
# print(df2)
# print(df2.head())
#查看每一列的数据类型
#print(df2['date'].dtype)
#print(df.head())
df2.set_index('open')
#print(df2.info())
#将date一列转成了时间序列
#print(df2)
df2['date']=pd.to_datetime(df2['date'])
df=df2.set_index('date')
#print(df)
#print(df)
#print(df2.info())
#print(df2.head())
#伪代码:(收盘-开盘)/开盘。0.3
a=df.loc[(df['close']-df['open'])/df['open']>0.03].index
print(a)
#如果对布尔值作为df的行索引,则可以取出true对应的
#然后通过.index取出所需要的时间

2:该股票开盘比前日收盘超出2%的日期

#前日收盘:df['date'].shift(1)

#coding=utf-8
import tushare as ts
import pandas as pd
import numpy as np#获取某支股票的历史行情数据
df=ts.get_hist_data(code='600519',start='2001-01-01')
#将互联网上的数据获取并且存储到本地
df.to_csv('./maotai.csv')
#将本地的数据读取
date_path='./maotai.csv'
df2=pd.read_csv(date_path)
#print(df2.info())# #将date一列转成了时间序列df2['date']=pd.to_datetime(df2['date'])
df=df2.set_index('date')
#伪代码:(开盘-前日收盘)/前日收盘<-0.02
b=df.loc[(df['open']-df['close'].shift(1))/df['close'].shift(1)<-0.02].index
print(b)

3:从2010年的1月1日开始,每月第一个交易工作日买入1手股票,每年最后一个交易工作日卖出所有股票,到今天为止,我的收益如何?

 #时间切片:df[2010-01:2020-02]

df2['date']=pd.to_datetime(df2['date'])
df=df2.set_index('date')
new_df=df['2021-01':'2023-02']
print(new_df)

#买股票:

  • 找出每月第一天的数据
  • df2['date']=pd.to_datetime(df2['date'])
    df=df2.set_index('date')
    new_df=df['2021-01':'2023-02']
    #找出每月第一行的数据
    new_df=new_df.resample('M').first()
    print(new_df)
    

  • 买入股票花费的总金额
  • #找出每月第一行的数据
    df_monthly=new_df.resample('M').first()
    #计算花费
    cost=df_monthly['open'].sum()*100
    print(cost)

    #卖股票

  • 卖出股票到手的钱

  • 特殊情况:2020年的股票卖不出去(将最后一行切除) df[:-1]

  • #计算卖出去的收益
    df_yearly=new_df.resample('A').last()[:-1]
    #print(df_yearly)
    income=df_yearly['close'].sum()*100
    print(income)

  • 卖出股票到手的钱

  • df_yearly=new_df.resample('A').last()[:-1]
    #print(df_yearly)
    income=df_yearly['open'].sum()*1200
    print(income)

    #最后股价剩余的价值要估算到总收益中

  • #估算2023年2个月还剩多少钱
    lat_money=200*new_df['close'][-1]
    print(lat_money)
    

    #计算最后的收益

  • #算出最后的钱
    Finally=income+lat_money-cost
    print(Finally)

    全部代码展现

  • #coding=utf-8
    import tushare as ts
    import pandas as pd
    import numpy as np#获取某支股票的历史行情数据
    df=ts.get_hist_data(code='600519',start='2001-01-01')
    #将互联网上的数据获取并且存储到本地
    df.to_csv('./maotai.csv')
    #将本地的数据读取
    date_path='./maotai.csv'
    df2=pd.read_csv(date_path)
    #print(df2.info())#需要对读取出的数据做相关的处理
    #df2.drop(labels='close',axis=1,inplace=True)
    # print(df2)
    # print(df2.head())
    #查看每一列的数据类型
    #print(df2['date'].dtype)
    #print(df.head())
    # df2.set_index('open')
    # #print(df2.info())
    # #将date一列转成了时间序列
    # #print(df2)
    df2['date']=pd.to_datetime(df2['date'])
    df=df2.set_index('date')
    #print(df.head(20))
    #print(df.tail())
    new_df=df['2021-01':'2023-02']
    #找出每月第一行的数据
    df_monthly=new_df.resample('M').first()
    #计算花费
    cost=df_monthly['open'].sum()*100
    #print(cost)
    #计算卖出去的收益
    df_yearly=new_df.resample('A').last()[:-1]
    #print(df_yearly)
    income=df_yearly['open'].sum()*1200
    #估算2023年2个月还剩多少钱
    lat_money=200*new_df['close'][-1]
    #print(lat_money)#算出最后的钱
    Finally=income+lat_money-cost
    print(Finally)

相关文章:

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

1&#xff1a;输出该股票所有收盘比开盘上涨3%以上的日期 #codingutf-8 import tushare as ts import pandas as pd import numpy as np#获取某支股票的历史行情数据 dfts.get_hist_data(code600519,start2001-01-01) #将互联网上的数据获取并且存储到本地 df.to_csv(./maotai…...

数值卡,让数据可视化玩出新花样丨三叠云

数值卡 路径 仪表盘 >> 仪表盘设计 功能简介 1. 数值卡增加「数值标题」、「图标」、「进度条」功能&#xff0c;使得应用场景更为广泛&#xff0c;实现数据可视化&#xff0c;让用户能够轻松地获取、处理信息。 2.「数据模型」支持0个维度1个指标、1个维度1个指标。…...

有这几个表现可能是认知障碍前兆

我国目前对于认知障碍的认知率、就诊率、诊断率很低&#xff0c;然而认知障碍如果能在早期发现&#xff0c;并及时治疗&#xff0c;生活质量会有效提高&#xff0c;缓解家属的精神和经济负担。所以&#xff0c;认知障碍的前兆一定要了解。1.记忆力减退&#xff0c;一周内的重要…...

java面试题-阿里真题详解

前言 大家好&#xff0c;我是局外人一枚&#xff0c;最近有不少粉丝去阿里巴巴面试了&#xff0c;回来之后总结不少难题给我&#xff0c;以下是面试的真题&#xff0c;跟大家一起来讨论怎么回答。 阿里一面 1、说⼀下ArrayList和LinkedList区别 ⾸先&#xff0c;他们的底层数…...

JSON格式解析关键词搜索API

为了进行此平台API的调用&#xff0c;首先我们需要做下面几件事情。 1、 获取一个KEY。 2、 参考API文档里的接入方式和示例。 3、查看测试工具是否有需要的接口&#xff0c;响应实例的返回字段是否符合参数要求。 4、利用平台的文档中心和API测试工具&#xff0c;对接口进…...

【Java基础】泛型(二)-泛型的难点:通配符

本文将尝试将通配符和泛型中的继承&#xff0c;多态一并讲解 关于泛型中继承的注意事项 因为Integer、Double继承了Number&#xff0c;根据多态性&#xff0c;以下语句是合法的 Number n new Integer(10); // OK, 父类引用变量可以指向子类对象 n 2.9 // OK&#xff0c;n实…...

黑马】后台管理-两个括号的坑

记录一下这两天的坑没想到后台管理系统上线这两天都没有搞明白1.首先第一个坑是使用node.js的express中间件框架创建一个微型服务器&#xff0c;然后将vue脚手架生成的dist文件夹的文件放入里面了 &#xff0c;把项目加载到web服务器之后运行node .\app.js&#xff0c;页面显示…...

05:进阶篇 - 使用 CTKWidgets

作者: 一去、二三里 个人微信号: iwaleon 微信公众号: 高效程序员 CTKWidgets 包含了一组 Qt 部件,用于生物医学成像应用程序。当然,即使你的程序与医学无关,很多部件也是很有参考意义的。 在 CTK 源码中,有很多选项开关,可以控制你想要编译的内容(详见:04:进阶篇 …...

【YOLO V5】代码复现过程

接上篇&#xff0c;讲到如何从mask转成YOLOv5训练需要的txt数据集格式&#xff0c;这篇就在此基础上进行模型训练预测和部署转换吧&#xff01; 目录 1.环境准备 2.YOLO训练 2.1 数据集准备 2.2 data.yaml准备 2.3 yolov5.yaml准备 2.4 训练命令 3.YOLO预测 3.1OLOv5 P…...

汽车如何实现制动

汽车如何实现制动 汽车如何实现制动 难点答疑&#xff1a;汽车刹车时&#xff0c;四个车轮是如何制动的&#xff1f;制动机理是什么&#xff1f; 第一步&#xff1a;驾驶员踩下制动踏板&#xff0c;推动制动主缸 第二步&#xff1a;制动主缸将制动液的压力通过制动管道传递到四…...

cmake 引入第三方库(头文件目录、库目录、库文件)

程序的编写需要用到头文件&#xff0c;程序的编译需要lib文件&#xff0c;程序的运行需要dll文件&#xff0c;因此cmake引入第三方库其实就是将include目录、lib目录、bin目录引入工程。 目录 1、find_package&#xff08;批量引入库文件和头文件&#xff09; 2、include_dir…...

插件开发版|Authing 结合 APISIX 实现统一可配置 API 权限网关

当开发者在构建网站、移动设备或物联网应用程序时&#xff0c;API 网关作为微服务架构中不可或缺的控制组件&#xff0c;是流量的核心进出口。通过有效的权限管控&#xff0c;可以实现认证授权、监控分析等功能&#xff0c;提高 API 的安全性、可用性、拓展性以及优化 API 性能…...

deepinlinux v20安装rust和tauri并配置vscode开发工具过程

rust 很快进入linux内核开发&#xff0c;作为高效后台语言值得学习 tauri是代替electron的跨平台框架&#xff0c;不打包浏览器内核&#xff0c;所以打包出来体积小 安装rust 命令 curl --proto https --tlsv1.2 -sSf https://sh.rustup.rs | sh 安装后看版本 rustc -V 看构…...

通俗易懂的机器学习——sklearn鸢尾花分类(KNN)

前言 KNN算法是机器学习中较为简单的入门算法&#xff0c;其主要思想是选取k个与待预测点相近的数据&#xff0c;观察他们的类别&#xff0c;本着离谁近就更像谁的思路对于待预测点进行预测&#xff0c;本文将针对使用sklearn进行KNN算法的使用进行详解 数据预处理 在正式开…...

操作系统引论

操作系统是管理硬件和软件的一种应用程序。操作系统是运行在计算机上最重要的一种软件&#xff0c;它管理计算机的资源和进程以及所有的硬件和软件。它为计算机硬件和软件提供了一种中间层&#xff0c;使应用软件和硬件进行分离&#xff0c;让我们无需关注硬件的实现&#xff0…...

优质 CS 读博 (PhD) 经验贴汇总

前言 如果你对这篇文章可感兴趣&#xff0c;可以点击「【访客必读 - 指引页】一文囊括主页内所有高质量博客」&#xff0c;查看完整博客分类与对应链接。 Advice for early-stage Ph.D. students 读博的核心是在研究上取得进展&#xff0c;只有在研究上取得一些进展&#xff…...

SpringCloud学习笔记 - @SentinelResource的fallbackblockHandler配置详解 - sentinel

1. sentinel服务负载均衡测试 sentinel默认开启了负载均衡的轮询模式&#xff0c;为了测试sentinel服务负载均衡的效果&#xff0c;需要先创建两个服务提供者和一个服务消费者。 1.1. 分别创建两个服务提供者-支付服务9003、9004 1. 添加pom依赖&#xff1a; 提供者只需要将…...

华为OD机试题 - 静态扫描最优成本(JavaScript)

最近更新的博客 2023新华为OD机试题 - 斗地主(JavaScript)2023新华为OD机试题 - 箱子之形摆放(JavaScript)2023新华为OD机试题 - 考古学家(JavaScript)2023新华为OD机试题 - 相同数字的积木游戏 1(JavaScript)2023新华为OD机试题 - 最多等和不相交连续子序列(JavaScri…...

mysql大数据量批量提交

DROP PROCEDURE IF EXISTS test.insert_bacth_commit_test1;CREATE PROCEDURE test.insert_bacth_commit_test1()begindeclare start_num int default 0; -- 初始设置起始行数declare end_num int default 5;-- 初始设施结束行数declare cnt_srouce int default 0; -- 定义源表…...

IP SAN组网配置

目录一、确认网络连接畅通二、服务器端ISCSI启动器配置1.以root身份登录2.验证是否已安装iSCSI启动器3.安装iSCSI启动器4.启动iSCSI服务5.给iSCSI启动器命名6.扫描目标器7.登录目标器8.将登录目标器行为设置为自启动三、主机多路径配置四、存储配置五、主机挂载背景&#xff1a…...

浅谈 React Hooks

React Hooks 是 React 16.8 引入的一组 API&#xff0c;用于在函数组件中使用 state 和其他 React 特性&#xff08;例如生命周期方法、context 等&#xff09;。Hooks 通过简洁的函数接口&#xff0c;解决了状态与 UI 的高度解耦&#xff0c;通过函数式编程范式实现更灵活 Rea…...

【Linux】C语言执行shell指令

在C语言中执行Shell指令 在C语言中&#xff0c;有几种方法可以执行Shell指令&#xff1a; 1. 使用system()函数 这是最简单的方法&#xff0c;包含在stdlib.h头文件中&#xff1a; #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...

Debian系统简介

目录 Debian系统介绍 Debian版本介绍 Debian软件源介绍 软件包管理工具dpkg dpkg核心指令详解 安装软件包 卸载软件包 查询软件包状态 验证软件包完整性 手动处理依赖关系 dpkg vs apt Debian系统介绍 Debian 和 Ubuntu 都是基于 Debian内核 的 Linux 发行版&#xff…...

如何在看板中体现优先级变化

在看板中有效体现优先级变化的关键措施包括&#xff1a;采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中&#xff0c;设置任务排序规则尤其重要&#xff0c;因为它让看板视觉上直观地体…...

dedecms 织梦自定义表单留言增加ajax验证码功能

增加ajax功能模块&#xff0c;用户不点击提交按钮&#xff0c;只要输入框失去焦点&#xff0c;就会提前提示验证码是否正确。 一&#xff0c;模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...

镜像里切换为普通用户

如果你登录远程虚拟机默认就是 root 用户&#xff0c;但你不希望用 root 权限运行 ns-3&#xff08;这是对的&#xff0c;ns3 工具会拒绝 root&#xff09;&#xff0c;你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案&#xff1a;创建非 roo…...

Neo4j 集群管理:原理、技术与最佳实践深度解析

Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...

【C语言练习】080. 使用C语言实现简单的数据库操作

080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...

(转)什么是DockerCompose?它有什么作用?

一、什么是DockerCompose? DockerCompose可以基于Compose文件帮我们快速的部署分布式应用&#xff0c;而无需手动一个个创建和运行容器。 Compose文件是一个文本文件&#xff0c;通过指令定义集群中的每个容器如何运行。 DockerCompose就是把DockerFile转换成指令去运行。 …...

return this;返回的是谁

一个审批系统的示例来演示责任链模式的实现。假设公司需要处理不同金额的采购申请&#xff0c;不同级别的经理有不同的审批权限&#xff1a; // 抽象处理者&#xff1a;审批者 abstract class Approver {protected Approver successor; // 下一个处理者// 设置下一个处理者pub…...