EoniaYieldCurve

classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|

EoniaYieldCurve

jeffrey

Hi all,

I'm trying to build the Eonia  Yield curve, I've used two sets of data :
-1st from https://gist.github.com/pcaspers/9366298 (output without  errors).
- the 2nd set of data from the attached picture (error: 1st iteration: failed at 8th alive instrument, maturity June 6th, 2014.....). With this set, I'm not getting the way to include EONECBFEB13, EONECBMAR13, EONECBAPR13, EONECBMAY13, EONECBJUN13, EONECBJUL13. I've used  Period forwardTenor(3, Months);    // 3 month forward, what would be the good forward tenor here?
 Is there a way to plot the result ? I'm using QuantLib on Ubuntu.

Below is the code, and any help, suggestion, comments are  welcome.

Thanks in advance.


#include <ql/quantlib.hpp>
#include <iostream>
 
#include <boost/assign/std/vector.hpp>

#include <boost/make_shared.hpp>

#include <iomanip>

using namespace QuantLib;
 
using namespace boost::assign;
 
int main(int, char **) {
 
    try {


 
    std::cout << "EONIA curve test ... " << std::endl;
     
    // set evalulation date
     
    Date evalDate = Date(4, February, 2014); // for the 1st set of data

    //Date evalDate = Date(11, December, 2012);  // for the 2nd set of data
    Date settlDate = TARGET().advance(evalDate, 2 * Days);
    Settings::instance().evaluationDate() = evalDate;

    DayCounter dayCounterOIS = Actual360();

    double tolerance = 1.0e-15;
 
    // set up the interest rate curve
   
    // 1st set of data
 
    Real eoniaquotes[] = {
    0.0013, 0.00156, 0.00163, 0.0016, 0.00163, 0.00147, 0.00139, 0.00131,
    0.00125, 0.0012, 0.00117, 0.00114, 0.00112, 0.0011, 0.00111, 0.0011,
    0.00111, 0.00117, 0.00127, 0.00143, 0.00264, 0.0045, 0.00656, 0.00866,
    0.01065, 0.01247, 0.01411, 0.01558, 0.01687, 0.01799, 0.02051, 0.02238,
    0.02302, 0.02322 , 0.02322, 0.02322
    };
 
    //2nd set of data   
/*
    Real eoniaquotes[] ={
    0.040, 0.070, 0.069, 0.078, 0.074, 0.061, 0.047, 0.033, 0.024, 0.018,
    0.013, 0.009, 0.005, 0.003, 0.001, 0.000, 0.002, 0.008, 0.021, 0.036,
    0.127, 0.274, 0.456, 0.647, 0.827, 0.996, 1.147, 1.280, 1.404, 1.516,
    1.764,1.939, 2.003, 2.038, 0.046, 0.016};
    //, -0.007, -0.013, -0.014,-0.016};*/

    boost::shared_ptr<RateHelper> rhon = boost::make_shared<DepositRateHelper>(
    eoniaquotes[0], 1 * Days, 0, TARGET(), Following, false, Actual360());

    boost::shared_ptr<OvernightIndex> eoniaBt = boost::make_shared<Eonia>();
 
    boost::shared_ptr<RateHelper> rhe1w = boost::make_shared<OISRateHelper>(
        2, 1 * Weeks,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[1])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe2w = boost::make_shared<OISRateHelper>(
        2, 2 * Weeks,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[2])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe3w = boost::make_shared<OISRateHelper>(
        2, 3 * Weeks,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[3])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe1m = boost::make_shared<OISRateHelper>(
        2, 1 * Months,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[4])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe2m = boost::make_shared<OISRateHelper>(
        2, 2 * Months,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[5])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe3m = boost::make_shared<OISRateHelper>(
        2, 3 * Months,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[6])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe4m = boost::make_shared<OISRateHelper>(
        2, 4 * Months,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[7])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe5m = boost::make_shared<OISRateHelper>(
        2, 5 * Months,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[8])),
        eoniaBt);
     boost::shared_ptr<RateHelper> rhe6m = boost::make_shared<OISRateHelper>(
        2, 6 * Months,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[9])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe7m = boost::make_shared<OISRateHelper>(
        2, 7 * Months,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[10])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe8m = boost::make_shared<OISRateHelper>(
        2, 8 * Months,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[11])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe9m = boost::make_shared<OISRateHelper>(
        2, 9 * Months,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[12])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe10m = boost::make_shared<OISRateHelper>(
        2, 10 * Months,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[13])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe11m = boost::make_shared<OISRateHelper>(
        2, 11 * Months,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[14])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe1y = boost::make_shared<OISRateHelper>(
        2, 1 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[15])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe15m = boost::make_shared<OISRateHelper>(
        2, 15 * Months,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[16])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe18m = boost::make_shared<OISRateHelper>(
        2, 18 * Months,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[17])),
        eoniaBt);

    boost::shared_ptr<RateHelper> rhe21m = boost::make_shared<OISRateHelper>(
        2, 21 * Months,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[18])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe2y = boost::make_shared<OISRateHelper>(
        2, 2 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[19])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe3y = boost::make_shared<OISRateHelper>(
        2, 3 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[20])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe4y = boost::make_shared<OISRateHelper>(
        2, 4 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[21])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe5y = boost::make_shared<OISRateHelper>(
        2, 5 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[22])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe6y = boost::make_shared<OISRateHelper>(
        2, 6 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[23])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe7y = boost::make_shared<OISRateHelper>(
        2, 7 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[24])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe8y = boost::make_shared<OISRateHelper>(
        2, 8 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[25])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe9y = boost::make_shared<OISRateHelper>(
        2, 9 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[26])),
        eoniaBt);

    boost::shared_ptr<RateHelper> rhe10y = boost::make_shared<OISRateHelper>(
        2, 10 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[27])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe11y = boost::make_shared<OISRateHelper>(
        2, 11 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[28])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe12y = boost::make_shared<OISRateHelper>(
        2, 12 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[29])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe15y = boost::make_shared<OISRateHelper>(
        2, 15 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[30])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe20y = boost::make_shared<OISRateHelper>(
        2, 20 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[31])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe25y = boost::make_shared<OISRateHelper>(
        2, 25 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[32])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe30y = boost::make_shared<OISRateHelper>(
        2, 30 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[33])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe40y = boost::make_shared<OISRateHelper>(
        2, 40 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[34])),
        eoniaBt);
    boost::shared_ptr<RateHelper> rhe50y = boost::make_shared<OISRateHelper>(
        2, 50 * Years,
        Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[35])),
        eoniaBt);

        std::vector<boost::shared_ptr<RateHelper> > eoniaratehelpers;
        eoniaratehelpers += rhon, rhe1w, rhe2w, rhe3w, rhe1m, rhe2m, rhe3m, rhe4m,
        rhe5m, rhe6m, rhe7m, rhe8m, rhe9m, rhe10m, rhe11m, rhe1y, rhe15m,
        rhe18m, rhe21m, rhe2y, rhe3y, rhe4y, rhe5y, rhe6y, rhe7y, rhe8y, rhe9y,
        rhe10y, rhe11y, rhe12y, rhe15y, rhe20y, rhe30y, rhe40y, rhe50y;

