Python年利率计算器【N日年化收益率】

news2025/7/20 11:04:28

现在有闲钱的人,按照聪明等级从低到高排序应该是

  1. 钱买股票,一年利率约为-20%

  1. 钱放银行活期,年利率约为0.3%

  1. 钱放银行定期,一年利率约为1.5%

  1. 钱放余额宝(支付宝)或零钱通(微信),随时支取且年利率约为1.8%

  1. 钱买理财,一年利率约为3%

  1. 钱买股票,一年利率约为20%

我不聪明,但是经人点拨也开始买理财,支付宝,微信,银行的理财产品都有涉猎。

但是各家的APP,都不肯显示当前的年化收益。这里简要科普一下最常见的七日年化是怎么计算的。

比如2023年2月10日买入某理财10000元,11日开始产生收益,到2月17日共有7天的收益(非工作日不显示收益,但是会在周一结算上周六周日的收益),假设七天的收益金额为6元,那么七日年化收益率为

%3.13%

更一般地,

年化收益率=利息本金天数365100%

为了方便计算,我使用python的Tkinter库制作了一个年化利率计算器,代码如下(部分代码由ChatGPT完成)。

import tkinter as tk
from datetime import datetime

class RateCalculator:
    def __init__(self, master):
        self.master = master
        master.title("年利率计算器")

        # 创建标签和输入框
        self.buy_date_label = tk.Label(master, text="买入日期(格式为2020-01-13)")
        self.buy_date_label.grid(row=0, column=0, sticky=tk.W)
        self.buy_date_entry = tk.Entry(master)
        self.buy_date_entry.grid(row=0, column=1)

        self.buy_amount_label = tk.Label(master, text="买入金额:")
        self.buy_amount_label.grid(row=1, column=0, sticky=tk.W)
        self.buy_amount_entry = tk.Entry(master)
        self.buy_amount_entry.grid(row=1, column=1)

        self.current_date_label = tk.Label(master, text="当前日期(格式为2021-10-01)")
        self.current_date_label.grid(row=2, column=0, sticky=tk.W)
        self.current_date_entry = tk.Entry(master)
        self.current_date_entry.grid(row=2, column=1)

        self.profit_label = tk.Label(master, text="收益:")
        self.profit_label.grid(row=3, column=0, sticky=tk.W)
        self.profit_entry = tk.Entry(master)
        self.profit_entry.grid(row=3, column=1)

        self.result_label = tk.Label(master, text="")
        self.result_label.grid(row=4, column=0, columnspan=2)

        # 创建计算按钮
        self.calculate_button = tk.Button(master, text="计算", command=self.calculate_rate)
        self.calculate_button.grid(row=5, column=0, columnspan=2)

    def calculate_rate(self):
        # 获取输入值
        buy_date_str = self.buy_date_entry.get()
        buy_amount_str = self.buy_amount_entry.get()
        current_date_str = self.current_date_entry.get()
        profit_str = self.profit_entry.get()

        # 将日期字符串转换为日期对象
        buy_date = datetime.strptime(buy_date_str, "%Y-%m-%d")
        current_date = datetime.strptime(current_date_str, "%Y-%m-%d")

        # 计算持有天数和年化收益率
        hold_days = (current_date - buy_date).days
        buy_amount = float(buy_amount_str)
        profit = float(profit_str)
        annual_rate = (profit / buy_amount) / (hold_days / 365) * 100

        # 显示结果
        self.result_label.config(text="年化利率为:{:.2f}%".format(annual_rate))

# 创建主窗口并运行
root = tk.Tk()
root.resizable(width=0, height=0)
my_calculator = RateCalculator(root)
root.mainloop()

界面如图,按要求输入买入日期,买入金额,当前日期和当前总收益,点击计算就会得到年化利率

代码及打包好的可运行的exe文件,可以在这下载python基于Tkinter库的年化利率计算器-Python文档类资源-CSDN文库

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/368760.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ChatGPT和Web3:人工智能如何帮助您建立和发展您的 Web3 公司

ChatGPT是OpenAI在2022年11月推出的聊天机器人。该机器人建立在OpenAI的GPT-3人工智能家族上,并通过监督学习和强化学习技术进行了优化。 与ChatGPT机器人聊天时,你会感觉自己在与一个懂得一切并以非常教育性的方式回答的朋友交谈。回答在许多知识领域非…

文件上传+easyExcel

文章目录需求描述实现0、依赖1、编写配置类2、文件上传工具类3、编写Controller4、编写Service5、编写excel对应的类6、创建easyExcel的监听器7、最终效果需求描述 页面中当用户将excel表格上传到服务器后,将该excel文件保存在本地然后在服务器中将excel中的数据读取…

预编译(回顾)

浏览器运行机制变量提升机制私有变量提升步骤全局对象 GO 和全局变量对象 VO的区别带var和不带var的区别系统输出顺序变量提升在条件判断下的处理防止函数的变量提升 浏览器运行机制 为了能够让代码执行,浏览器首先会形成一个执行环境栈 ECStack(Execution Contex…

15- 答题卡识别及分数判定项目 (OpenCV系列) (项目十五)

项目要点 图片读取 : img cv2.imread(./images/test_01.png)灰度图: gray cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)高斯模糊: blurred cv2.GaussianBlur(gray, (5, 5), 0) # 去噪点边缘检测: edged cv2.Canny(blurred, 75, 200)检测轮廓: cnts cv2.findContours(e…

