public static string Calibration_FwdCurveCollection_MakeFromCalibrationProblem(string baseHandle, string fwdCurveConstructorHandle, bool useAd) { if (ExcelDnaUtil.IsInFunctionWizard()) { return("No calulation in wizard."); } CalibrationFunctions.FwdCurveCollection_MakeFromCalibrationProblem(baseHandle, fwdCurveConstructorHandle, useAd); return(baseHandle); }
public static string Calibration_DiscCurve_MakeFromCalibrationProblem(string baseHandle, string curveCalibProblemHandle, string calibSpecHandle, bool useAd) { if (ExcelDnaUtil.IsInFunctionWizard()) { return("No calulation in wizard."); } CalibrationFunctions.DiscCurve_MakeFromCalibrationProblem(baseHandle, curveCalibProblemHandle, calibSpecHandle, useAd); return(baseHandle); }
public static string Calibration_FwdCurveCalibrationProblem_Make(string baseHandle, string discCurveHandle, object[] curveCalibHandles, object[] fwdCurveTenors, string calibSpecHandle) { string[] problemNamesString = curveCalibHandles.Cast <string>().ToArray(); string[] tenorsString = fwdCurveTenors.Cast <string>().ToArray(); CurveTenor[] tenorsActual = new CurveTenor[tenorsString.Length]; for (int i = 0; i < tenorsString.Length; i++) { tenorsActual[i] = StrToEnum.CurveTenorConvert(tenorsString[i]); } CalibrationFunctions.FwdCurveCalibrationProblem_Make(baseHandle, discCurveHandle, problemNamesString, tenorsActual, calibSpecHandle); return(baseHandle); }
public static string Calibration_CalibrationSettings_Make(string baseHandle, double precision, double scaling, double diffStep, string interpolation, int maxIterations, double startingValues, int bfgs_m, bool useAd, bool inheritDiscSize, double stepSizeOfInheritance, object[] calibrationOrder = null) { InterpMethod interp = StrToEnum.InterpolationConvert(interpolation); if (calibrationOrder[0] is ExcelMissing) { calibrationOrder = null; CalibrationFunctions.CalibrationSpec_Make(baseHandle, precision, scaling, diffStep, interp, maxIterations, startingValues, bfgs_m, useAd, inheritDiscSize, stepSizeOfInheritance); } else { // Need to do this, since object[] cannot be cast to int[]... int[] intCalibrationOrder = new int[calibrationOrder.Length]; for (int i = 0; i < calibrationOrder.Length; i++) { intCalibrationOrder[i] = Convert.ToInt32(calibrationOrder[i]); } CalibrationFunctions.CalibrationSpec_Make(baseHandle, precision, scaling, diffStep, interp, maxIterations, startingValues, bfgs_m, useAd, inheritDiscSize, stepSizeOfInheritance, intCalibrationOrder); } return(baseHandle); }
public static string Calibration_CurveCalibrationProblem_Make(string baseHandle, string instrumentFactoryHandle, object[] quoteIdentifiers, object[] quoteValues) { CalibrationFunctions.CurveCalibrationProblem_Make(baseHandle, instrumentFactoryHandle, quoteIdentifiers.Cast <string>().ToArray(), quoteValues.Cast <double>().ToArray()); return(baseHandle); }