Helpers

Interest Rate

DepositRateHelper

ql.DepositRateHelper(quote, tenor, fixingDays, calendar, convention, endOfMonth, dayCounter)
quote = ql.QuoteHandle(ql.SimpleQuote(0.05))
tenor = ql.Period('6M')
fixingDays = 2
calendar = ql.TARGET()
convention = ql.ModifiedFollowing
endOfMonth = False
dayCounter = ql.Actual360()
ql.DepositRateHelper(quote, tenor, fixingDays, calendar, convention, endOfMonth, dayCounter)
ql.DepositRateHelper(rate, tenor, fixingDays, calendar, convention, endOfMonth, dayCounter)
ql.DepositRateHelper(0.05, ql.Period('6M'), 2, ql.TARGET(), ql.ModifiedFollowing, False, ql.Actual360())
ql.DepositRateHelper(quote, index)
ql.DepositRateHelper(ql.QuoteHandle(ql.SimpleQuote(0.05)), ql.Euribor6M())
ql.DepositRateHelper(rate, index)
ql.DepositRateHelper(0.05, ql.Euribor6M());

FraRateHelper

from months with quote

ql.FraRateHelper(quote, monthsToStart, monthsToEnd, fixingDays, calendar, convention, endOfMonth, dayCounter, pillar=ql.Pillar.LastRelevantDate, customPillarDate=ql.Date(), useIndexedCoupon=True)
quote = ql.QuoteHandle(ql.SimpleQuote(0.05))
monthsToStart = 1
monthsToEnd = 7
fixingDays = 2
calendar = ql.TARGET()
convention = ql.ModifiedFollowing
endOfMonth = False
dayCounter = ql.Actual360()
ql.FraRateHelper (quote, monthsToStart, monthsToEnd, fixingDays, calendar, convention, endOfMonth, dayCounter)
ql.FraRateHelper (quote, monthsToStart, monthsToEnd, fixingDays, calendar, convention, endOfMonth, dayCounter, ql.Pillar.LastRelevantDate)
ql.FraRateHelper (quote, monthsToStart, monthsToEnd, fixingDays, calendar, convention, endOfMonth, dayCounter, ql.Pillar.LastRelevantDate, ql.Date())
ql.FraRateHelper (quote, monthsToStart, monthsToEnd, fixingDays, calendar, convention, endOfMonth, dayCounter, ql.Pillar.LastRelevantDate, ql.Date(), True)

from months with rate

ql.FraRateHelper(rate, monthsToStart, monthsToEnd, fixingDays, calendar, convention, endOfMonth, dayCounter, pillar=ql.Pillar.LastRelevantDate, customPillarDate=ql.Date(), useIndexedCoupon=True)
rate = 0.05
monthsToStart = 1
monthsToEnd = 7
fixingDays = 2
calendar = ql.TARGET()
convention = ql.ModifiedFollowing
endOfMonth = False
dayCounter = ql.Actual360()
ql.FraRateHelper (rate, monthsToStart, monthsToEnd, fixingDays, calendar, convention, endOfMonth, dayCounter)
ql.FraRateHelper (rate, monthsToStart, monthsToEnd, fixingDays, calendar, convention, endOfMonth, dayCounter, ql.Pillar.LastRelevantDate)
ql.FraRateHelper (rate, monthsToStart, monthsToEnd, fixingDays, calendar, convention, endOfMonth, dayCounter, ql.Pillar.LastRelevantDate, ql.Date())
ql.FraRateHelper (rate, monthsToStart, monthsToEnd, fixingDays, calendar, convention, endOfMonth, dayCounter, ql.Pillar.LastRelevantDate, ql.Date(), True)

from quote, monthsToStart and index

ql.FraRateHelper(quote, monthsToStart, index, pillar=ql.Pillar.LastRelevantDate, customPillarDate=ql.Date(), useIndexedCoupon=True)
quote = ql.QuoteHandle(ql.SimpleQuote(0.05))
monthsToStart = 1
index = ql.Euribor6M()
ql.FraRateHelper(quote, monthsToStart, index)
ql.FraRateHelper(quote, monthsToStart, index, ql.Pillar.LastRelevantDate)
ql.FraRateHelper(quote, monthsToStart, index, ql.Pillar.LastRelevantDate, ql.Date())
ql.FraRateHelper(quote, monthsToStart, index, ql.Pillar.LastRelevantDate, ql.Date(), True)