//        Handle<YieldTermStructure> ytsEonia(
//        boost::make_shared<PiecewiseYieldCurve<Discount, LogLinear> >curve(
//        0, TARGET(), eoniaratehelpers, Actual365Fixed(), tolerance));
     
        //ytsEonia->enableExtrapolation();


            PiecewiseYieldCurve<Discount, LogLinear> curve(0, TARGET(), eoniaratehelpers, Actual365Fixed(), tolerance);

               curve.recalculate();
            std::vector<Rate> spotRates, discountFactors, forwardRates;
        Period forwardTenor(3, Months);                 // 3 month forward

       
        // Construct spot curve, forward curve and discount curve

        for(Size i=0;i<eoniaratehelpers.size();i++)

        {

            Rate rate;
            Date d = eoniaratehelpers[i]->latestDate();
                // spot rate

                rate = curve.zeroRate(d, Actual365Fixed(), Continuous, Annual, true);

                spotRates.push_back(rate);

                // forward rate

                rate = curve.forwardRate(d, TARGET().advance(d, forwardTenor),dayCounterOIS, Simple, Annual, true);

                forwardRates.push_back(rate);

                // discount rate

                rate = curve.discount(d, true);

                discountFactors.push_back(rate);

        }

        /////////////////////// Print out four sets of rates  //////////////////////////////////

        std::cout       << std::setw(20) << std::left << "Spot Rate"<< std::setw(20)

         << std::left << "Forward Rate" << std::setw(20) << std::left << "Discount Rate"<< std::endl;


 
        for (int i = 0; i < spotRates.size(); i++) {

                std::cout.precision(5);

                std::cout       << std::setw(20) << std::left << spotRates[i]*100

                                        << std::setw(20) << std::left << forwardRates[i]*100

                                        << std::setw(20) << std::left << discountFactors[i]*100

                                        << std::endl;

        }

            return 0;

    } catch (std::exception& e) {
        std::cerr << e.what() << std::endl;
        return 1;
    } catch (...) {
        std::cerr << "unknown error" << std::endl;
        return 1;
    }
}

------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
&#149; 3 signs your SCM is hindering your productivity
&#149; Requirements for releasing software faster
&#149; Expert tips and advice for migrating your SCM now
http://p.sf.net/sfu/perforce
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users

OISdata.png (384K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: EoniaYieldCurve

Luigi Ballabio
Hello Jeffrey,
    your code is almost ok. A couple of things:

- you have to insert rates as decimals, not percentages; that is, you
should write 2% as 0.02, not 2.0. With this correction, the curve
bootstraps also with the second set of data;

- to insert forwards, you can use DatedOISRateHelper, that takes start
and end date explicitly. For instance, you can write EONECBFEB13 as:

    boost::shared_ptr<RateHelper> rhefeb13 =
        boost::make_shared<DatedOISRateHelper>(
            Date(16, January, 2013), Date(13, February, 2013),
            Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[34])),
            eoniaBt);

- finally, if you insert the forwards, you have to remove the swaps
with the same maturity, or the curve will complain. For instance, if
you use EONECBFEB13, remove the 2-months spot.

I'm attaching a copy of your code with the corrections above. It runs
and bootstraps the curve.

I don't have a program to suggest for plotting. Worst case, you can
just import the data into a spreadsheet and plot from there.

Hope this helps,
    Luigi



On Fri, May 2, 2014 at 7:45 PM, Mbongo Nkounga Jeffrey Ted Johnattan
<[hidden email]> wrote:

>
> Hi all,
>
> I'm trying to build the Eonia  Yield curve, I've used two sets of data :
> -1st from https://gist.github.com/pcaspers/9366298 (output without  errors).
> - the 2nd set of data from the attached picture (error: 1st iteration:
> failed at 8th alive instrument, maturity June 6th, 2014.....). With this
> set, I'm not getting the way to include EONECBFEB13, EONECBMAR13,
> EONECBAPR13, EONECBMAY13, EONECBJUN13, EONECBJUL13. I've used  Period
> forwardTenor(3, Months);    // 3 month forward, what would be the good
> forward tenor here?
>  Is there a way to plot the result ? I'm using QuantLib on Ubuntu.
>
> Below is the code, and any help, suggestion, comments are  welcome.
>
> Thanks in advance.
>
>
> #include <ql/quantlib.hpp>
> #include <iostream>
>
> #include <boost/assign/std/vector.hpp>
>
> #include <boost/make_shared.hpp>
>
> #include <iomanip>
>
> using namespace QuantLib;
>
> using namespace boost::assign;
>
> int main(int, char **) {
>
>     try {
>
>
>
>     std::cout << "EONIA curve test ... " << std::endl;
>
>     // set evalulation date
>
>     Date evalDate = Date(4, February, 2014); // for the 1st set of data
>
>     //Date evalDate = Date(11, December, 2012);  // for the 2nd set of data
>     Date settlDate = TARGET().advance(evalDate, 2 * Days);
>     Settings::instance().evaluationDate() = evalDate;
>
>     DayCounter dayCounterOIS = Actual360();
>
>     double tolerance = 1.0e-15;
>
>     // set up the interest rate curve
>
>     // 1st set of data
>
>     Real eoniaquotes[] = {
>     0.0013, 0.00156, 0.00163, 0.0016, 0.00163, 0.00147, 0.00139, 0.00131,
>     0.00125, 0.0012, 0.00117, 0.00114, 0.00112, 0.0011, 0.00111, 0.0011,
>     0.00111, 0.00117, 0.00127, 0.00143, 0.00264, 0.0045, 0.00656, 0.00866,
>     0.01065, 0.01247, 0.01411, 0.01558, 0.01687, 0.01799, 0.02051, 0.02238,
>     0.02302, 0.02322 , 0.02322, 0.02322
>     };
>
>     //2nd set of data
> /*
>     Real eoniaquotes[] ={
>     0.040, 0.070, 0.069, 0.078, 0.074, 0.061, 0.047, 0.033, 0.024, 0.018,
>     0.013, 0.009, 0.005, 0.003, 0.001, 0.000, 0.002, 0.008, 0.021, 0.036,
>     0.127, 0.274, 0.456, 0.647, 0.827, 0.996, 1.147, 1.280, 1.404, 1.516,
>     1.764,1.939, 2.003, 2.038, 0.046, 0.016};
>     //, -0.007, -0.013, -0.014,-0.016};*/
>
>     boost::shared_ptr<RateHelper> rhon =
> boost::make_shared<DepositRateHelper>(
>     eoniaquotes[0], 1 * Days, 0, TARGET(), Following, false, Actual360());
>
>     boost::shared_ptr<OvernightIndex> eoniaBt = boost::make_shared<Eonia>();
>
>     boost::shared_ptr<RateHelper> rhe1w = boost::make_shared<OISRateHelper>(
>         2, 1 * Weeks,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[1])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe2w = boost::make_shared<OISRateHelper>(
>         2, 2 * Weeks,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[2])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe3w = boost::make_shared<OISRateHelper>(
>         2, 3 * Weeks,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[3])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe1m = boost::make_shared<OISRateHelper>(
>         2, 1 * Months,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[4])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe2m = boost::make_shared<OISRateHelper>(
>         2, 2 * Months,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[5])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe3m = boost::make_shared<OISRateHelper>(
>         2, 3 * Months,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[6])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe4m = boost::make_shared<OISRateHelper>(
>         2, 4 * Months,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[7])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe5m = boost::make_shared<OISRateHelper>(
>         2, 5 * Months,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[8])),
>         eoniaBt);
>      boost::shared_ptr<RateHelper> rhe6m =
> boost::make_shared<OISRateHelper>(
>         2, 6 * Months,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[9])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe7m = boost::make_shared<OISRateHelper>(
>         2, 7 * Months,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[10])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe8m = boost::make_shared<OISRateHelper>(
>         2, 8 * Months,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[11])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe9m = boost::make_shared<OISRateHelper>(
>         2, 9 * Months,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[12])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe10m =
> boost::make_shared<OISRateHelper>(
>         2, 10 * Months,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[13])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe11m =
> boost::make_shared<OISRateHelper>(
>         2, 11 * Months,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[14])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe1y = boost::make_shared<OISRateHelper>(
>         2, 1 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[15])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe15m =
> boost::make_shared<OISRateHelper>(
>         2, 15 * Months,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[16])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe18m =
> boost::make_shared<OISRateHelper>(
>         2, 18 * Months,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[17])),
>         eoniaBt);
>
>     boost::shared_ptr<RateHelper> rhe21m =
> boost::make_shared<OISRateHelper>(
>         2, 21 * Months,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[18])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe2y = boost::make_shared<OISRateHelper>(
>         2, 2 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[19])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe3y = boost::make_shared<OISRateHelper>(
>         2, 3 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[20])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe4y = boost::make_shared<OISRateHelper>(
>         2, 4 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[21])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe5y = boost::make_shared<OISRateHelper>(
>         2, 5 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[22])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe6y = boost::make_shared<OISRateHelper>(
>         2, 6 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[23])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe7y = boost::make_shared<OISRateHelper>(
>         2, 7 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[24])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe8y = boost::make_shared<OISRateHelper>(
>         2, 8 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[25])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe9y = boost::make_shared<OISRateHelper>(
>         2, 9 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[26])),
>         eoniaBt);
>
>     boost::shared_ptr<RateHelper> rhe10y =
> boost::make_shared<OISRateHelper>(
>         2, 10 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[27])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe11y =
> boost::make_shared<OISRateHelper>(
>         2, 11 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[28])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe12y =
> boost::make_shared<OISRateHelper>(
>         2, 12 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[29])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe15y =
> boost::make_shared<OISRateHelper>(
>         2, 15 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[30])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe20y =
> boost::make_shared<OISRateHelper>(
>         2, 20 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[31])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe25y =
> boost::make_shared<OISRateHelper>(
>         2, 25 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[32])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe30y =
> boost::make_shared<OISRateHelper>(
>         2, 30 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[33])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe40y =
> boost::make_shared<OISRateHelper>(
>         2, 40 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[34])),
>         eoniaBt);
>     boost::shared_ptr<RateHelper> rhe50y =
> boost::make_shared<OISRateHelper>(
>         2, 50 * Years,
>         Handle<Quote>(boost::make_shared<SimpleQuote>(eoniaquotes[35])),
>         eoniaBt);
>
>         std::vector<boost::shared_ptr<RateHelper> > eoniaratehelpers;
>         eoniaratehelpers += rhon, rhe1w, rhe2w, rhe3w, rhe1m, rhe2m, rhe3m,
> rhe4m,
>         rhe5m, rhe6m, rhe7m, rhe8m, rhe9m, rhe10m, rhe11m, rhe1y, rhe15m,
>         rhe18m, rhe21m, rhe2y, rhe3y, rhe4y, rhe5y, rhe6y, rhe7y, rhe8y,
> rhe9y,
>         rhe10y, rhe11y, rhe12y, rhe15y, rhe20y, rhe30y, rhe40y, rhe50y;
>
> //        Handle<YieldTermStructure> ytsEonia(
> //        boost::make_shared<PiecewiseYieldCurve<Discount, LogLinear>
>>curve(
> //        0, TARGET(), eoniaratehelpers, Actual365Fixed(), tolerance));
>
>         //ytsEonia->enableExtrapolation();
>
>
>             PiecewiseYieldCurve<Discount, LogLinear> curve(0, TARGET(),
> eoniaratehelpers, Actual365Fixed(), tolerance);
>
>                curve.recalculate();
>             std::vector<Rate> spotRates, discountFactors, forwardRates;
>         Period forwardTenor(3, Months);                 // 3 month forward
>
>
>         // Construct spot curve, forward curve and discount curve
>
>         for(Size i=0;i<eoniaratehelpers.size();i++)
>
>         {
>
>             Rate rate;
>             Date d = eoniaratehelpers[i]->latestDate();
>                 // spot rate
>
>                 rate = curve.zeroRate(d, Actual365Fixed(), Continuous,
> Annual, true);
>
>                 spotRates.push_back(rate);
>
>                 // forward rate
>
>                 rate = curve.forwardRate(d, TARGET().advance(d,
> forwardTenor),dayCounterOIS, Simple, Annual, true);
>
>                 forwardRates.push_back(rate);
>
>                 // discount rate
>
>                 rate = curve.discount(d, true);
>
>                 discountFactors.push_back(rate);
>
>         }
>
>         /////////////////////// Print out four sets of rates
> //////////////////////////////////
>
>         std::cout       << std::setw(20) << std::left << "Spot Rate"<<
> std::setw(20)
>
>          << std::left << "Forward Rate" << std::setw(20) << std::left <<
> "Discount Rate"<< std::endl;
>
>
>
>         for (int i = 0; i < spotRates.size(); i++) {
>
>                 std::cout.precision(5);
>
>                 std::cout       << std::setw(20) << std::left <<
> spotRates[i]*100
>
>                                         << std::setw(20) << std::left <<
> forwardRates[i]*100
>
>                                         << std::setw(20) << std::left <<
> discountFactors[i]*100
>
>                                         << std::endl;
>
>         }
>
>             return 0;
>
>     } catch (std::exception& e) {
>         std::cerr << e.what() << std::endl;
>         return 1;
>     } catch (...) {
>         std::cerr << "unknown error" << std::endl;
>         return 1;
>     }
> }
>
> ------------------------------------------------------------------------------
> Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
> &#149; 3 signs your SCM is hindering your productivity
> &#149; Requirements for releasing software faster
> &#149; Expert tips and advice for migrating your SCM now
> http://p.sf.net/sfu/perforce
> _______________________________________________
> QuantLib-users mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/quantlib-users
>


