Add DatedSwapRateHelper
Also, move common functionality into SwapRateHelperBase to avoid duplication. Reuse it between vanilla and overnight swaps.
@lballabio I'll rebase this on top of the final version of #1911, so please only look at the second commit.
I wanted to get your feedback on the approach -- do you think this is worth it, or should I just copy-paste some code from SwapRateHelper? One nice thing here is that we get custom pillars support for DatedOISRateHelper for free and also fix some inconsistencies in how it sets dates.
I also noticed that I previously added forwardStart to DatedOISRateHelper by mistake (it has no effect). Do you think it's not too late to remove it?
coverage: 72.454% (-0.02%) from 72.477% when pulling c2662adf82182a18265d48f762f19979982a4305 on eltoder:feature/dated-swap-helper into 72012a72da1e3bce984a8e7784701390483fdee2 on lballabio:master.
This PR was automatically marked as stale because it has been open 60 days with no activity. Remove stale label or comment, or this will be closed in two weeks.
Hi Eugene, apologies from dropping the ball on this one---do you think it's possible to extract some utility function instead of using inheritance for reuse? It might (or might not) be simpler to read...
I'll take another look, but I doubt it. Most of the real work is already done by MakeVanillaSwap and MakeOIS. Rate helpers mostly do plumbing and use a lot of member variables, so factoring that into free functions is probably not going to help.