from price, monthsToStart and index

ql.FraRateHelper(rate, monthsToStart, index, pillar=ql.Pillar.LastRelevantDate, customPillarDate=ql.Date(), useIndexedCoupon=True)
rate = 0.05
monthsToStart = 1
index = ql.Euribor6M()
h = ql.FraRateHelper(rate, monthsToStart, index)
ql.FraRateHelper(rate, monthsToStart, index, ql.Pillar.LastRelevantDate)
ql.FraRateHelper(rate, monthsToStart, index, ql.Pillar.LastRelevantDate, ql.Date())
ql.FraRateHelper(rate, monthsToStart, index, ql.Pillar.LastRelevantDate, ql.Date(), True)

from quote, immOffsets and index

ql.FraRateHelper(quote, immOffsetStart, immOffsetEnd, index, pillar=ql.Pillar.LastRelevantDate, customPillarDate=ql.Date(), useIndexedCoupon=True)
quote = ql.QuoteHandle(ql.SimpleQuote(0.05))
immOffsetStart = 1
immOffsetEnd = 2
index = ql.Euribor6M()
ql.FraRateHelper(quote, immOffsetStart, immOffsetEnd, index)
ql.FraRateHelper(quote, immOffsetStart, immOffsetEnd, index, ql.Pillar.LastRelevantDate)
ql.FraRateHelper(quote, immOffsetStart, immOffsetEnd, index, ql.Pillar.LastRelevantDate, ql.Date())
ql.FraRateHelper(quote, immOffsetStart, immOffsetEnd, index, ql.Pillar.LastRelevantDate, ql.Date(), True)

Futures

FuturesRateHelper

ql.FuturesRateHelper(price, iborStartDate, iborIndex, convexityAdjustment=0.0, type=ql.Futures.IMM)
price = 100
index = ql.Euribor3M()
iborStartDate = ql.Date(17,6,2020)
ql.FuturesRateHelper(price, iborStartDate, index)
ql.FuturesRateHelper(price, iborStartDate, index, 0.01)
ql.FuturesRateHelper(price, iborStartDate, index, 0.01, ql.Futures.IMM)
ql.FuturesRateHelper(price, ql.Date(8,5,2020), index, 0.01, ql.Futures.ASX)
ql.FuturesRateHelper(quote, iborStartDate, iborIndex, convexityAdjustment=ql.QuoteHandle(), type=ql.Futures.IMM)
quote = ql.QuoteHandle(ql.SimpleQuote(100))
index = ql.Euribor3M()
iborStartDate = ql.Date(17,6,2020)
convexityAdjustment = ql.QuoteHandle(ql.SimpleQuote(0.01))
ql.FuturesRateHelper(quote, iborStartDate, index)
ql.FuturesRateHelper(quote, iborStartDate, index, convexityAdjustment)
ql.FuturesRateHelper(quote, iborStartDate, index, convexityAdjustment, ql.Futures.IMM)
ql.FuturesRateHelper(quote, ql.Date(8,5,2020), index, convexityAdjustment, ql.Futures.ASX)
ql.FuturesRateHelper(price, iborStartDate, lengthInMonths, calendar, convention, endOfMonth, dayCounter, convexityAdjustment=0.0, type=ql.Futures.IMM)
price = 100
iborStartDate = ql.Date(17,6,2020)
lengthInMonths = 3
calendar = ql.TARGET()
convention = ql.Following
endOfMonth = False
dayCounter = ql.Actual360()
ql.FuturesRateHelper (price, iborStartDate, lengthInMonths, calendar, convention, endOfMonth, dayCounter)
ql.FuturesRateHelper (price, iborStartDate, lengthInMonths, calendar, convention, endOfMonth, dayCounter, 0.01)
ql.FuturesRateHelper (price, iborStartDate, lengthInMonths, calendar, convention, endOfMonth, dayCounter, 0.01, ql.Futures.IMM)
ql.FuturesRateHelper(price, iborStartDate, lengthInMonths, calendar, convention, endOfMonth, dayCounter, convexityAdjustment=0.0, type=ql.Futures.IMM)
quote = ql.QuoteHandle(ql.SimpleQuote(100))
iborStartDate = ql.Date(17,6,2020)
lengthInMonths = 3
calendar = ql.TARGET()
convention = ql.Following
endOfMonth = False
dayCounter = ql.Actual360()
convexityAdjustment = ql.QuoteHandle(ql.SimpleQuote(0.01))
ql.FuturesRateHelper (quote, iborStartDate, lengthInMonths, calendar, convention, endOfMonth, dayCounter)
ql.FuturesRateHelper (quote, iborStartDate, lengthInMonths, calendar, convention, endOfMonth, dayCounter, convexityAdjustment)
ql.FuturesRateHelper (quote, iborStartDate, lengthInMonths, calendar, convention, endOfMonth, dayCounter, convexityAdjustment, ql.Futures.IMM)
ql.FuturesRateHelper(price, iborStartDate, iborEndDate, dayCounter, convexityAdjustment=0.0, ql.Futures.IMM)
price = 100
iborStartDate = ql.Date(17,6,2020)
iborEndDate = ql.Date(17,9,2020)
dayCounter = ql.Actual360()
ql.FuturesRateHelper (price, iborStartDate, iborEndDate, dayCounter)
ql.FuturesRateHelper (price, iborStartDate, iborEndDate, dayCounter, 0.01)
ql.FuturesRateHelper (price, iborStartDate, iborEndDate, dayCounter, 0.01, ql.Futures.IMM)
ql.FuturesRateHelper(quote, iborStartDate, iborEndDate, dayCounter, convexityAdjustment=ql.QuoteHandle(), ql.Futures.IMM)
quote = ql.QuoteHandle(ql.SimpleQuote(100))
iborStartDate = ql.Date(17,6,2020)
iborEndDate = ql.Date(17,9,2020)
dayCounter = ql.Actual360()
convexityAdjustment = ql.QuoteHandle(ql.SimpleQuote(0.01))
ql.FuturesRateHelper (quote, iborStartDate, iborEndDate, dayCounter)
ql.FuturesRateHelper (quote, iborStartDate, iborEndDate, dayCounter, convexityAdjustment)
ql.FuturesRateHelper (quote, iborStartDate, iborEndDate, dayCounter, convexityAdjustment, ql.Futures.IMM)