--
<https://implementingquantlib.blogspot.com>
<https://twitter.com/lballabio>

------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
&#149; 3 signs your SCM is hindering your productivity
&#149; Requirements for releasing software faster
&#149; Expert tips and advice for migrating your SCM now
http://p.sf.net/sfu/perforce
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users

eonia.cpp (15K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: EoniaYieldCurve

jeffrey
Dear Luigi,
thank you so much, I really appreciate your help, especially  the way inserting  forwards.
However, I am getting errors.
I'm using  QuantLib in Linux, and I'm doing the following:

jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++  eonia.cpp  -o eonia -lQuantLib
jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ ./eonia 

Output:
EONIA curve test ...
1st iteration: failed at 8th alive instrument, maturity April 10th, 2013, reference date December 11th, 2012: root not bracketed: f[2.22045e-16,0.99988] -> [-5.789650e+16,-7.000000e-05]

By curiosity, I've tried to run the first set of data:
jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++  eonia.cpp  -o eonia -lQuantLib
jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ ./eonia 

Output
EONIA curve test ...
negative time (-0.975342) given

Finally, rhe4m, rhe5m, rhe6m, rhe7m (respectively) do not have exactly the same maturities with rheapr13, rhemay13, rhejun13, rhejul13 (respectively), should not I include all of them (in eoniaratehelpers)?

Thanks

Jeffrey

------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
&#149; 3 signs your SCM is hindering your productivity
&#149; Requirements for releasing software faster
&#149; Expert tips and advice for migrating your SCM now
http://p.sf.net/sfu/perforce
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: EoniaYieldCurve

Luigi Ballabio
That's weird. What happens on my machine is:

$ g++  eonia.cpp  -o eonia -lQuantLib
$ ./eonia
EONIA curve test ...
Spot Rate           Forward Rate        Discount
0.040556            0.047224            1
0.067592            0.040634            0.99998
0.068183            0.0348              0.99997
0.077054            0.026789            0.99995
0.073892            0.01722             0.99993
0.061117            -0.002045           0.99989
0.047453            -0.011587           0.99988
0.034725            -0.014308           0.99989
0.025662            -0.014933           0.9999
0.018039            -0.019017           0.99991
0.013492            -0.018741           0.99992
0.0095054           -0.020129           0.99994
0.0054367           -0.015054           0.99996
0.0033851           -0.0064285          0.99997
0.0013388           0.0031728           0.99999
0.00030389          0.010111            1
0.002263            0.037677            0.99997
0.0082849           0.096664            0.99988
0.021399            0.14168             0.99962
0.036552            0.31028             0.99927
0.12868             0.7177              0.99614
0.27796             1.1932              0.98892
0.46366             1.6234              0.97705
0.65989             1.9442              0.96113
0.84632             2.2298              0.94241
1.023               2.4372              0.92129
1.1824              2.5743              0.89893
1.3242              2.7674              0.87585
1.4579              2.8908              0.8517
1.5799              2.9234              0.82712
1.8543              2.5917              0.75699
2.0456              2.3064              0.66398
2.1409              2.3064              0.52575

Did you change anything in the file I sent? What version of QuantLib
are you using?

Luigi




On Thu, May 8, 2014 at 10:47 AM, Mbongo Nkounga Jeffrey Ted Johnattan
<[hidden email]> wrote:

> Dear Luigi,
> thank you so much, I really appreciate your help, especially  the way
> inserting  forwards.
> However, I am getting errors.
> I'm using  QuantLib in Linux, and I'm doing the following:
>
> jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++
> eonia.cpp  -o eonia -lQuantLib
> jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$
> ./eonia
>
> Output:
> EONIA curve test ...
> 1st iteration: failed at 8th alive instrument, maturity April 10th, 2013,
> reference date December 11th, 2012: root not bracketed:
> f[2.22045e-16,0.99988] -> [-5.789650e+16,-7.000000e-05]
>
> By curiosity, I've tried to run the first set of data:
> jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++
> eonia.cpp  -o eonia -lQuantLib
> jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$
> ./eonia
>
> Output
> EONIA curve test ...
> negative time (-0.975342) given
>
> Finally, rhe4m, rhe5m, rhe6m, rhe7m (respectively) do not have exactly the
> same maturities with rheapr13, rhemay13, rhejun13, rhejul13 (respectively),
> should not I include all of them (in eoniaratehelpers)?
>
> Thanks
>
> Jeffrey



--
<https://implementingquantlib.blogspot.com>
<https://twitter.com/lballabio>

------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
&#149; 3 signs your SCM is hindering your productivity
&#149; Requirements for releasing software faster
&#149; Expert tips and advice for migrating your SCM now
http://p.sf.net/sfu/perforce
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: EoniaYieldCurve

jeffrey

Dear Luigi,

I did not change anything, I don't know which version I have, I downloaded QuantLib-1.3 and QuantLib-1.4.
Which version do I need? how to update or install it?

Finally, rhe4m, rhe5m, rhe6m, rhe7m (respectively) do not have exactly the same maturities with rheapr13, rhemay13, rhejun13, rhejul13 (respectively), should not I include all of them (in eoniaratehelpers)?

Thanks
Le Jeudi 8 mai 2014 12h17, Luigi Ballabio <[hidden email]> a écrit :
That's weird. What happens on my machine is:

$ g++  eonia.cpp  -o eonia -lQuantLib
$ ./eonia
EONIA curve test ...
Spot Rate          Forward Rate        Discount
0.040556            0.047224            1
0.067592            0.040634            0.99998
0.068183            0.0348              0.99997
0.077054            0.026789            0.99995
0.073892            0.01722            0.99993
0.061117            -0.002045          0.99989
0.047453            -0.011587          0.99988
0.034725            -0.014308          0.99989
0.025662            -0.014933          0.9999
0.018039            -0.019017          0.99991
0.013492            -0.018741          0.99992
0.0095054          -0.020129          0.99994
0.0054367          -0.015054          0.99996
0.0033851          -0.0064285          0.99997
0.0013388          0.0031728          0.99999
0.00030389          0.010111            1
0.002263            0.037677            0.99997
0.0082849          0.096664            0.99988
0.021399            0.14168            0.99962
0.036552            0.31028            0.99927
0.12868            0.7177              0.99614
0.27796            1.1932              0.98892
0.46366            1.6234              0.97705
0.65989            1.9442              0.96113
0.84632            2.2298              0.94241
1.023              2.4372              0.92129
1.1824              2.5743              0.89893
1.3242              2.7674              0.87585
1.4579              2.8908              0.8517
1.5799              2.9234              0.82712
1.8543              2.5917              0.75699
2.0456              2.3064              0.66398
2.1409              2.3064              0.52575

Did you change anything in the file I sent? What version of QuantLib
are you using?

Luigi




On Thu, May 8, 2014 at 10:47 AM, Mbongo Nkounga Jeffrey Ted Johnattan
<[hidden email]> wrote:

> Dear Luigi,
> thank you so much, I really appreciate your help, especially  the way
> inserting  forwards.
> However, I am getting errors.
> I'm using  QuantLib in Linux, and I'm doing the following:
>
> [hidden email]:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++
> eonia.cpp  -o eonia -lQuantLib
> [hidden email]:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$
> ./eonia
>
> Output:
> EONIA curve test ...
> 1st iteration: failed at 8th alive instrument, maturity April 10th, 2013,
> reference date December 11th, 2012: root not bracketed:
> f[2.22045e-16,0.99988] -> [-5.789650e+16,-7.000000e-05]
>
> By curiosity, I've tried to run the first set of data:
> [hidden email]:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++
> eonia.cpp  -o eonia -lQuantLib
> [hidden email]:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$
> ./eonia
>
> Output
> EONIA curve test ...
> negative time (-0.975342) given
>
> Finally, rhe4m, rhe5m, rhe6m, rhe7m (respectively) do not have exactly the
> same maturities with rheapr13, rhemay13, rhejun13, rhejul13 (respectively),
> should not I include all of them (in eoniaratehelpers)?
>
> Thanks
>
> Jeffrey



--
<https://implementingquantlib.blogspot.com>
<https://twitter.com/lballabio
>



------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
&#149; 3 signs your SCM is hindering your productivity
&#149; Requirements for releasing software faster
&#149; Expert tips and advice for migrating your SCM now
http://p.sf.net/sfu/perforce
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: EoniaYieldCurve

Luigi Ballabio
I'm using 1.4. If you're on Linux, download the release, uncompress
it, and then from inside the folder execute:

$ ./configure
$ make
$ sudo make install

As for the maturities: they're very close, so they might constrain the
bootstrap process too much. I'd leave the swaps out, but you can
experiment with and without them and see what happens.

Luigi



On Thu, May 8, 2014 at 12:48 PM, Mbongo Nkounga Jeffrey Ted Johnattan
<[hidden email]> wrote:

>
> Dear Luigi,
>
> I did not change anything, I don't know which version I have, I downloaded
> QuantLib-1.3 and QuantLib-1.4.
> Which version do I need? how to update or install it?
>
> Finally, rhe4m, rhe5m, rhe6m, rhe7m (respectively) do not have exactly the
> same maturities with rheapr13, rhemay13, rhejun13, rhejul13 (respectively),
> should not I include all of them (in eoniaratehelpers)?
>
> Thanks
> Le Jeudi 8 mai 2014 12h17, Luigi Ballabio <[hidden email]> a écrit
> :
> That's weird. What happens on my machine is:
>
> $ g++  eonia.cpp  -o eonia -lQuantLib
> $ ./eonia
> EONIA curve test ...
> Spot Rate          Forward Rate        Discount
> 0.040556            0.047224            1
> 0.067592            0.040634            0.99998
> 0.068183            0.0348              0.99997
> 0.077054            0.026789            0.99995
> 0.073892            0.01722            0.99993
> 0.061117            -0.002045          0.99989
> 0.047453            -0.011587          0.99988
> 0.034725            -0.014308          0.99989
> 0.025662            -0.014933          0.9999
> 0.018039            -0.019017          0.99991
> 0.013492            -0.018741          0.99992
> 0.0095054          -0.020129          0.99994
> 0.0054367          -0.015054          0.99996
> 0.0033851          -0.0064285          0.99997
> 0.0013388          0.0031728          0.99999
> 0.00030389          0.010111            1
> 0.002263            0.037677            0.99997
> 0.0082849          0.096664            0.99988
> 0.021399            0.14168            0.99962
> 0.036552            0.31028            0.99927
> 0.12868            0.7177              0.99614
> 0.27796            1.1932              0.98892
> 0.46366            1.6234              0.97705
> 0.65989            1.9442              0.96113
> 0.84632            2.2298              0.94241
> 1.023              2.4372              0.92129
> 1.1824              2.5743              0.89893
> 1.3242              2.7674              0.87585
> 1.4579              2.8908              0.8517
> 1.5799              2.9234              0.82712
> 1.8543              2.5917              0.75699
> 2.0456              2.3064              0.66398
> 2.1409              2.3064              0.52575
>
> Did you change anything in the file I sent? What version of QuantLib
> are you using?
>
> Luigi
>
>
>
>
> On Thu, May 8, 2014 at 10:47 AM, Mbongo Nkounga Jeffrey Ted Johnattan
> <[hidden email]> wrote:
>> Dear Luigi,
>> thank you so much, I really appreciate your help, especially  the way
>> inserting  forwards.
>> However, I am getting errors.
>> I'm using  QuantLib in Linux, and I'm doing the following:
>>
>> jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++
>> eonia.cpp  -o eonia -lQuantLib
>> jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$
>> ./eonia
>>
>> Output:
>> EONIA curve test ...
>> 1st iteration: failed at 8th alive instrument, maturity April 10th, 2013,
>> reference date December 11th, 2012: root not bracketed:
>> f[2.22045e-16,0.99988] -> [-5.789650e+16,-7.000000e-05]
>>
>> By curiosity, I've tried to run the first set of data:
>> jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++
>> eonia.cpp  -o eonia -lQuantLib
>> jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$
>> ./eonia
>>
>> Output
>> EONIA curve test ...
>> negative time (-0.975342) given
>>
>> Finally, rhe4m, rhe5m, rhe6m, rhe7m (respectively) do not have exactly the
>> same maturities with rheapr13, rhemay13, rhejun13, rhejul13
>> (respectively),
>> should not I include all of them (in eoniaratehelpers)?
>>
>> Thanks
>>
>> Jeffrey
>
>
>
>
> --
> <https://implementingquantlib.blogspot.com>
> <https://twitter.com/lballabio
>>
>
>



--
<https://implementingquantlib.blogspot.com>
<https://twitter.com/lballabio>

------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
&#149; 3 signs your SCM is hindering your productivity
&#149; Requirements for releasing software faster
&#149; Expert tips and advice for migrating your SCM now
http://p.sf.net/sfu/perforce
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: EoniaYieldCurve

jeffrey

Dear Luigi, .

Oooh I've tried to run the code with my own computer and It's working.
But it was not working with my office computer.

By the way, I'd like also to update QuantLib-1.4, but I'm getting the output below (both computers), after uncompressing, I put QuantLib-1.4 on my Desktop.

From my terminal:

jeffrey@jeffrey:~$ cd Desktop/QuantLib-1.4
jeffrey@jeffrey:~/Desktop/QuantLib-1.4$ ./configure
bash: ./configure: Permission denied

Thanks

Le Jeudi 8 mai 2014 13h01, Luigi Ballabio <[hidden email]> a écrit :
I'm using 1.4. If you're on Linux, download the release, uncompress
it, and then from inside the folder execute:

$ ./configure
$ make
$ sudo make install

As for the maturities: they're very close, so they might constrain the
bootstrap process too much. I'd leave the swaps out, but you can
experiment with and without them and see what happens.

Luigi



On Thu, May 8, 2014 at 12:48 PM, Mbongo Nkounga Jeffrey Ted Johnattan
<[hidden email]> wrote:

>
> Dear Luigi,
>
> I did not change anything, I don't know which version I have, I downloaded
> QuantLib-1.3 and QuantLib-1.4.
> Which version do I need? how to update or install it?
>
> Finally, rhe4m, rhe5m, rhe6m, rhe7m (respectively) do not have exactly the
> same maturities with rheapr13, rhemay13, rhejun13, rhejul13 (respectively),
> should not I include all of them (in eoniaratehelpers)?
>
> Thanks
> Le Jeudi 8 mai 2014 12h17, Luigi Ballabio <[hidden email]> a écrit
> :
> That's weird. What happens on my machine is:
>
> $ g++  eonia.cpp  -o eonia -lQuantLib
> $ ./eonia
> EONIA curve test ...
> Spot Rate          Forward Rate        Discount
> 0.040556            0.047224            1
> 0.067592            0.040634            0.99998
> 0.068183            0.0348              0.99997
> 0.077054            0.026789            0.99995
> 0.073892            0.01722            0.99993
> 0.061117            -0.002045          0.99989
> 0.047453            -0.011587          0.99988
> 0.034725            -0.014308          0.99989
> 0.025662            -0.014933          0.9999
> 0.018039            -0.019017          0.99991
> 0.013492            -0.018741          0.99992
> 0.0095054          -0.020129          0.99994
> 0.0054367          -0.015054          0.99996
> 0.0033851          -0.0064285          0.99997
> 0.0013388          0.0031728          0.99999
> 0.00030389          0.010111            1
> 0.002263            0.037677            0.99997
> 0.0082849          0.096664            0.99988
> 0.021399            0.14168            0.99962
> 0.036552            0.31028            0.99927
> 0.12868            0.7177              0.99614
> 0.27796            1.1932              0.98892
> 0.46366            1.6234              0.97705
> 0.65989            1.9442              0.96113
> 0.84632            2.2298              0.94241
> 1.023              2.4372              0.92129
> 1.1824              2.5743              0.89893
> 1.3242              2.7674              0.87585
> 1.4579              2.8908              0.8517
> 1.5799              2.9234              0.82712
> 1.8543              2.5917              0.75699
> 2.0456              2.3064              0.66398
> 2.1409              2.3064              0.52575
>
> Did you change anything in the file I sent? What version of QuantLib
> are you using?
>
> Luigi
>
>
>
>
> On Thu, May 8, 2014 at 10:47 AM, Mbongo Nkounga Jeffrey Ted Johnattan
> <[hidden email]> wrote:
>> Dear Luigi,
>> thank you so much, I really appreciate your help, especially  the way
>> inserting  forwards.
>> However, I am getting errors.
>> I'm using  QuantLib in Linux, and I'm doing the following:
>>
>> [hidden email]:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++
>> eonia.cpp  -o eonia -lQuantLib
>> [hidden email]:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$
>> ./eonia
>>
>> Output:
>> EONIA curve test ...
>> 1st iteration: failed at 8th alive instrument, maturity April 10th, 2013,
>> reference date December 11th, 2012: root not bracketed:
>> f[2.22045e-16,0.99988] -> [-5.789650e+16,-7.000000e-05]
>>
>> By curiosity, I've tried to run the first set of data:
>> [hidden email]:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++
>> eonia.cpp  -o eonia -lQuantLib
>> [hidden email]:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$
>> ./eonia
>>
>> Output
>> EONIA curve test ...
>> negative time (-0.975342) given
>>
>> Finally, rhe4m, rhe5m, rhe6m, rhe7m (respectively) do not have exactly the
>> same maturities with rheapr13, rhemay13, rhejun13, rhejul13
>> (respectively),
>> should not I include all of them (in eoniaratehelpers)?
>>
>> Thanks
>>
>> Jeffrey
>
>
>
>
> --
> <https://implementingquantlib.blogspot.com>
> <https://twitter.com/lballabio

>>
>
>



--
<https://implementingquantlib.blogspot.com>
<https://twitter.com/lballabio>



------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
&#149; 3 signs your SCM is hindering your productivity
&#149; Requirements for releasing software faster
&#149; Expert tips and advice for migrating your SCM now
http://p.sf.net/sfu/perforce
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: EoniaYieldCurve

Luigi Ballabio
No idea about this one, sorry. Do you have any IT support at the office?

On Thu, May 8, 2014 at 2:12 PM, Mbongo Nkounga Jeffrey Ted Johnattan
<[hidden email]> wrote:

>
> Dear Luigi, .
>
> Oooh I've tried to run the code with my own computer and It's working.
> But it was not working with my office computer.
>
> By the way, I'd like also to update QuantLib-1.4, but I'm getting the output
> below (both computers), after uncompressing, I put QuantLib-1.4 on my
> Desktop.
>
> From my terminal:
>
> jeffrey@jeffrey:~$ cd Desktop/QuantLib-1.4
> jeffrey@jeffrey:~/Desktop/QuantLib-1.4$ ./configure
> bash: ./configure: Permission denied
>
> Thanks
>
> Le Jeudi 8 mai 2014 13h01, Luigi Ballabio <[hidden email]> a écrit
> :
> I'm using 1.4. If you're on Linux, download the release, uncompress
> it, and then from inside the folder execute:
>
> $ ./configure
> $ make
> $ sudo make install
>
> As for the maturities: they're very close, so they might constrain the
> bootstrap process too much. I'd leave the swaps out, but you can
> experiment with and without them and see what happens.
>
> Luigi
>
>
>
> On Thu, May 8, 2014 at 12:48 PM, Mbongo Nkounga Jeffrey Ted Johnattan
> <[hidden email]> wrote:
>>
>> Dear Luigi,
>>
>> I did not change anything, I don't know which version I have, I downloaded
>> QuantLib-1.3 and QuantLib-1.4.
>> Which version do I need? how to update or install it?
>>
>> Finally, rhe4m, rhe5m, rhe6m, rhe7m (respectively) do not have exactly the
>> same maturities with rheapr13, rhemay13, rhejun13, rhejul13
>> (respectively),
>> should not I include all of them (in eoniaratehelpers)?
>>
>> Thanks
>> Le Jeudi 8 mai 2014 12h17, Luigi Ballabio <[hidden email]> a
>> écrit
>> :
>> That's weird. What happens on my machine is:
>>
>> $ g++  eonia.cpp  -o eonia -lQuantLib
>> $ ./eonia
>> EONIA curve test ...
>> Spot Rate          Forward Rate        Discount
>> 0.040556            0.047224            1
>> 0.067592            0.040634            0.99998
>> 0.068183            0.0348              0.99997
>> 0.077054            0.026789            0.99995
>> 0.073892            0.01722            0.99993
>> 0.061117            -0.002045          0.99989
>> 0.047453            -0.011587          0.99988
>> 0.034725            -0.014308          0.99989
>> 0.025662            -0.014933          0.9999
>> 0.018039            -0.019017          0.99991
>> 0.013492            -0.018741          0.99992
>> 0.0095054          -0.020129          0.99994
>> 0.0054367          -0.015054          0.99996
>> 0.0033851          -0.0064285          0.99997
>> 0.0013388          0.0031728          0.99999
>> 0.00030389          0.010111            1
>> 0.002263            0.037677            0.99997
>> 0.0082849          0.096664            0.99988
>> 0.021399            0.14168            0.99962
>> 0.036552            0.31028            0.99927
>> 0.12868            0.7177              0.99614
>> 0.27796            1.1932              0.98892
>> 0.46366            1.6234              0.97705
>> 0.65989            1.9442              0.96113
>> 0.84632            2.2298              0.94241
>> 1.023              2.4372              0.92129
>> 1.1824              2.5743              0.89893
>> 1.3242              2.7674              0.87585
>> 1.4579              2.8908              0.8517
>> 1.5799              2.9234              0.82712
>> 1.8543              2.5917              0.75699
>> 2.0456              2.3064              0.66398
>> 2.1409              2.3064              0.52575
>>
>> Did you change anything in the file I sent? What version of QuantLib
>> are you using?
>>
>> Luigi
>>
>>
>>
>>
>> On Thu, May 8, 2014 at 10:47 AM, Mbongo Nkounga Jeffrey Ted Johnattan
>> <[hidden email]> wrote:
>>> Dear Luigi,
>>> thank you so much, I really appreciate your help, especially  the way
>>> inserting  forwards.
>>> However, I am getting errors.
>>> I'm using  QuantLib in Linux, and I'm doing the following:
>>>
>>> jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++
>>> eonia.cpp  -o eonia -lQuantLib
>>> jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$
>>> ./eonia
>>>
>>> Output:
>>> EONIA curve test ...
>>> 1st iteration: failed at 8th alive instrument, maturity April 10th, 2013,
>>> reference date December 11th, 2012: root not bracketed:
>>> f[2.22045e-16,0.99988] -> [-5.789650e+16,-7.000000e-05]
>>>
>>> By curiosity, I've tried to run the first set of data:
>>> jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++
>>> eonia.cpp  -o eonia -lQuantLib
>>> jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$
>>> ./eonia
>>>
>>> Output
>>> EONIA curve test ...
>>> negative time (-0.975342) given
>>>
>>> Finally, rhe4m, rhe5m, rhe6m, rhe7m (respectively) do not have exactly
>>> the
>>> same maturities with rheapr13, rhemay13, rhejun13, rhejul13
>>> (respectively),
>>> should not I include all of them (in eoniaratehelpers)?
>>>
>>> Thanks
>>>
>>> Jeffrey
>>
>>
>>
>>
>> --
>> <https://implementingquantlib.blogspot.com>
>> <https://twitter.com/lballabio
>
>>>
>>
>>
>
>
>
> --
> <https://implementingquantlib.blogspot.com>
> <https://twitter.com/lballabio>
>
>



--
<https://implementingquantlib.blogspot.com>
<https://twitter.com/lballabio>

------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
&#149; 3 signs your SCM is hindering your productivity
&#149; Requirements for releasing software faster
&#149; Expert tips and advice for migrating your SCM now
http://p.sf.net/sfu/perforce
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: EoniaYieldCurve

jeffrey
In reply to this post by jeffrey

Dear Luigi thank you very much for the support.

I got help from my IT, by doing the following

1-Office
./configure --prefix=/home/jeffrey/
make
make install

2-Laptop
chmod 755 configure
 $ ./configure
 $ make
 $ sudo make install

We are not sure if the update was successful, attached is the picture of my terminal after the last step (make install) , it seems to mention 2 errors. I've try to run the code, the issue is not fixed.

Thanks
Le Jeudi 8 mai 2014 14h26, Mbongo Nkounga Jeffrey Ted Johnattan <[hidden email]> a écrit :

Dear Luigi, .

Oooh I've tried to run the code with my own computer and It's working.
But it was not working with my office computer.

By the way, I'd like also to update QuantLib-1.4, but I'm getting the output below (both computers), after uncompressing, I put QuantLib-1.4 on my Desktop.

From my terminal:

jeffrey@jeffrey:~$ cd Desktop/QuantLib-1.4
jeffrey@jeffrey:~/Desktop/QuantLib-1.4$ ./configure
bash: ./configure: Permission denied

Thanks

Le Jeudi 8 mai 2014 13h01, Luigi Ballabio <[hidden email]> a écrit :
I'm using 1.4. If you're on Linux, download the release, uncompress
it, and then from inside the folder execute:

$ ./configure
$ make
$ sudo make install

As for the maturities: they're very close, so they might constrain the
bootstrap process too much. I'd leave the swaps out, but you can
experiment with and without them and see what happens.

Luigi



On Thu, May 8, 2014 at 12:48 PM, Mbongo Nkounga Jeffrey Ted Johnattan
<[hidden email]> wrote:

>
> Dear Luigi,
>
> I did not change anything, I don't know which version I have, I downloaded
> QuantLib-1.3 and QuantLib-1.4.
> Which version do I need? how to update or install it?
>
> Finally, rhe4m, rhe5m, rhe6m, rhe7m (respectively) do not have exactly the
> same maturities with rheapr13, rhemay13, rhejun13, rhejul13 (respectively),
> should not I include all of them (in eoniaratehelpers)?
>
> Thanks
> Le Jeudi 8 mai 2014 12h17, Luigi Ballabio <[hidden email]> a écrit
> :
> That's weird. What happens on my machine is:
>
> $ g++  eonia.cpp  -o eonia -lQuantLib
> $ ./eonia
> EONIA curve test ...
> Spot Rate          Forward Rate        Discount
> 0.040556            0.047224            1
> 0.067592            0.040634            0.99998
> 0.068183            0.0348              0.99997
> 0.077054            0.026789            0.99995
> 0.073892            0.01722            0.99993
> 0.061117            -0.002045          0.99989
> 0.047453            -0.011587          0.99988
> 0.034725            -0.014308          0.99989
> 0.025662            -0.014933          0.9999
> 0.018039            -0.019017          0.99991
> 0.013492            -0.018741          0.99992
> 0.0095054          -0.020129          0.99994
> 0.0054367          -0.015054          0.99996
> 0.0033851          -0.0064285          0.99997
> 0.0013388          0.0031728          0.99999
> 0.00030389          0.010111            1
> 0.002263            0.037677            0.99997
> 0.0082849          0.096664            0.99988
> 0.021399            0.14168            0.99962
> 0.036552            0.31028            0.99927
> 0.12868            0.7177              0.99614
> 0.27796            1.1932              0.98892
> 0.46366            1.6234              0.97705
> 0.65989            1.9442              0.96113
> 0.84632            2.2298              0.94241
> 1.023              2.4372              0.92129
> 1.1824              2.5743              0.89893
> 1.3242              2.7674              0.87585
> 1.4579              2.8908              0.8517
> 1.5799              2.9234              0.82712
> 1.8543              2.5917              0.75699
> 2.0456              2.3064              0.66398
> 2.1409              2.3064              0.52575
>
> Did you change anything in the file I sent? What version of QuantLib
> are you using?
>
> Luigi
>
>
>
>
> On Thu, May 8, 2014 at 10:47 AM, Mbongo Nkounga Jeffrey Ted Johnattan
> <[hidden email]> wrote:
>> Dear Luigi,
>> thank you so much, I really appreciate your help, especially  the way
>> inserting  forwards.
>> However, I am getting errors.
>> I'm using  QuantLib in Linux, and I'm doing the following:
>>
>> [hidden email]:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++
>> eonia.cpp  -o eonia -lQuantLib
>> [hidden email]:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$
>> ./eonia
>>
>> Output:
>> EONIA curve test ...
>> 1st iteration: failed at 8th alive instrument, maturity April 10th, 2013,
>> reference date December 11th, 2012: root not bracketed:
>> f[2.22045e-16,0.99988] -> [-5.789650e+16,-7.000000e-05]
>>
>> By curiosity, I've tried to run the first set of data:
>> [hidden email]:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++
>> eonia.cpp  -o eonia -lQuantLib
>> [hidden email]:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$
>> ./eonia
>>
>> Output
>> EONIA curve test ...
>> negative time (-0.975342) given
>>
>> Finally, rhe4m, rhe5m, rhe6m, rhe7m (respectively) do not have exactly the
>> same maturities with rheapr13, rhemay13, rhejun13, rhejul13
>> (respectively),
>> should not I include all of them (in eoniaratehelpers)?
>>
>> Thanks
>>
>> Jeffrey
>
>
>
>
> --
> <https://implementingquantlib.blogspot.com>
> <https://twitter.com/lballabio

>>
>
>



--
<https://implementingquantlib.blogspot.com>
<https://twitter.com/lballabio>



------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
• 3 signs your SCM is hindering your productivity
• Requirements for releasing software faster
• Expert tips and advice for migrating your SCM now
http://p.sf.net/sfu/perforce

_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users



------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
&#149; 3 signs your SCM is hindering your productivity
&#149; Requirements for releasing software faster
&#149; Expert tips and advice for migrating your SCM now
http://p.sf.net/sfu/perforce
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users

Screenshot from 2014-05-08 17:52:49.png (417K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: EoniaYieldCurve

Luigi Ballabio
"Disk quota exceeded" means either that your disk is full, or that you
exceeded the disk space given to you by IT.

Luigi

On Thu, May 8, 2014 at 9:14 PM, Mbongo Nkounga Jeffrey Ted Johnattan
<[hidden email]> wrote:

>
> Dear Luigi thank you very much for the support.
>
> I got help from my IT, by doing the following
>
> 1-Office
> ./configure --prefix=/home/jeffrey/
> make
> make install
>
> 2-Laptop
> chmod 755 configure
>  $ ./configure
>  $ make
>  $ sudo make install
>
> We are not sure if the update was successful, attached is the picture of my
> terminal after the last step (make install) , it seems to mention 2 errors.
> I've try to run the code, the issue is not fixed.
>
> Thanks
> Le Jeudi 8 mai 2014 14h26, Mbongo Nkounga Jeffrey Ted Johnattan
> <[hidden email]> a écrit :
>
> Dear Luigi, .
>
> Oooh I've tried to run the code with my own computer and It's working.
> But it was not working with my office computer.
>
> By the way, I'd like also to update QuantLib-1.4, but I'm getting the output
> below (both computers), after uncompressing, I put QuantLib-1.4 on my
> Desktop.
>
> From my terminal:
>
> jeffrey@jeffrey:~$ cd Desktop/QuantLib-1.4
> jeffrey@jeffrey:~/Desktop/QuantLib-1.4$ ./configure
> bash: ./configure: Permission denied
>
> Thanks
>
> Le Jeudi 8 mai 2014 13h01, Luigi Ballabio <[hidden email]> a écrit
> :
> I'm using 1.4. If you're on Linux, download the release, uncompress
> it, and then from inside the folder execute:
>
> $ ./configure
> $ make
> $ sudo make install
>
> As for the maturities: they're very close, so they might constrain the
> bootstrap process too much. I'd leave the swaps out, but you can
> experiment with and without them and see what happens.
>
> Luigi
>
>
>
> On Thu, May 8, 2014 at 12:48 PM, Mbongo Nkounga Jeffrey Ted Johnattan
> <[hidden email]> wrote:
>>
>> Dear Luigi,
>>
>> I did not change anything, I don't know which version I have, I downloaded
>> QuantLib-1.3 and QuantLib-1.4.
>> Which version do I need? how to update or install it?
>>
>> Finally, rhe4m, rhe5m, rhe6m, rhe7m (respectively) do not have exactly the
>> same maturities with rheapr13, rhemay13, rhejun13, rhejul13
>> (respectively),
>> should not I include all of them (in eoniaratehelpers)?
>>
>> Thanks
>> Le Jeudi 8 mai 2014 12h17, Luigi Ballabio <[hidden email]> a
>> écrit
>> :
>> That's weird. What happens on my machine is:
>>
>> $ g++  eonia.cpp  -o eonia -lQuantLib
>> $ ./eonia
>> EONIA curve test ...
>> Spot Rate          Forward Rate        Discount
>> 0.040556            0.047224            1
>> 0.067592            0.040634            0.99998
>> 0.068183            0.0348              0.99997
>> 0.077054            0.026789            0.99995
>> 0.073892            0.01722            0.99993
>> 0.061117            -0.002045          0.99989
>> 0.047453            -0.011587          0.99988
>> 0.034725            -0.014308          0.99989
>> 0.025662            -0.014933          0.9999
>> 0.018039            -0.019017          0.99991
>> 0.013492            -0.018741          0.99992
>> 0.0095054          -0.020129          0.99994
>> 0.0054367          -0.015054          0.99996
>> 0.0033851          -0.0064285          0.99997
>> 0.0013388          0.0031728          0.99999
>> 0.00030389          0.010111            1
>> 0.002263            0.037677            0.99997
>> 0.0082849          0.096664            0.99988
>> 0.021399            0.14168            0.99962
>> 0.036552            0.31028            0.99927
>> 0.12868            0.7177              0.99614
>> 0.27796            1.1932              0.98892
>> 0.46366            1.6234              0.97705
>> 0.65989            1.9442              0.96113
>> 0.84632            2.2298              0.94241
>> 1.023              2.4372              0.92129
>> 1.1824              2.5743              0.89893
>> 1.3242              2.7674              0.87585
>> 1.4579              2.8908              0.8517
>> 1.5799              2.9234              0.82712
>> 1.8543              2.5917              0.75699
>> 2.0456              2.3064              0.66398
>> 2.1409              2.3064              0.52575
>>
>> Did you change anything in the file I sent? What version of QuantLib
>> are you using?
>>
>> Luigi
>>
>>
>>
>>
>> On Thu, May 8, 2014 at 10:47 AM, Mbongo Nkounga Jeffrey Ted Johnattan
>> <[hidden email]> wrote:
>>> Dear Luigi,
>>> thank you so much, I really appreciate your help, especially  the way
>>> inserting  forwards.
>>> However, I am getting errors.
>>> I'm using  QuantLib in Linux, and I'm doing the following:
>>>
>>> jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++
>>> eonia.cpp  -o eonia -lQuantLib
>>> jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$
>>> ./eonia
>>>
>>> Output:
>>> EONIA curve test ...
>>> 1st iteration: failed at 8th alive instrument, maturity April 10th, 2013,
>>> reference date December 11th, 2012: root not bracketed:
>>> f[2.22045e-16,0.99988] -> [-5.789650e+16,-7.000000e-05]
>>>
>>> By curiosity, I've tried to run the first set of data:
>>> jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++
>>> eonia.cpp  -o eonia -lQuantLib
>>> jeffrey@angola:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$
>>> ./eonia
>>>
>>> Output
>>> EONIA curve test ...
>>> negative time (-0.975342) given
>>>
>>> Finally, rhe4m, rhe5m, rhe6m, rhe7m (respectively) do not have exactly
>>> the
>>> same maturities with rheapr13, rhemay13, rhejun13, rhejul13
>>> (respectively),
>>> should not I include all of them (in eoniaratehelpers)?
>>>
>>> Thanks
>>>
>>> Jeffrey
>>
>>
>>
>>
>> --
>> <https://implementingquantlib.blogspot.com>
>> <https://twitter.com/lballabio
>
>>>
>>
>>
>
>
>
> --
> <https://implementingquantlib.blogspot.com>
> <https://twitter.com/lballabio>
>
>
>
> ------------------------------------------------------------------------------
> Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
> • 3 signs your SCM is hindering your productivity
> • Requirements for releasing software faster
> • Expert tips and advice for migrating your SCM now
> http://p.sf.net/sfu/perforce
>
> _______________________________________________
> QuantLib-users mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/quantlib-users
>
>



--
<https://implementingquantlib.blogspot.com>
<https://twitter.com/lballabio>

------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
&#149; 3 signs your SCM is hindering your productivity
&#149; Requirements for releasing software faster
&#149; Expert tips and advice for migrating your SCM now
http://p.sf.net/sfu/perforce
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: EoniaYieldCurve

jeffrey

Dear Luigi,

"Disk quota exceeded" has been fixed and QuantLib-1.4 has been updated successfully without any errors, yet the output is unchanged. All the codes are running well expect this one.  Anyway, I can use my Laptop to avoid this issue.
Thanks for everything.
Le Vendredi 9 mai 2014 11h50, Luigi Ballabio <[hidden email]> a écrit :
"Disk quota exceeded" means either that your disk is full, or that you
exceeded the disk space given to you by IT.

Luigi

On Thu, May 8, 2014 at 9:14 PM, Mbongo Nkounga Jeffrey Ted Johnattan
<[hidden email]> wrote:

>
> Dear Luigi thank you very much for the support.
>
> I got help from my IT, by doing the following
>
> 1-Office
> ./configure --prefix=/home/jeffrey/
> make
> make install
>
> 2-Laptop
> chmod 755 configure
>  $ ./configure
>  $ make
>  $ sudo make install
>
> We are not sure if the update was successful, attached is the picture of my
> terminal after the last step (make install) , it seems to mention 2 errors.
> I've try to run the code, the issue is not fixed.
>
> Thanks
> Le Jeudi 8 mai 2014 14h26, Mbongo Nkounga Jeffrey Ted Johnattan
> <[hidden email]> a écrit :
>
> Dear Luigi, .
>
> Oooh I've tried to run the code with my own computer and It's working.
> But it was not working with my office computer.
>
> By the way, I'd like also to update QuantLib-1.4, but I'm getting the output
> below (both computers), after uncompressing, I put QuantLib-1.4 on my
> Desktop.
>
> From my terminal:
>
> [hidden email]:~$ cd Desktop/QuantLib-1.4
> [hidden email]:~/Desktop/QuantLib-1.4$ ./configure
> bash: ./configure: Permission denied
>
> Thanks
>
> Le Jeudi 8 mai 2014 13h01, Luigi Ballabio <[hidden email]> a écrit
> :
> I'm using 1.4. If you're on Linux, download the release, uncompress
> it, and then from inside the folder execute:
>
> $ ./configure
> $ make
> $ sudo make install
>
> As for the maturities: they're very close, so they might constrain the
> bootstrap process too much. I'd leave the swaps out, but you can
> experiment with and without them and see what happens.
>
> Luigi
>
>
>
> On Thu, May 8, 2014 at 12:48 PM, Mbongo Nkounga Jeffrey Ted Johnattan
> <[hidden email]> wrote:
>>
>> Dear Luigi,
>>
>> I did not change anything, I don't know which version I have, I downloaded
>> QuantLib-1.3 and QuantLib-1.4.
>> Which version do I need? how to update or install it?
>>
>> Finally, rhe4m, rhe5m, rhe6m, rhe7m (respectively) do not have exactly the
>> same maturities with rheapr13, rhemay13, rhejun13, rhejul13
>> (respectively),
>> should not I include all of them (in eoniaratehelpers)?
>>
>> Thanks
>> Le Jeudi 8 mai 2014 12h17, Luigi Ballabio <[hidden email]> a
>> écrit
>> :
>> That's weird. What happens on my machine is:
>>
>> $ g++  eonia.cpp  -o eonia -lQuantLib
>> $ ./eonia
>> EONIA curve test ...
>> Spot Rate          Forward Rate        Discount
>> 0.040556            0.047224            1
>> 0.067592            0.040634            0.99998
>> 0.068183            0.0348              0.99997
>> 0.077054            0.026789            0.99995
>> 0.073892            0.01722            0.99993
>> 0.061117            -0.002045          0.99989
>> 0.047453            -0.011587          0.99988
>> 0.034725            -0.014308          0.99989
>> 0.025662            -0.014933          0.9999
>> 0.018039            -0.019017          0.99991
>> 0.013492            -0.018741          0.99992
>> 0.0095054          -0.020129          0.99994
>> 0.0054367          -0.015054          0.99996
>> 0.0033851          -0.0064285          0.99997
>> 0.0013388          0.0031728          0.99999
>> 0.00030389          0.010111            1
>> 0.002263            0.037677            0.99997
>> 0.0082849          0.096664            0.99988
>> 0.021399            0.14168            0.99962
>> 0.036552            0.31028            0.99927
>> 0.12868            0.7177              0.99614
>> 0.27796            1.1932              0.98892
>> 0.46366            1.6234              0.97705
>> 0.65989            1.9442              0.96113
>> 0.84632            2.2298              0.94241
>> 1.023              2.4372              0.92129
>> 1.1824              2.5743              0.89893
>> 1.3242              2.7674              0.87585
>> 1.4579              2.8908              0.8517
>> 1.5799              2.9234              0.82712
>> 1.8543              2.5917              0.75699
>> 2.0456              2.3064              0.66398
>> 2.1409              2.3064              0.52575
>>
>> Did you change anything in the file I sent? What version of QuantLib
>> are you using?
>>
>> Luigi
>>
>>
>>
>>
>> On Thu, May 8, 2014 at 10:47 AM, Mbongo Nkounga Jeffrey Ted Johnattan
>> <[hidden email]> wrote:
>>> Dear Luigi,
>>> thank you so much, I really appreciate your help, especially  the way
>>> inserting  forwards.
>>> However, I am getting errors.
>>> I'm using  QuantLib in Linux, and I'm doing the following:
>>>
>>> [hidden email]:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++
>>> eonia.cpp  -o eonia -lQuantLib
>>> [hidden email]:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$
>>> ./eonia
>>>
>>> Output:
>>> EONIA curve test ...
>>> 1st iteration: failed at 8th alive instrument, maturity April 10th, 2013,
>>> reference date December 11th, 2012: root not bracketed:
>>> f[2.22045e-16,0.99988] -> [-5.789650e+16,-7.000000e-05]
>>>
>>> By curiosity, I've tried to run the first set of data:
>>> [hidden email]:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$ g++
>>> eonia.cpp  -o eonia -lQuantLib
>>> [hidden email]:/var/autofs/misc/home/jeffrey/Desktop/prog/curvescode$
>>> ./eonia
>>>
>>> Output
>>> EONIA curve test ...
>>> negative time (-0.975342) given
>>>
>>> Finally, rhe4m, rhe5m, rhe6m, rhe7m (respectively) do not have exactly
>>> the
>>> same maturities with rheapr13, rhemay13, rhejun13, rhejul13
>>> (respectively),
>>> should not I include all of them (in eoniaratehelpers)?
>>>
>>> Thanks
>>>
>>> Jeffrey
>>
>>
>>
>>
>> --
>> <https://implementingquantlib.blogspot.com>
>> <https://twitter.com/lballabio
>
>>>
>>
>>
>
>
>
> --
> <https://implementingquantlib.blogspot.com>
> <https://twitter.com/lballabio>
>
>
>
> ------------------------------------------------------------------------------
> Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
> • 3 signs your SCM is hindering your productivity
> • Requirements for releasing software faster
> • Expert tips and advice for migrating your SCM now
> http://p.sf.net/sfu/perforce
>
> _______________________________________________
> QuantLib-users mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/quantlib-users

>
>



--
<https://implementingquantlib.blogspot.com>
<https://twitter.com/lballabio>



------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform available
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users