Hi,
BondFuture trade type was introduced in release 14.0.
I couldn't find a specific example for this in Examples\Products\Example_Trades but should looks like the trade in attached: BondFuture.zip
From the output we can see that NPV is zero because the flows StrikeFlow and BondValueFlow get computed to same value and opposite signs.
That's because in DiscountingBondFutureEngine::calculate the two prices (strike and fwd) are equal which doesn't seem to evaluate a futures contract where the strike would be set on the trade:
Date today = Settings::instance().evaluationDate();
Date priceDate = std::min(arguments_.index->futureExpiryDate(), today);
Real strike = arguments_.index->fixing(priceDate, false);
Real fwd = arguments_.index->fixing(priceDate, true);
On a connected note, would be nice to have an Interest Rate Future instrument as well. That would make sense for e.g. PAR sensitivity analysis where there is no FUT instrument while on the yield curve we can have this segment type.
Regards,
Laurentiu.
Hi,
BondFuturetrade type was introduced in release 14.0.I couldn't find a specific example for this in
Examples\Products\Example_Tradesbut should looks like the trade in attached: BondFuture.zipFrom the output we can see that NPV is zero because the flows
StrikeFlowandBondValueFlowget computed to same value and opposite signs.That's because in
DiscountingBondFutureEngine::calculatethe two prices (strike and fwd) are equal which doesn't seem to evaluate a futures contract where the strike would be set on the trade:On a connected note, would be nice to have an Interest Rate Future instrument as well. That would make sense for e.g. PAR sensitivity analysis where there is no FUT instrument while on the yield curve we can have this segment type.
Regards,
Laurentiu.