OvernightIndexFutureRateHelper

ql.OvernightIndexFutureRateHelper(quote, valueDate, maturityDate, overnightIndex, convexityAdjustmentQuote=ql.QuoteHandle(), nettingType=ql.OvernightIndexFuture.Compounding)

Netting Types:

  • Averaging

  • Compounding

overnightIndex = ql.FedFunds()
priceQuote = ql.QuoteHandle(ql.SimpleQuote(99.92))
valueDate = ql.Date(3, 7, 2017)
maturityDate = ql.Date(30, 6, 2020 )
convexityAdjustment = ql.QuoteHandle()
netting = ql.OvernightIndexFuture.Averaging
future = ql.OvernightIndexFutureRateHelper(priceQuote, valueDate, maturityDate, overnightIndex)
future = ql.OvernightIndexFutureRateHelper(priceQuote, valueDate, maturityDate, overnightIndex, convexityAdjustment, netting)

SofrFutureRateHelper

ql.SofrFutureRateHelper(price, month, year, frequency, index)
ql.SofrFutureRateHelper(priceQuote, month, year, frequency, index)
price = 99.915
ql.SofrFutureRateHelper(price, 3, 2020, ql.Quarterly, ql.Sofr())

priceQuote = ql.QuoteHandle(ql.SimpleQuote(price))
ql.SofrFutureRateHelper(priceQuote, 3, 2020, ql.Quarterly, ql.Sofr())
ql.SofrFutureRateHelper(price, month, year, frequency, index, convexityAdjustment=0)
ql.SofrFutureRateHelper(priceQuote, month, year, frequency, index, convexityAdjustmentQuote=ql.QuoteHandle())
price = 99.915
convexityAdjustment = 0.004
ql.SofrFutureRateHelper(price, 3, 2020, ql.Quarterly, ql.Sofr(), convexityAdjustment)

priceQuote = ql.QuoteHandle(ql.SimpleQuote(price))
convexityAdjustmentQuote = ql.QuoteHandle(ql.SimpleQuote(convexityAdjustment))
ql.SofrFutureRateHelper(priceQuote, 3, 2020, ql.Quarterly, ql.Sofr(), convexityAdjustmentQuote)
ql.SofrFutureRateHelper(price, month, year, frequency, index, convexityAdjustment=0, nettingType=ql.OvernightIndexFuture.Compounding)
ql.SofrFutureRateHelper(priceQuote, month, year, frequency, index, convexityAdjustment=0, nettingType=ql.OvernightIndexFuture.Compounding)