Ai作画studio环境布置

大家好,今天跟大家介绍如何用stable diffusion webui布置自己的Ai作画工作环境。这部分主要就是实操,没有太多理论知识介绍。跟着做就好了,当成是一次计算机实验上机课就好基础环境布置这次开发环境选择的是AutoDL的GPU云环境,链接…

ros下用kinectv2运行orbslam2

目录 前提 创建工作空间 orbslam2源码配置、测试: 配置usb_cam ROS功能包 配置kinect 前提 vim 、 cmake 、 git 、 gcc 、 g 这些一般都装了 主要是Pangolin 、 OpenCV 、 Eigen的安装 18.04建议Pangolin0.5 创建工作空间 我们在主目录下创建一个catkin_…

听车企做开发朋友说,面试Framework 必问~

近期听在车企工作的朋友说,今年去他们公司面试的人比往年增长了30%左右,但实际面试达到标准的人屈指可数,大多都是从 Android 开发方向转过来的。 车企招聘要求有哪些? 每个车企因为业务部门的不同,他们的要求也会有…

Tapdata Connector 实用指南:实时数仓场景之数据实时同步至 ClickHouse

【前言】作为中国的 “Fivetran/Airbyte”, Tapdata 是一个以低延迟数据移动为核心优势构建的现代数据平台,内置 60 数据连接器,拥有稳定的实时采集和传输能力、秒级响应的数据实时计算能力、稳定易用的数据实时服务能力,以及低代码可视化操作…

搭建直播平台服务器什么配置最合适?直播平台专用服务器(驰网i9-13900k服务器)

如今,视频直播越来越受欢迎,视频和直播平台也越来越多,直播平台和视频网站都需要更好的服务器来支持。那么,视频直播平台需要什么服务器呢?以一个简单的直播网站为例。如果每天在线人数约1000人,同时在线人…

Win10 22H2 19045.2670系统原版镜像

相比以前系统,修复了如下KB5022906 修复了诸多问题,IT之家将官方更新日志翻译如下:修复了在 Microsoft Excel 中无法打开超链接的问题修复了影响 Appx 状态存储库的问题。在用户删除用户配置文件后,相关清理工作未能妥善完成&…

【nohup引发磁盘读写高】nohup命令导致服务器磁盘读写占满该如何修复?

【写在前面】自己在跑一个项目的时候,猛然发现服务器挂了,直接访问不了,呈现出一种卡死现象,我当时都懵了,难道阿里在后端升级,也不会选择在工作日的时间升级吧,于是乎就咨询了一下客服。才有下…

【项目精选】jsp码头船只出行及配套货柜码放管理系统的设计与实现(视频+源码+论文)

点击下载源码 jsp码头船只出行及配套货柜码放管理系统主要用于实现高校在线考试,基本功能包括:用户登录、修改个人信息、查看码头信息;系统管理人员管理;船只信息管理;船只路线信息管理;货柜信息管理等。本…

Vue-cli脚手架在做些什么(源码角度分析)

什么是Vue脚手架?在学习初期,我们的项目往往需要借助webpack、vite等打包工具配置Vue的开发环境,但是在真实开发中我们不可能每个项目从头来完成所有的webpack配置,这样显得开发的效率会大大的降低;所有的真实开发中&a…

手写SpringBoot的starter

自定义SpringBoot的starter 引言 starter命名格式: 官方的 starter 的命名格式为 spring-boot-starter-{xxxx} 比如spring-boot-starter-activemq 第三方我们自己的命名格式为 {xxxx}-spring-boot-starter。比如mybatis-spring-boot-starter。 如果我们忽略这种约定…

【Git】与“三年经验”就差个分支操作的距离

前言 Java之父于胜军说过,曾经一位“三年开发经验”的程序员粉丝朋友,刚入职因为不会解决分支问题而被开除,这是不是在警示我们什么呢? 针对一些Git的不常用操作,我们通过例子来演示一遍 1.版本回退 1.1已提交但未p…

【Nginx】|入门连续剧——安装

作者:狮子也疯狂 专栏:《Nginx从入门到超神》 坚持做好每一步,幸运之神自然会降临在你的身上 目录一. 🦁 前言Ⅰ. 🐇 为啥我们要使用Nginx?二. 🦁 搭建流程Ⅰ. 🐇 环境准备Ⅱ. &…

LeetCode 热题 C++ 141. 环形链表 142. 环形链表 II(详解!)

力扣141 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置&am…

图片和ppm文件互转

一、代码结构 二、代码实现 Denoise.java: package com.xj.ppm.toimg;import java.awt.FlowLayout; import java.awt.image.BufferedImage; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel;/*** Image noise reduction pro…

I.MX6ULL内核开发10:设备树

目录 一、设备树简介 二、设备树源码 三、获取设备树信息 1、增加设备节点 2、内核编译设备树 3、替换设备树文件 4、查看设备树节点 5、在驱动中获取节点的属性 6、编译驱动模块 7、加载模块 一、设备树简介 设备树的作用是描述一个硬件平台的硬件资源。这个“设备树…

Redis主从和哨兵搭建

今天主要分享Redis主从架构和哨兵的搭建。 主从集群搭建 总共三个节点,一个主节点和两个从节点。都安装在一台机器上模拟主从集群,信息如下: IPPORT角色192.168.246.1407001slave192.168.246.1407002master192.168.246.1407003slave 我们只…