99.20 金融难点通俗解释:中药配方比喻马科维茨资产组合模型(MPT)

目录

    • 0. 承前
    • 1. 核心知识点拆解
    • 2. 中药搭配比喻方案分析
      • 2.1 比喻的合理性
    • 3. 通俗易懂的解释
      • 3.1 以中药房为例
      • 3.2 配方原理
    • 4. 实际应用举例
      • 4.1 基础配方示例
      • 4.2 效果说明
    • 5. 注意事项
      • 5.1 个性化配置
      • 5.2 定期调整
    • 6. 总结
    • 7. 代码实现

0. 承前

本文主旨:
本文通过中药配方这一生动比喻来解释马科维茨资产组合模型的核心概念。将投资收益比作药效,风险比作苦味,资产相关性比作药材相互作用,并通过Python代码实现了这一比喻,使读者能够直观理解投资组合中的收益、风险、相关性及分散投资的重要性,让复杂的金融理论变得通俗易懂。

本文代码实现可参考:
1. 揭秘原始马科维茨资产组合模型(理论+Python实战)

如果想更加全面清晰地了解金融资产组合模型进化论的体系架构,可参考:
0. 金融资产组合模型进化全图鉴

1. 核心知识点拆解

  • 期望收益率
    投资组合的预期回报,就像不同中药的预期药效。

  • 风险度量
    投资的不确定性和波动性,类比为中药的苦味和副作用。

  • 资产相关性
    不同投资品种间的关联程度,就像不同中药之间的相互作用。

  • 分散投资
    通过合理配置降低整体风险,类似中药的合理搭配。

2. 中药搭配比喻方案分析

2.1 比喻的合理性

  • 药效(收益):不同中药有不同功效,就像不同投资产品有不同收益
  • 苦味(风险):服用中药难免有苦味,正如投资必然面临风险
  • 相互作用(相关性):中药讲究配伍,投资也需要考虑资产间关系

3. 通俗易懂的解释

3.1 以中药房为例

想象你是一位小小中医师,面前有很多种中药:

  • 人参(高收益高风险):补气效果好,但价格贵
  • 枸杞(稳定收益低风险):温和补养,风险小
  • 黄连(负相关药材):性质偏寒,可以中和温热药材

3.2 配方原理

就像老中医配药时会考虑:

  1. 不能只求药效强(高收益),要考虑病人能否承受(风险承受能力)
  2. 不能所有药都是温热性质(避免正相关)
  3. 要适当搭配一些相反性质的药(引入负相关资产)

4. 实际应用举例

4.1 基础配方示例

小明想要补气养身(追求收益),可以这样搭配:

  • 60% 枸杞(稳健型资产)
  • 30% 人参(进取型资产)
  • 10% 黄连(对冲资产)

4.2 效果说明

  • 枸杞保底,风险小(低风险资产打底)
  • 人参提供强劲效果(提高收益)
  • 黄连中和调配(降低整体风险)

5. 注意事项

5.1 个性化配置

  • 年轻人(风险承受能力强):可以多配一些人参
  • 老年人(风险承受能力弱):以枸杞为主
  • 特殊体质(特殊情况):需要专门调配

5.2 定期调整

  • 根据身体状况调整(市场变化)
  • 注意服用反应(风险监控)
  • 适时改变配方(组合再平衡)

6. 总结

马科维茨模型就像是一个"智慧老中医"的配方法则:

  1. 不同药材搭配(资产组合)
  2. 讲究相互作用(相关性)
  3. 平衡药效和副作用(收益风险平衡)
  4. 因人制宜(个性化投资组合)

7. 代码实现

以下代码仅作比喻

