当前位置: 首页 > 计算模拟 >用matlab对微分方程参数拟合

用matlab对微分方程参数拟合

作者 Rosalind01
来源: 小木虫 900 18 举报帖子
+关注

论文遇到难题,走投无路,希望大神帮忙看一下
需要使用matlab进行参数拟合的,模型为dr=k*(θ-r)dt+σ*r^0.5dW
拟合的参数是k,θ,σ
数据x=[0,0.08,0.17,0.25,0.5,0.75,1]
y=[1.805,2.1493,2.1641,2.2051,2.3147,2.3466,2.3873]
用最小二乘法怎么做?或者其他能拟合出来的程序 返回小木虫查看更多

今日热帖
  • 精华评论
  • Rosalind01

    引用回帖:
    8楼: Originally posted by hollya at 2019-02-22 11:19:18
    W呢?
    ...

    W表示布朗运动

  • dingd

    dw有具体表达式或数值吗?没有的话如何能计算?

  • Rosalind01

    引用回帖:
    10楼: Originally posted by dingd at 2019-02-22 11:40:51
    dw有具体表达式或数值吗?没有的话如何能计算?

    没有哇

  • xygq163

    不会-_-||

  • Rosalind01

    引用回帖:
    10楼: Originally posted by dingd at 2019-02-22 11:40:51
    dw有具体表达式或数值吗?没有的话如何能计算?

    这里面的程序能解释一下吗,就是求参数的,看不懂

  • dingd

    自己的专业公式都还没弄明白,其他人如何能帮你?

  • Rosalind01

    引用回帖:
    14楼: Originally posted by dingd at 2019-02-22 13:38:01
    自己的专业公式都还没弄明白,其他人如何能帮你?

    公式没有问题,就是下面这程序怎么用呢,我输入MATLAB就显示未定义变量
    % CIR initial parameters estimation
    x = Model.Data(1:end-1); % Time series of interest rates observations
    dx = diff(Model.Data);
    dx = dx./x.^0.5;
    regressors = [Model.TimeStep./x.^0.5, Model.TimeStep*x.^0.5];
    drift = regressors\dx; % OLS regressors coefficients estimates
    res = regressors*drift - dx;
    alpha = -drift(2);
    mu = -drift(1)/drift(2);
    sigma = sqrt(var(res, 1)/Model.TimeStep);
    InitialParams = [alpha mu sigma]; % Vector of initial parameters

  • dingd

    引用回帖:
    15楼: Originally posted by Rosalind01 at 2019-02-22 13:43:26
    公式没有问题,就是下面这程序怎么用呢,我输入MATLAB就显示未定义变量
    % CIR initial parameters estimation
    x = Model.Data(1:end-1); % Time series of interest rates observations
    dx = diff(Model.Data); ...

    dw是什么先说清楚

猜你喜欢
下载小木虫APP
与700万科研达人随时交流
  • 二维码
  • IOS
  • 安卓