コード例 #1
0
    public SmoothCurveAndSettingsGroup(FitPhases phases_, CountryBondSource source_, BondField timeToMaturity_, Focus focus_, BondField minusField_, BondField minusFieldFitted_, int recalcNumber_, bool fitOnEvent_ = true)
      : this(phases_, source_, timeToMaturity_, focus_, recalcNumber_, fitOnEvent_)
    {
      // explanation of logic of last 2 arguments
      // false => don't want to continually recalc on the recalc cycle, but only once
      // true => if the MinusOffset changes, we want to recalculate


      DateTime thirtyYearsTime = DateTime.Today.AddYears(30);

      MinusCMT = new CMTLine(source_.Market,focus_);


      MinusCalculator = new SmoothCurveCalculator(
        cml_: MinusCMT,
        cmlStartTenor_: 1,
        cmlEndTenor_: 34,
        list_: source_.Lines.Where(x => x.Maturity <= thirtyYearsTime).ToList(),
        timeToMaturityField_: timeToMaturity_,
        valueField_: minusField_,
        fittedValueField_: minusFieldFitted_,
        recalcNumber_: recalcNumber_,
        updateOnCalcEvent_: false,
        updateOnMinusOffsetChange_: true,
        settings_: Settings);
    }
コード例 #2
0
    public SmoothCurveAndSettingsGroup(FitPhases phases_, CountryBondSource source_, BondField timeToMaturity_, Focus focus_, int recalcNumber_, bool fitOnEvent_=true)
    {
      m_settings = new SmoothCurveSettings(phases_);

      LiveCMT = new CMTLine(source_.Market,focus_);

      DateTime thirtyYearsTime = DateTime.Today.AddYears(34);

      LiveCalculator = new SmoothCurveCalculator(
        cml_: LiveCMT,
        cmlStartTenor_: 1,
        cmlEndTenor_: 34,
        list_: source_.Lines.Where(x => x.Maturity <= thirtyYearsTime).ToList(),
        timeToMaturityField_: timeToMaturity_,
        valueField_: BondAnalysisLineHelper.GetFieldForFocusAndType(focus_,FieldType.Live),
        fittedValueField_: BondAnalysisLineHelper.GetFieldForFocusAndType(focus_,FieldType.FittedLive),
        recalcNumber_: recalcNumber_,
        updateOnCalcEvent_: fitOnEvent_,
        settings_: Settings);
    }
コード例 #3
0
 public SmoothCurveSettings(FitPhases initialPhase_)
 {
   m_phases = initialPhase_;
 }