include

"stdafx.h"

#include

#include

#include

#define M

0.00001

#define M1

0.000001

#define pi

3.1415926535898

using namespace

std;

double N(double

d) //正态分布函数求解

{ double

Nd;

double t;

double

a=0.33267,a1=0.4361836,a2=-0.1201617,a3=0.9372986;

if(d>0)

{ t=1/(1+a*d);

Nd=1-1/pow(2*pi,0.5)*exp(-d*d/2)*(a1*t+a2*t*t+a3*t*t*t);

}

else if(d<0)

{ t=1/(1-a*d);

Nd=1/pow(2*pi,0.5)*exp(-d*d/2)*(a1*t+a2*t*t+a3*t*t*t);

}

return Nd;

}

double NX(double

y) //正态分布函数求反求x

{ //假设x的值为非负

double

t;

double temp;

double

d,x=0;

double

a=0.33267;

double

a1=0.4361836,a2=-0.1201617,a3=0.9372986;

for(t=0;t<=1;t=0.00001+t)

{

d=(1/t-1)/a;

temp=1-1/pow(2*pi,0.5)*exp(-d*d/2)*(a1*t+a2*t*t+a3*t*t*t)-y;

if(temp

{ x=d;

break;

}

}

return x;

}

//求绝对值

long double abs1(long

double x)

{ long double x1=0;

if(x>0)

x1=x;

if(x<=0)

x1=-x;

return

x1;

}

long double KMV(long

double &zcbdx1,long double &A,long

double gqbdx,long double E, double t,long double r,long double

B)

///gqbdx代表股权波动性,E为股权市场价值,t代表间隔时间,r代表物风险利率,B代表违约点

{ double

Nd2=0,d2=0,d1=0,temp=0,zcbdx=0,A1=0;

//

for(zcbdx=0.0001;zcbdx<=1;zcbdx=zcbdx+0.0001)

{ //d1=d2+zcbdx*pow(t,0.5)=(log(gqbdx*E/zcbdx/N(d1)/B)+(r+0.5*zcbdx*zcbdx)*t)/(zcbdx*pow(t,o.5));

//A=gqbdx*E/N(d1)/zcbdx;

//思路:假设zcbdx已知,求出N(d2)

//

N(d2)=(-E+gqbdx*E/zcbdx)/(B*exp(-r*t));

//根据N(d2)求出d2;再求出d1

//d1=d2+zcbdx*pow(t,0.5);

//f(d1)=d1-(log(gqbdx*E/zcbdx/N(d1)/B)+(r+0.5*zcbdx*zcbdx)*t)/(zcbdx*pow(t,o.5));

//接近0时,即求出zcbdx;

Nd2=(-E+gqbdx*E/zcbdx)/(B*exp(-r*t));

d2=NX(Nd2);

d1=d2+zcbdx*pow(t,0.5);

temp=d1-(log( (gqbdx*E/zcbdx/N(d1))/B)+(r+0.5*zcbdx*zcbdx)*t

)/(zcbdx*pow(t,0.5));

A1=gqbdx*E/zcbdx/N(d1);

//printf("%f,%fn",zcbdx,A1);//输出值,查看具体实现的值

if(temp

{ zcbdx1=zcbdx;

A=gqbdx*E/zcbdx1/N(d1);

break;

}

}

return 0;

}

int _tmain(int argc,

_TCHAR* argv[])

{

//调用正态及正态反函数并验证结果

printf("%fn",N(1));

printf("%fn",NX(N(1)));

long double x,y,x1;

//调用KMV函数的方法

x1=KMV(x,y,0.540072,4062123101,0.74794,0.0277,1967828071);

//输出x,和y的值的方法

return

0;

}

c语言软件市场价,[转载]KMV模型中求解资产市场价值和资产价值波动性(C语言)...相关推荐

  1. [转载]Black-Scholes 模型中 d1,d2 是怎么得到的?如何理解 Black-Scholes 模型?

    https://www.optbbs.com/thread-253244-1-1.html 转载于:https://www.cnblogs.com/workingdiary/p/10413777.ht ...

  2. 下列不是C语言字符型常,以下选项中,()是不正确的C语言字符型常量。

    以下选项中,()是不正确的C语言字符型常量. 下语在多图层操作中,如果想要某一图层不被遮挡应该将它放在图层列表中什么位置? 当胶体粒子的直径( )入射光的波长时,选项型常可出现丁达尔效应. 有关超显微 ...

  3. C语言运行超过运行限制,程序中的一些限制(基于Linux系统C语言)

    今天突然想起来几个问题,在程序运行起来时,存在一些限制: 1,数组的长度(成员的个数)存在限制!(数组定义的空间大小) 2,一个进程里打开的文件数. 3,一个文件的名字的长度. 4,一个进程里创建线程 ...

  4. 编程入门python语言是多大孩子学的-如何看待将Python作为少儿编程的基础语言?...

    少儿编程入门我只推荐Scratch!不好意思,Python先靠后! 今天的回答主要针对Scratch编程语言,看完我的回答你就知道为什么我会强推Scratch! 本回答较长,建议大家先点赞&收 ...

  5. cfd计算linux windows,[转载]实现fluent软件在windows单机系统中多核计算

    fluent版本:6.3.26 windows系统:xp,酷睿i3,4核处理器 目标:实现fluent软件在windows单机系统中多核计算 方法1 (1)准备: 在fluent工作目录下,准备计算所 ...

  6. R语言广义线性模型函数GLM、glm函数构建泊松回归模型、模型中存在过离散(Overdispersion)、则将连接函数从possion函数替换为quasipoisson函数重新构建泊松回归模型

    R语言广义线性模型函数GLM.glm函数构建泊松回归模型(Poisson regression).模型中存在过离散(Overdispersion).则将连接函数从possion函数替换为quasipo ...

  7. R语言使用car包的outlierTest函数通过假设检验的方法检测回归模型中的异常值(outlier)、输出异常值对应的统计量、p值以及Bonferonnii校正p值

    R语言使用car包的outlierTest函数通过假设检验的方法检测回归模型中的异常值(outlier).输出异常值对应的统计量.p值以及Bonferonnii校正p值 目录

  8. R语言使用lm构建线性回归模型、并将目标变量对数化(log10)实战:可视化模型预测输出与实际值对比图、可视化模型的残差、模型预测中系统误差的一个例子 、自定义函数计算R方指标和均方根误差RMSE

    R语言使用lm构建线性回归模型.并将目标变量对数化(log10)实战:可视化模型预测输出与实际值对比图.可视化模型的残差.模型预测中系统误差的一个例子 .自定义函数计算R方指标和均方根误差RMSE 目 ...

  9. R语言Eta squared计算实战:Eta squared表示可以用模型中给定的变量解释的方差的比例、拟合方差分析模型(two-way ANOVA)、计算Eta Squared

    R语言Eta squared计算实战:Eta squared表示可以用模型中给定的变量解释的方差的比例.拟合方差分析模型(two-way ANOVA).计算Eta Squared 目录

最新文章

  1. 强强联合!Papers with Code 携手 arXiv,上传论文、提交代码一步到位
  2. 代码质量与规范,那些年你欠下的技术债
  3. linux io测试陈旭,陈旭方案论证及器件选择.doc
  4. Nginx + php
  5. java请求接口示例_Java 8:功能接口示例
  6. 前端学习(3318):异步处理thunk
  7. Composer - PHP 世界里用于管理项目依赖的工具
  8. mysql-libs 5.6.23_利用rpm包手把手教你安装MySQL5.6.23
  9. oracle var/tmp,[20141128]目录/var/tmp/oracle.txt
  10. cas导入Eclipse中
  11. Atitit mybatis使用简明教程 目录 1.1. Mybatis.xml 配置文件 1 1.2. Datamp.xml mapper文件主要作用是分模块放sql语句 2 1.3. 查询
  12. 信息检索方法和步骤——怎样展开信息检索?
  13. 麻烦不断的国外科技公司排行榜:苹果惨上榜
  14. Rasa 文档 中英文翻译版本 3 - Tutorial: Building Assistants
  15. 微信小程序 云开发之数据库-查找记录
  16. Apollo GPS调试笔记
  17. 论文阅读(13) 水母游泳过程中的神经机械波共振(2021)
  18. 《Unity开发实战》——1.3节设置首选项
  19. 使用oracle数据库审计,Oracle数据库审计功能详解
  20. 如果你不会使用Markdown,读这个

热门文章

  1. 低成本高精度导航定位技术 | 自动驾驶「AI工程论」
  2. Python报错——IndentationError: unexpected indent
  3. 小程序学习——打开已有的项目
  4. windows10 设置始终以管理员身份运行cmd窗口
  5. Canal实时监控案例
  6. 零基础学习HTML5
  7. Android自定义日历控件,自带农历节假日,已经开源,即取即用~
  8. 2021QS 榜单发布:计算机专业排名 MIT 斯坦福霸榜,清华北大进入前 20
  9. centos wget nvm 失败
  10. 阿里技术面全A,终面却被产品经理拉下马,我不服