import numpy as npdef chinese_medicine_portfolio(weights):"""中药组合配比计算函数参数:weights: 包含三种中药配比的列表/数组 [人参, 枸杞, 黄连]返回:portfolio_effect: 组合药效(预期收益)portfolio_bitterness: 组合苦味(风险)"""# 三种中药的预期药效(年化收益率)effects = np.array([0.15,   # 人参: 15% 药效0.08,   # 枸杞: 8% 药效0.05    # 黄连: 5% 药效])# 苦味协方差矩阵(风险矩阵)# 对角线表示各自的苦味程度(波动率的平方)# 非对角线表示两两之间的相互作用(协方差)bitterness_matrix = np.array([[0.25,  0.08,   -0.12],  # 人参苦味高,与枸杞正相关,与黄连负相关[0.08,  0.10,   0.02],   # 枸杞苦味中等,与其他都稍正相关[-0.12, 0.02,   0.15]    # 黄连苦味较高,与人参负相关])# 确保权重之和为1if not np.isclose(sum(weights), 1.0):raise ValueError("药材配比之和必须等于1!")# 计算组合药效(预期收益)portfolio_effect = np.dot(weights, effects)# 计算组合苦味(风险)portfolio_bitterness = np.sqrt(np.dot(weights, np.dot(bitterness_matrix, weights)))return portfolio_effect, portfolio_bitterness# 测试不同配方
def test_prescriptions():"""测试不同配方的效果"""print("不同配方的药效与苦味比较:\n")# 保守配方: 主要是枸杞conservative = [0.1, 0.8, 0.1]effect, bitter = chinese_medicine_portfolio(conservative)print(f"保守配方 (人参10%, 枸杞80%, 黄连10%):")print(f"药效: {effect:.2%}")print(f"苦味: {bitter:.2%}\n")# 激进配方: 主要是人参aggressive = [0.7, 0.2, 0.1]effect, bitter = chinese_medicine_portfolio(aggressive)print(f"激进配方 (人参70%, 枸杞20%, 黄连10%):")print(f"药效: {effect:.2%}")print(f"苦味: {bitter:.2%}\n")# 平衡配方balanced = [0.3, 0.6, 0.1]effect, bitter = chinese_medicine_portfolio(balanced)print(f"平衡配方 (人参30%, 枸杞60%, 黄连10%):")print(f"药效: {effect:.2%}")print(f"苦味: {bitter:.2%}")if __name__ == "__main__":test_prescriptions()

运行结果:
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

笔灵ai写作技术浅析(四):知识图谱

知识图谱(Knowledge Graph)是一种结构化的知识表示方式,通过将知识以图的形式进行组织,帮助AI系统更好地理解和利用信息。在笔灵AI写作中,知识图谱技术被广泛应用于结构化组织各种领域的知识,使AI能够根据写作主题快速获取相关的背景知识、概念关系等,从而为生成内容提供…

基于python的Kimi AI 聊天应用

因为这几天deepseek有点状况,导致apikey一直生成不了,用kimi练练手。这是一个基于 Moonshot AI 的 Kimi 接口开发的聊天应用程序,使用 Python Tkinter 构建图形界面。 项目结构 项目由三个主要Python文件组成: 1. main_kimi.py…

python算法和数据结构刷题[5]:动态规划

动态规划(Dynamic Programming, DP)是一种算法思想,用于解决具有最优子结构的问题。它通过将大问题分解为小问题,并找到这些小问题的最优解,从而得到整个问题的最优解。动态规划与分治法相似,但区别在于动态…

JavaFX - 3D 形状

在前面的章节中,我们已经了解了如何在 JavaFX 应用程序中的 XY 平面上绘制 2D 形状。除了这些 2D 形状之外,我们还可以使用 JavaFX 绘制其他几个 3D 形状。 通常,3D 形状是可以在 XYZ 平面上绘制的几何图形。它们由两个或多个维度定义&#…

wax到底是什么意思

在很久很久以前,人类还没有诞生文字之前,人类就产生了语言;在诞生文字之前,人类就已经使用了语言很久很久。 没有文字之前,人们的语言其实是相对比较简单的,因为人类的生产和生活水平非常低下,…

从理论到实践:Linux 进程替换与 exec 系列函数

个人主页:chian-ocean 文章专栏-Linux 前言: 在Linux中,进程替换(Process Substitution)是一个非常强大的特性,它允许将一个进程的输出直接当作一个文件来处理。这种技术通常用于Shell脚本和命令行操作中…

Python 中最大堆和最小堆的构建与应用:以寻找第 k 大元素为例

引言 在数据处理和算法设计中,堆(Heap)是一种非常重要的数据结构。它是一种特殊的完全二叉树,具有高效的插入和删除操作特性,时间复杂度为 O ( log ⁡ n ) O(\log n) O(logn)。堆主要分为最大堆和最小堆,…

使用Avalonia UI实现DataGrid

1.Avalonia中的DataGrid的使用 DataGrid 是客户端 UI 中一个非常重要的控件。在 Avalonia 中,DataGrid 是一个独立的包 Avalonia.Controls.DataGrid,因此需要单独通过 NuGet 安装。接下来,将介绍如何安装和使用 DataGrid 控件。 2.安装 Dat…