Netting Types:

  • Averaging

  • Compounding

price = 99.915
convexityAdjustment = 0.004
ql.SofrFutureRateHelper(price, 3, 2020, ql.Quarterly, ql.Sofr(), 0.004, ql.OvernightIndexFuture.Averaging)

priceQuote = ql.QuoteHandle(ql.SimpleQuote(price))
convexityAdjustmentQuote = ql.QuoteHandle(ql.SimpleQuote(convexityAdjustment))

ql.SofrFutureRateHelper(priceQuote,3,2020,ql.Quarterly, ql.Sofr(), convexityAdjustmentQuote, ql.OvernightIndexFuture.Compounding)

IMM

(Not a helper)

ql.IMM.date(codeString, date=ql.Date())`
ql.IMM.date('M0')
ql.IMM.date('M0', ql.Date(20,6,2020))
ql.IMM.code(immDate)
immDate = ql.Date(16,12,2020)
ql.IMM.code(immDate)
ql.IMM.isIMMcode(codeString, mainCycle=True)
ql.IMM.isIMMcode('M0')
ql.IMM.isIMMcode('H0', True)
ql.IMM.isIMMdate(date, mainCycle=True)
dt = ql.Date(15,1,2020)
ql.IMM.isIMMdate(dt, True)
dates = ql.MakeSchedule(ql.Date(16,3,2020), ql.Date(16,12,2020), ql.Period('1M'))
list(map(ql.IMM.isIMMdate, dates))
ql.IMM.nextCode()
ql.IMM.nextCode(date)
ql.IMM.nextCode(date, mainCycle=True)
ql.IMM.nextCode(codeString)
ql.IMM.nextCode(codeString, mainCycle=True)
ql.IMM.nextCode(codeString, mainCycle=True, refDate)
ql.IMM.nextCode()
ql.IMM.nextCode(ql.Date(7,5,2020))
ql.IMM.nextCode(ql.Date(7,5,2020), False)
ql.IMM.nextCode('K0')
ql.IMM.nextCode('K0', False)
ql.IMM.nextCode('M9', False, ql.Date(16,8,2019))
ql.IMM.nextDate()
ql.IMM.nextDate(date)
ql.IMM.nextDate(date, mainCycle=True)
ql.IMM.nextDate(codeString)
ql.IMM.nextDate(codeString, mainCycle=True)
ql.IMM.nextDate(codeString, mainCycle=True, refDate)
ql.IMM.nextDate()
ql.IMM.nextDate(ql.Date(7,5,2020))
ql.IMM.nextDate(ql.Date(7,5,2020), False)
ql.IMM.nextDate('K0')
ql.IMM.nextDate('K0', False)
ql.IMM.nextDate('M9', False, ql.Date(16,8,2019))

SwapRateHelper

ql.SwapRateHelper(rate, swapIndex, spread=0, fwdStart=ql.Period(), discountingCurve=ql.YieldTermStructureHandle, pillar=ql.Pillar.LastRelevantDate, customPillarDate=ql.Date(), endOfMonth=Dalse)
rate = 0.05
swapIndex = ql.EuriborSwapIsdaFixA(ql.Period('1y'))
spread = ql.QuoteHandle(ql.SimpleQuote(0.0))
ql.SwapRateHelper(rate, ql.EuriborSwapIsdaFixA(ql.Period('1y')))
ql.SwapRateHelper(rate, ql.EuriborSwapIsdaFixA(ql.Period('1y')), spread)
ql.SwapRateHelper(rate, ql.EuriborSwapIsdaFixA(ql.Period('1y')), spread, ql.Period('1M'))
discountCurve = ql.YieldTermStructureHandle(ql.FlatForward(2, ql.TARGET(), 0.05, ql.Actual360()))
ql.SwapRateHelper(rate, ql.EuriborSwapIsdaFixA(ql.Period('1y')), spread, ql.Period(), discountCurve)
ql.SwapRateHelper(quote, tenor, calendar, fixedFrequency, fixedConvention, fixedDayCount, iborIndex, spread=ql.QuoteHandle(), fwdStart=ql.Period(), discountingCurve=ql.YieldTermStructureHandle(), settlementDays=Null< Natural >(), pillar=ql.Pillar.LastRelevantDate, customPillarDate=ql.Date(), endOfMonth=False)
quote = ql.QuoteHandle(ql.SimpleQuote(0.05))
swapIndex = ql.EuriborSwapIsdaFixA(ql.Period('1y'))
spread = ql.QuoteHandle(ql.SimpleQuote(0.0))
ql.SwapRateHelper(quote, ql.EuriborSwapIsdaFixA(ql.Period('1y')))
ql.SwapRateHelper(quote, ql.EuriborSwapIsdaFixA(ql.Period('1y')), spread)
ql.SwapRateHelper(quote, ql.EuriborSwapIsdaFixA(ql.Period('1y')), spread, ql.Period('1M'))
discountCurve = ql.YieldTermStructureHandle(ql.FlatForward(2, ql.TARGET(), 0.05, ql.Actual360()))
ql.SwapRateHelper(quote, ql.EuriborSwapIsdaFixA(ql.Period('1y')), spread, ql.Period(), discountCurve)
ql.SwapRateHelper(quote, tenor, calendar, fixedFrequency, fixedConvention, fixedDayCount, iborIndex, spread=ql.QuoteHandle(), fwdStart=ql.Period(), discountingCurve=ql.YieldTermStructureHandle(), settlementDays, pillar=ql.Pillar.LastRelevantDate, customPillarDate=ql.Date(), endOfMonth=False)
rate = ql.QuoteHandle(ql.SimpleQuote(0.05))
tenor = ql.Period('5Y')
fixedFrequency = ql.Annual
fixedConvention = ql.Following
fixedDayCount = ql.Thirty360()
iborIndex = ql.Euribor6M()
ql.SwapRateHelper(rate, tenor, calendar, fixedFrequency, fixedConvention, fixedDayCount, iborIndex)
ql.SwapRateHelper(rate, tenor, calendar, fixedFrequency, fixedConvention, fixedDayCount, iborIndex, spread=ql.QuoteHandle(), fwdStart=ql.Period(), discountingCurve=ql.YieldTermStructureHandle(), settlementDays, pillar=ql.Pillar.LastRelevantDate, customPillarDate=ql.Date(), endOfMonth=False)
rate = 0.05
tenor = ql.Period('5Y')
fixedFrequency = ql.Annual
fixedConvention = ql.Following
fixedDayCount = ql.Thirty360()
iborIndex = ql.Euribor6M()
ql.SwapRateHelper(rate, tenor, calendar, fixedFrequency, fixedConvention, fixedDayCount, iborIndex)

OISRateHelper

ql.OISRateHelper(settlementDays, tenor, fixedRate, overnightIndex, discountingCurve=ql.YieldTermStructureHandle(), telescopicValueDates=False, paymentLag=0, paymentConvention=ql.Following, paymentFrequency=ql.Annual, paymentCalendar=ql.Calendar(), forwardStart=ql.Period(), overnightSpread=0.0, pillar=ql.Pillar.LastRelevantDate, customPillarDate=qlDate())
forward6mLevel = 0.025
forward6mQuote = ql.QuoteHandle(ql.SimpleQuote(forward6mLevel))
yts6m = ql.FlatForward(0, ql.TARGET(), forward6mQuote, ql.Actual365Fixed() )
yts6mh = ql.YieldTermStructureHandle(yts6m)
oishelper = ql.OISRateHelper(2,ql.Period("3M"), ql.QuoteHandle(ql.SimpleQuote(0.01)), ql.Eonia(yts6mh),yts6mh, True)

DatedOISRateHelper

ql.DatedOISRateHelper(startDate, endDate, fixedRate, overnightIndex, discountingCurve=ql.YieldTermStructureHandle(), telescopicValueDates=False)
startDate = ql.Date(15,6,2020)
endDate = ql.Date(15,6,2021)
fixedRate = ql.QuoteHandle(ql.SimpleQuote(0.05))
overnightIndex = ql.Eonia()
ql.DatedOISRateHelper(startDate, endDate, fixedRate, overnightIndex)

FxSwapRateHelper

ql.FxSwapRateHelper(fwdPoint, spotFx, tenor, fixingDays, calendar, convention, endOfMonth, isFxBaseCurrencyCollateralCurrency, collateralCurve)
ql.FxSwapRateHelper(fwdPoint, spotFx, tenor, fixingDays, calendar, convention, endOfMonth, isFxBaseCurrencyCollateralCurrency, collateralCurve, tradingCalendar=Calendar())
yts = ql.YieldTermStructureHandle(ql.FlatForward(2, ql.TARGET(), 0.02, ql.Actual360()))
spot = ql.QuoteHandle(ql.SimpleQuote(1.10))
fwdPoints = ql.QuoteHandle(ql.SimpleQuote(122.29))
ql.FxSwapRateHelper(fwdPoints, spot, ql.Period('6M'), 2, ql.TARGET(), ql.Following, False, True, yts)

FixedRateBondHelper

ql.FixedRateBondHelper(price, settlementDays, faceAmount, schedule, coupons, dayCounter, paymentConv=Following, redemption=100.0, issueDate=Date(), paymentCalendar=Calendar(), exCouponPeriod=Period(), exCouponCalendar=Calendar(), exCouponConvention=Unadjusted, exCouponEndOfMonth=False, useCleanPrice=True)
quote = ql.QuoteHandle(ql.SimpleQuote(115.5))
settlementDays = 2
faceAmount = 100
schedule = ql.MakeSchedule(ql.Date(15,6,2020), ql.Date(15,6,2021), ql.Period('1y'))
coupons = [0.0195]
dayCounter = ql.ActualActual()
helper = ql.FixedRateBondHelper(quote, settlementDays, faceAmount, schedule, coupons, dayCounter)

BondHelper

ql.BondHelper(cleanPrice, bond, useCleanPrice=True)
bond = ql.FixedRateBond(
    2, ql.TARGET(), 100.0, ql.Date(15,12,2019), ql.Date(15,12,2024),
    ql.Period('1Y'), [0.05], ql.ActualActual())

cleanPrice = ql.QuoteHandle(ql.SimpleQuote(115))
ql.BondHelper(cleanPrice, bond)

BondHelperVector

ql.BondHelperVector()
bond_helpers = ql.BondHelperVector()
bond_helpers.append(bond_helper)

RateHelperVector

ql.RateHelperVector()
helpers = ql.RateHelperVector()
helpers.append(ql.DepositRateHelper(0.05, ql.Euribor6M()))

Volatility

CapHelper

ql.CapHelper(period, quote, index, frequency, dayCounter, includeFirstOptionlet (bool), YieldTermStructure, errorType=BlackCalibrationHelper.RelativePriceError)
period = ql.Period('2y')
quote = ql.QuoteHandle(ql.SimpleQuote(0.55))
today = ql.Date().todaysDate()
yts = ql.YieldTermStructureHandle(ql.FlatForward(today, 0.02, ql.Actual360()))
index = ql.Euribor6M(yts)

helper = ql.CapHelper(period, quote, index, ql.Semiannual, ql.Actual360(), False, yts)

SwaptionHelper

ql.SwaptionHelper(maturity, length, volatility, index, fixedLegTenor, fixedLegDayCounter, floatingLegDayCounter, termStructure, errorType=ql.BlackCalibrationHelper.RelativePriceError, strike=Null< Real >(), nominal=1.0, type=ql.ShiftedLognormal, shift=0.0)
maturity = ql.Period('5Y')
length = ql.Period('5Y')
volatility = ql.QuoteHandle(ql.SimpleQuote(0.0055))
index = ql.Euribor6M()
fixedLegTenor = ql.Period('1Y')
fixedLegDayCounter = ql.Thirty360()
floatingLegDayCounter = ql.Actual360()

crv = ql.FlatForward(2, ql.TARGET(), 0.05, ql.Actual360())
yts = ql.YieldTermStructureHandle(crv)

ql.SwaptionHelper(
  maturity, length, volatility, index, fixedLegTenor,
  fixedLegDayCounter, floatingLegDayCounter, yts
)
ql.SwaptionHelper(exerciseDate, length, volatility, index, fixedLegTenor, fixedLegDayCounter, floatingLegDayCounter, termStructure, errorType=ql.BlackCalibrationHelper.RelativePriceError, strike=Null< Real >(), nominal=1.0, type=ql.ShiftedLognormal, shift=0.0)
exerciseDate = ql.Date(15,6,2020)
length = ql.Period('5Y')
volatility = ql.QuoteHandle(ql.SimpleQuote(0.0055))
index = ql.Euribor6M()
fixedLegTenor = ql.Period('1Y')
fixedLegDayCounter = ql.Thirty360()
floatingLegDayCounter = ql.Actual360()

crv = ql.FlatForward(2, ql.TARGET(), 0.05, ql.Actual360())
yts = ql.YieldTermStructureHandle(crv)

ql.SwaptionHelper(
  exerciseDate, length, volatility, index, fixedLegTenor,
  fixedLegDayCounter, floatingLegDayCounter, yts
)
ql.SwaptionHelper(exerciseDate, endDate, volatility, index, fixedLegTenor, fixedLegDayCounter, floatingLegDayCounter, termStructure, errorType=ql.BlackCalibrationHelper.RelativePriceError, strike=Null< Real >(), nominal=1.0, type=ql.ShiftedLognormal, shift=0.0)
exerciseDate = ql.Date(15,6,2020)
endDate = ql.Date(15,6,2025)
volatility = ql.QuoteHandle(ql.SimpleQuote(0.0055))
index = ql.Euribor6M()
fixedLegTenor = ql.Period('1Y')
fixedLegDayCounter = ql.Thirty360()
floatingLegDayCounter = ql.Actual360()
blackCalibrationHelper = ql.BlackCalibrationHelper.RelativePriceError
strike = ql.nullDouble()
nominal = 1.0

crv = ql.FlatForward(2, ql.TARGET(), 0.05, ql.Actual360())
yts = ql.YieldTermStructureHandle(crv)

ql.SwaptionHelper(
  exerciseDate, endDate, volatility, index, fixedLegTenor,
  fixedLegDayCounter, floatingLegDayCounter, yts,
  blackCalibrationHelper, strike, nominal
)

HestonModelHelper

ql.HestonModelHelper(tenor, calendar, spot, strike, volQuote, riskFreeCurveHandle, dividendCurveHandle, errorType=ql.BlackCalibrationHelper.RelativePriceError)
spot, strike = 100, 110

tenor = ql.Period("3M")
calendar = ql.NullCalendar()
dayCount = ql.Actual365Fixed()
volQuote = ql.QuoteHandle(ql.SimpleQuote(0.22))

today = ql.Date().todaysDate()
riskFreeCurve = ql.FlatForward(today, 0.04, dayCount)
dividendCurve = ql.FlatForward(today, 0.0, dayCount)
riskFreeHandle = ql.YieldTermStructureHandle(riskFreeCurve)
dividendHandle = ql.YieldTermStructureHandle(dividendCurve)

ql.HestonModelHelper(tenor, calendar, spot, strike, volQuote, riskFreeHandle, dividendHandle)

Credit

SpreadCdsHelper

ql.SpreadCdsHelper(runningSpread, tenor, settlementDays, calendar, frequency, paymentConvention, rule, dayCounter, recoveryRate, discountCurve, settlesAccrual=True, paysAtDefaultTime=True, startDate=ql.Date(), lastPeriodDayCounter=ql.DayCounter(), rebatesAccrual=True, model=ql.CreditDefaultSwap.Midpoint)
runningSpread = ql.QuoteHandle(ql.SimpleQuote(0.005))
tenor = ql.Period('5Y')
settlementDays = 2
calendar = ql.TARGET()
frequency = ql.Annual
paymentConvention = ql.Following
rule = ql.DateGeneration.TwentiethIMM
dayCounter = ql.Actual365Fixed()
recoveryRate = 0.4

crv = ql.FlatForward(2, ql.TARGET(), 0.05, ql.Actual360())
yts = ql.YieldTermStructureHandle(crv)

ql.SpreadCdsHelper(
  runningSpread, tenor, settlementDays, calendar, frequency,
  paymentConvention, rule, dayCounter, recoveryRate, yts
)

Inflation

ql.ZeroCouponInflationSwapHelper(quote, period, date, calendar, convention, daycounter, index)
ql.ZeroCouponInflationSwapHelper(quote, period, date, calendar, convention, daycounter, index, yieldTermStructure)
quote = ql.QuoteHandle(ql.SimpleQuote(0.02))
period = ql.Period('6M')
date = ql.Date(15,6,2020)
calendar = ql.TARGET()
convention = ql.ModifiedFollowing
daycounter = ql.Actual360()
index = ql.EUHICPXT(True)

helper = ql.ZeroCouponInflationSwapHelper(quote, period, date, calendar, convention, daycounter, index)