最近工作很不顺,想当个包租公,天天吃利息就行。
闲来无事,就想研究一下我大概有多少钱才能躺平?
0、钱不在你有多少,而在于你… ----- 引言
为了更好让你理解本文的逻辑框架,我将本文的大概框架摘了出来:
每天 1 米利息的话我应该存多少米→我每天生存需要多少米→我应该存够多少米才能吃利息生活→我现在到退休每月要存多少米
在本文计算中:一年按照 365 天计算,一个月按照 30 天计算
1、每天 1 米利息的话我应该存多少米
如果我想要每天 1 米,按照银行现在的活期年利率为 0.2%
根据计算公式换算则日利率为:0.2%/365=0.00000054
如果每天要得到 1 米则需要的本金为 182500 米
2、我每天吃土需要花多少
稍微省一点的(吃土套餐):
房贷 3000 米、话费 100 米、油费 300 米、车保险 120 米。
合计:3520 米每月,合计每天也就是 3520÷30=117.33 米 / 天
稍微中上等一点的(一般般套餐):
房贷 3000 米、物业费 230 米、车位费 1200 米、电费 200 米、燃气费 80 米、水费 50 米、网费 60 米、暖气费 300 米、话费 300 米、社保 1400 米、兴趣班 2600 米、餐费 350 米、资料费 300 米、牛奶 200 米、油费 600、车保险 360 米、菜费 800 米、午饭 700 米、鱼虾 300 米、衣服 300 米。
合计:13330 米,合计每天也就是 13330÷30=444 米 / 天
60 岁后,可将部分内容更换,即可将房贷换为营养补品类的…
3、我应该存够多少米才能吃利息生活
按照前面计算的结果:
如果是吃点土套餐,则每天至少需要 118 米,那我至少要存 21,535,000,二千一百五十三万五千米
如果是一般套餐,则每天也需要 444 米,那我至少需要存 81,030,000,八千一百零三万米。
列表如下:
套餐 | 每天至少需要 | 一共需要 |
---|---|---|
吃土套餐 | 118 | 21,535,000 |
一般套餐 | 444 | 81,030,000 |
躺平指:无论对方做出什么反应,你内心都毫无波澜,对此不会有任何反应或反抗。
3、我现在到退休每月要存多少米
我现在才 25 岁,假如我干到退休 60 岁,也就是我还能哼哧哼哧再干 35 年。
假如我的工资每年都不涨,每天都一样
如果我选择的是吃土套餐:
我每月需要存 51,273.81 米,每天也就是 1,709 米
如果我选择是一般套餐:
我每月需要存 192,928.57 米,每天也就是 6430 米
套餐 | 总米 | 每年需要存 | 每个月需要存 |
---|---|---|---|
一般套餐 | 81,030,000 | 2,315,142.86 | 192,928.57 |
吃土套餐 | 21,535,000 | 615,285.71 | 51,273.81 |
当然,我的工资不可能每个月都一样,刚开始肯定都是很少的。
假如我的工资每年以固定的比例进行计算
比如:初始工资 x,每年以 10% 的幅度增长
则 35 年后的累加总量为上述套餐所需要的值。
这是一个等比数列求和问题 S=x×(1-r^n)/(1-r)
计算求出每年应该存多少米,然后转换成每个月的
但是如果我以每年 20% 的幅度增长,那我 25 岁的时候工资年合计为 7304.11 即可
也就是说如果以后我的工资按照每年 20% 这个增幅增长,我在 60 岁的时候就能存到 21,535,000 米!!!
我又算了几个增长幅度所对应的月收入,如下图所示:
4、最后最后!重点来了!!
也就是说按照我现在工资 4000 来说
我不吃不喝,工资每年以 12.5% 的比例往上涨
60 岁退休的时候,就能存够 21,535,000 米
我就可以每天靠着 118 元的利息生存了。
5、代码部分
from loguru import logger
import os
# 公众号:右恩
log_dir = os.path.expanduser("ulog")
log_file = os.path.join(log_dir, "{time:YYYY-MM}.log")
if not os.path.exists(log_dir): # 如果日志目录不存在,则创建
os.makedirs(log_dir)
# 公众号:右恩
logger.add(log_file,encoding="utf-8")
logger.info("hello world")
# 公众号:右恩
def calc_money(interest_rate = 0.2 / 100): # 输入你打算一天花多少钱
logger.info("开始计算")
# 假设每天花100元,计算100天后的钱数 一年也就是365天 银行货期存款的年利率为0.2%
money1 = 1
year = 365
p = lambda a, b: a / (b / year) # a为需要的本金,b为年利率
# money2 = 100
logger.info(f"每天的利息为{interest_rate / year}")
logger.info(f"每天你想要每天的利息为{money1},按照每年{interest_rate}的年利率,需要的本金是{p(money1,interest_rate)}")
logger.info(f"每天你想要每天的利息为{money1*118},按照每年{interest_rate}的年利率,需要的本金是{p(money1*118,interest_rate)}")
logger.info(f"每天你想要每天的利息为{money1*444},按照每年{interest_rate}的年利率,需要的本金是{p(money1*444,interest_rate)}")
# 当然不够,如果
logger.info("计算结束")
# 公众号:右恩
calc_money()
from loguru import logger
import os
# 公众号:右恩
from matplotlib import pyplot
log_dir = os.path.expanduser("ulog")
log_file = os.path.join(log_dir, "plot{time:YYYY-MM}.log")
if not os.path.exists(log_dir): # 如果日志目录不存在,则创建
os.makedirs(log_dir)
# 公众号:右恩
logger.add(log_file,encoding="utf-8")
logger.info("hello world")
year = [i for i in range(25,61)]
# 公众号:右恩
def calculate_sum(my_money):
result_list = []
current_sum = 0
for num in my_money:
current_sum += num
result_list.append(current_sum)
return result_list
logger.error("这是第一个方案:每个月的增长都是固定的")
my_money = [615285.71 for j in range(25,61)]
gu_ding_money = calculate_sum(my_money)
logger.info("我每个月的存款为\n{}".format(my_money))
logger.info("我的存款和为\n{}".format(gu_ding_money))
logger.info("-"*50)
logger.error("这是第二个方案:每个月的增长以10%的幅度增长")
# 公众号:右恩
logger.info("我每个月的存款为\n{}".format(my_money))
logger.info("我的存款和为\n{}".format(gu_ding_money))
logger.info("-"*50)
pyplot.plot(year,gu_ding_money)
pyplot.show()
# -*- coding: utf-8 -*-
# Author = huahua
# File : 根据增长量计算初始工资.py
# date ; 2024/4/24 11:20
# 导入需要的库
from loguru import logger
import os
from matplotlib import pyplot as plt
# 公众号:右恩
log_dir = os.path.expanduser("ulog")
log_file = os.path.join(log_dir, "plot{time:YYYY-MM}.log")
if not os.path.exists(log_dir): # 如果日志目录不存在,则创建
os.makedirs(log_dir)
logger.add(log_file,mode="w",encoding="utf-8")
def nianzengzhang(r,S): # r为增长率,S为初始金额
n = 35
equation = (S * (r - 1)) / (r ** n - 1) # r为增长率
result_list = [equation] #存放每年的金额
current_sum = equation # 当前的日期
for num in range(0,34):
current_sum = current_sum * r
result_list.append(current_sum)
return result_list
# 公众号:右恩
def qian_n_xianghe(list_a):
temp_a = 0
temp_list = []
for i in list_a:
temp_a += i
temp_list.append(temp_a)
return temp_list
year = [i for i in range(1,36)]
# 公众号:右恩
# n1 = 1.07
# n2 = 1.1
# n2_1 = 1.122
# n3 = 1.15
# n4 = 1.2
# S = 21_535_000
n1 = 1.07
n2 = 1.1
n2_1 = 1.15
n3 = 1.177
n4 = 1.2
S = 81_030_000
# 公众号:右恩
all_list = nianzengzhang(n1,S)
all_list1 = nianzengzhang(n2,S)
all_list1_1 = nianzengzhang(n2_1,S)
all_list2 = nianzengzhang(n3,S)
all_list4 = nianzengzhang(n4,S)
# 我的累计收入
# 公众号:右恩
logger.info(f"当前的增长率为{n1},当前的总金额为{S},所有的列表为\n{all_list},\n和为{sum(all_list)},我每个月的工资为\n{all_list[0] / 12}")
logger.info(f"我的累计收入为{qian_n_xianghe(all_list)}")
logger.error("-"*40)
logger.info(f"当前的增长率为{n2},当前的总金额为{S},所有的列表为\n{all_list1},\n和为{sum(all_list1)},我每个月的工资为\n{all_list1[0] / 12}")
logger.info(f"我的累计收入为{qian_n_xianghe(all_list1)}")
logger.error("-"*40)
logger.info(f"当前的增长率为{n2_1},当前的总金额为{S},所有的列表为\n{all_list1_1},\n和为{sum(all_list1_1)},我每个月的工资为\n{all_list1_1[0] / 12}")# 公众号:右恩
logger.info(f"我的累计收入为{qian_n_xianghe(all_list1_1)}")
logger.error("-"*40)
logger.info(f"当前的增长率为{n3},当前的总金额为{S},所有的列表为\n{all_list2},\n和为{sum(all_list2)},我每个月的工资为\n{all_list2[0] / 12}")
logger.info(f"我的累计收入为{qian_n_xianghe(all_list2)}")
logger.error("-"*40)
logger.info(f"当前的增长率为{n4},当前的总金额为{S},所有的列表为\n{all_list4},\n和为{sum(all_list4)},我每个月的工资为\n{all_list4[0] / 12}")
logger.info(f"我的累计收入为{qian_n_xianghe(all_list4)}")
logger.error("-"*40)
# 公众号:右恩
plot_1 = plt.plot(year,all_list,marker="+",label=f"{n1}")
plot_2 = plt.plot(year,all_list1,marker="o",label=f"{n2}")
plot_3 = plt.plot(year,all_list1_1,marker=">",label=f"{n2_1}")
plot_4 = plt.plot(year,all_list2,marker="H",label=f"{n3}")
plot_5 = plt.plot(year,all_list4,marker="H",label=f"{n4}")
# 我的累积收入为:
# 公众号:右恩
# plot_1 = plt.plot(year,qian_n_xianghe(all_list),marker="+",label=f"{n1}")
# plot_2 = plt.plot(year,qian_n_xianghe(all_list1),marker="o",label=f"{n2}")
# plot_3 = plt.plot(year,qian_n_xianghe(all_list1_1),marker=">",label=f"{n2_1}")
# plot_4 = plt.plot(year,qian_n_xianghe(all_list2),marker="H",label=f"{n3}")
# plot_5 = plt.plot(year,qian_n_xianghe(all_list4),marker="H",label=f"{n4}")
# 公众号:右恩
plt.xlabel("我能继续工作的年数",fontproperties="SimSun",fontsize=13)
plt.ylabel("我的年平均工资",fontproperties="SimSun",fontsize=13)
# plt.text(30,all_list2[34]-1000000,"{}".format(round(all_list2[34]),2),fontsize=15,fontproperties="SimSun")
plt.legend(fontsize=15)
plt.show()