Python大数据与量化交易-1-1-6-matplotlib模块的颜色表关键词

yumo6667个月前 (05-16)技术文章107

代码主要实现了复利投资模拟功能。通过定义sta001函数计算复利终值,考虑了每年固定投入和复利增长的因素。主程序部分计算了四种不同年利率(5%、10%、15%、20%)下,连续 40 年每年投入 1.4 个单位资金的复利终值,并将结果存储在 DataFrame 中。最后使用hot颜色映射绘制图表,以直观地展示不同年利率下复利终值随年份的变化趋势。复利的力量通过图表可以清晰地看到:随着时间的推移,较高利率的投资回报呈现指数级增长,与低利率投资的差距越来越大。这体现了长期投资和选择合适投资回报率的重要性。

# 导入数值计算库numpy,用于进行数学计算
import numpy as np
# 导入数据处理库pandas,用于数据结构和分析
import pandas as pd
# 导入绘图库matplotlib,用于数据可视化
import matplotlib as mpl

# 设置matplotlib的样式为seaborn-whitegrid,这是一种美观的带网格线的白色背景样式
mpl.style.use('seaborn-whitegrid');

# 定义复利终值计算函数
# k: 年利率
# nyear: 投资年数
# xd: 每年投入金额
def sta001(k, nyear, xd):
    # 使用numpy的fv函数计算复利终值(Future Value)
    # 参数说明:k为利率,nyear为期数,-xd为每期投入(负号表示现金流出),-xd为初始投入
    d2 = np.fv(k, nyear, -xd, -xd);
    # 对计算结果进行四舍五入取整
    d2 = round(d2)
    # 返回计算结果
    return d2

# 计算年利率为5%时,0到39年每年投入1.4的复利终值列表
dx05 = [sta001(0.05, x, 1.4) for x in range(0, 40)]
# 计算年利率为10%时,0到39年每年投入1.4的复利终值列表
dx10 = [sta001(0.10, x, 1.4) for x in range(0, 40)]
# 计算年利率为15%时,0到39年每年投入1.4的复利终值列表
dx15 = [sta001(0.15, x, 1.4) for x in range(0, 40)]
# 计算年利率为20%时,0到39年每年投入1.4的复利终值列表
dx20 = [sta001(0.20, x, 1.4) for x in range(0, 40)]

# 创建一个DataFrame来存储不同利率下的复利终值数据
df = pd.DataFrame(columns=['dx05', 'dx10', 'dx15', 'dx20']);
# 将各利率下的复利终值数据添加到DataFrame的对应列
df['dx05'] = dx05;
df['dx10'] = dx10;
df['dx15'] = dx15;
df['dx20'] = dx20;

# 打印DataFrame的最后几行,用于查看数据情况
print(df.tail())

# 使用matplotlib的hot颜色映射绘制DataFrame中的数据
# 这里将显示四条曲线,分别代表四种不同利率下复利终值随年份的变化
df.plot(colormap='hot')
runfile('D:/zwPython/zwrk/6_零起点Python机器学习与量化交易/k101cmap2.py', wdir='D:/zwPython/zwrk/6_零起点Python机器学习与量化交易')
     dx05   dx10    dx15     dx20
35  134.0  419.0  1420.0   4955.0
36  142.0  462.0  1634.0   5947.0
37  151.0  510.0  1881.0   7138.0
38  160.0  562.0  2165.0   8567.0
39  169.0  620.0  2491.0  10281.0
D:\zwPython\zwrk\6_零起点Python机器学习与量化交易\k101cmap2.py:13: DeprecationWarning: numpy.fv is deprecated and will be removed from NumPy 1.20. Use numpy_financial.fv instead (https://pypi.org/project/numpy-financial/).
  d2=np.fv(k,nyear,-xd,-xd);

相关文章

全国计算机等级考试二级Python易错真题详解-流程控制-单选题

流程控制(单选题)说明:本文中的题目,全都来自全国计算机等级考试二级Python语言程序设计考试的真题,且都为易错题。题干最后如有编号,则是 python123 平台上的题号,以方便学生查找和索引。在...

python基础函数

Python 函数是代码复用的核心工具,掌握基础函数的使用是编程的关键。以下是 Python 函数的系统总结,包含 内置函数 和 自定义函数 的详细用法,以及实际应用场景。一、Python 内置函数(...

Python内置函数指南

在python中有些函数,很多时候不用import导入就可以直接使用呢,就是python内置函数起的作用。以下我们来说说这些,由于不同python版本可能有些不同,不断实践中优化的结果,自己实测为准...

Python 最常用的语句、函数有哪些?

1. #coding=utf-8① 代码中有中文字符,最好在代码前面加#coding=utf-8② pycharm不加可能不会报错,但是代码最终是会放到服务器上,放到服务器上的时候运行可能会报错。③...

高阶函数map,reduce,filter函数

高阶函数把函数作为参数传入,这样的函数称之为高阶函数,告诫函数时函数式编程的体现。函数式编程就是指这种高度抽象的编程范式。1.1 体验高阶函数# 对数字求绝对值函数:abs() print(abs(-...

零起点Python机器学习快速入门-8-5-批量调用机器学习

主要实现了对联合循环电厂(CCPP)数据集使用多种机器学习模型进行批量训练、预测和评估的功能。具体步骤如下:数据读取:定义了文件路径前缀fsr0,通过调用zai.ai_dat_rd函数,从相应路径读取...