当前位置: 首页>>代码示例>>C++>>正文


C++ Option::getr方法代码示例

本文整理汇总了C++中Option::getr方法的典型用法代码示例。如果您正苦于以下问题:C++ Option::getr方法的具体用法?C++ Option::getr怎么用?C++ Option::getr使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Option的用法示例。


在下文中一共展示了Option::getr方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: PrixSE

// MonteCarlo avec arrêt par Standard Error:
double MC::PrixSE(int secondes, Option& Option)
{
    unsigned long k=0;
    double runningSum(0);
    double runningSumCarre(0);
    double VarianceEmpirique(100);
    double resultatSansEscompte(0);
    double resultat(0);
    double resultataucarre(0);
    while ((secondes<VarianceEmpirique) || (k<10) )
    {
        k+=1;
        double VAR=Option.getPayOff(Option)[1];
        runningSum+=VAR;
        runningSumCarre+=VAR*VAR;
        if (k==1) {
            runningSum+=Option.getPayOff(Option)[1];
            runningSumCarre+=Option.getPayOff(Option)[1]*Option.getPayOff(Option)[1];
            k=2;
        }

        resultatSansEscompte=(runningSum/k);
        resultataucarre=(runningSumCarre/k);
        VarianceEmpirique=sqrt((resultataucarre-resultatSansEscompte*resultatSansEscompte)/k);
    }
    resultat=resultatSansEscompte*exp(-Option.getExpiry()*Option.getr());
    return resultat;
}
开发者ID:BRINL,项目名称:PRICEV3,代码行数:29,代码来源:MC.cpp

示例2: PrixCV

double MC::PrixCV(double secondes, Option& Option)
{
    unsigned long k(1);
    double runningSum(0);
    double resultat(0);
    double resultatancien(100);
    // Date du debut
    while (fabs(resultat-resultatancien)>secondes)
    {
        resultatancien=(runningSum/k)*exp(-Option.getExpiry()*Option.getr());
        runningSum+=0.5*(Option.getPayOff(Option)[0]+Option.getPayOff(Option)[1]);
        resultat=(runningSum/k)*exp(-Option.getExpiry()*Option.getr());
        k+=1;
    }

    return resultat;
}
开发者ID:BRINL,项目名称:PRICEV3,代码行数:17,代码来源:MC.cpp

示例3: runningSum

//Methode de Monte Carlo avec Arrêt par nombre de chermins
QVector <double> MC::PrixA(unsigned long NumberOfPaths, Option& Option)
{
    QVector <double> PrixAV(NumberOfPaths);
    double runningSum(0);
    unsigned long i(0);
    while (i<NumberOfPaths-1)
    {
        i+=1;
        runningSum+=0.5*(Option.getPayOff(Option)[0]+Option.getPayOff(Option)[1]);
        PrixAV[i]=(runningSum/i)*exp(-Option.getExpiry()*Option.getr());
    }
    return PrixAV;
}
开发者ID:BRINL,项目名称:PRICEV3,代码行数:14,代码来源:MC.cpp

示例4: PrixT

//Methode de monte Carlo avec arrêt par le nombre de seconde(s) ecoulee(s)
double MC::PrixT(int secondes, Option& Option)
{
    time_t tbegin,tend;
    unsigned long k=0;
    double texec=0.;
    double runningSum(0);
    tbegin=time(NULL);              // Date du debut
    while (texec<secondes)
    {
        tend=time(NULL);                // Date de fin
        k+=1;
        runningSum+=0.5*(Option.getPayOff(Option)[0]+Option.getPayOff(Option)[1]);
        texec=difftime(tend,tbegin); // tend-tbegin (resultat en secondes)
    }
    double resultat=(runningSum/k)*exp(-Option.getExpiry()*Option.getr());
    return resultat;
}
开发者ID:BRINL,项目名称:PRICEV3,代码行数:18,代码来源:MC.cpp


注:本文中的Option::getr方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。