21款炫酷烟花代码

系列专栏 《Python趣味编程》《C/C趣味编程》《HTML趣味编程》《Java趣味编程》 写在前面 Python、C/C、HTML、Java等4种语言实现21款炫酷烟花的代码。 Python Python烟花① 完整代码:Python动漫烟花(完整代码) ​ Python烟花② 完整…

为什么LabVIEW适合软硬件结合的项目?

LabVIEW是一种基于图形化编程的开发平台,广泛应用于软硬件结合的项目中。其强大的硬件接口支持、实时数据采集能力、并行处理能力和直观的用户界面,使得它成为工业控制、仪器仪表、自动化测试等领域中软硬件系统集成的理想选择。LabVIEW的设计哲学强调模…

Cmake学习笔记

cmake的使用场景和功能:cmake 的诞生主要是为了解决直接使用 makeMakefile 这种方式无法实现跨平台的问题,所以 cmake 是可以实现跨平台的编译工具这是它最大的特点。cmake 仅仅只是根据不同平台生成对应的 Makefile,最终还是通过 make工具来…

计算机网络 应用层 笔记1(C/S模型,P2P模型,FTP协议)

应用层概述: 功能: 常见协议 应用层与其他层的关系 网络应用模型 C/S模型: 优点 缺点 P2P模型: 优点 缺点 DNS系统: 基本功能 系统架构 域名空间: DNS 服务器 根服务器: 顶级域…

基于WiFi的智能照明控制系统的设计与实现(论文+源码)

1系统方案设计 本设计智能照明控制系统,结合STM32F103单片机、光照检测模块、显示模块、按键模块、太阳能板、LED灯模块、WIFI模块等器件构成整个系统,在功能上可以实现光照强度检测,并且在自动模式下可以自动调节照明亮度,在手动…

openRv1126 AI算法部署实战之——TensorFlow TFLite Pytorch ONNX等模型转换实战

Conda简介 查看当前系统的环境列表 conda env list base为基础环境 py3.6-rknn-1.7.3为模型转换环境,rknn-toolkit版本V1.7.3,python版本3.6 py3.6-tensorflow-2.5.0为tensorflow模型训练环境,tensorflow版本2.5.0,python版本…

【react+redux】 react使用redux相关内容

首先说一下,文章中所提及的内容都是我自己的个人理解,是我理逻辑的时候,自我说服的方式,如果有问题有补充欢迎在评论区指出。 一、场景描述 为什么在react里面要使用redux,我的理解是因为想要使组件之间的通信更便捷…

JAVA安全—反射机制攻击链类对象成员变量方法构造方法

前言 还是JAVA安全,哎,真的讲不完,太多啦。 今天主要是讲一下JAVA中的反射机制,因为反序列化的利用基本都是要用到这个反射机制,还有一些攻击链条的构造,也会用到,所以就讲一下。 什么是反射…

vim交换文件的作用

1.数据恢复:因为vim异常的退出,使用交换文件可以恢复之前的修改内容。 2.防止多人同时编辑:vim检测到交换文件的存在,会给出提示,以避免一个文件同时被多人编辑。 (vim交换文件的工作原理:vim交换文件的工作…

无用知识之:std::initializer_list的秘密

先说结论,用std::initializer_list初始化vector,内部逻辑是先生成了一个临时数组,进行了拷贝构造,然后用这个数组的起终指针初始化initializer_list。然后再用initializer_list对vector进行初始化,这个动作又触发了拷贝…

CoRAG 来自微软与人大的创新RAG框架技术

微软与人大合作开发的CoRAG(Chain-of-Retrieval Augmented Generation)是一种创新的检索增强生成(RAG)框架,旨在通过模拟人类思考方式来提升大语言模型(LLM)在复杂问题上的推理和回答能力。以下是对CoRAG的深度介绍: 1. CoRAG的核心理念 CoRAG的核心思想是通过动态调…

一文讲解HashMap线程安全相关问题(上)

HashMap不是线程安全的,主要有以下几个问题: ①、多线程下扩容会死循环。JDK1.7 中的 HashMap 使用的是头插法插入元素,在多线程的环境下,扩容的时候就有可能导致出现环形链表,造成死循环。 JDK 8 时已经修复了这个问…