Open tomasnobrega opened 1 month ago
I don't understand your question.
In the schedule part, there is a schedule for "2023-06-01" however the bond function gives a cash-flow starting at "2023-12-01". Why is the bond function skipping the first schedule if the arguments inside schedule
are the same?
I see. Good question. You would have to dig into the code to see if we drop something somewhere.
I usually start from the self-contained C++ examples.
It's been too long since I worked on a bond desk but I would tend to agree with you that there should be an initial June cash flow. The cash flow vector 'generator' (in utils.cpp) look fine (no off by one one error) so it may be the schedule -- but if so then all the pricers would be off. Some I am puzzled.
I don't have access to benchmarking tools (ie Bloomberg or alike) so I can't help on that side.
Thank you. I've modified the code to initiate the schedule a semester earlier, and now the price closely aligns with the benchmark. I suspect the schedule
accounts for the first period as an issuance or a type of "non-payment" start date, although I'm not sure.
I also noticed that this uses the 'discount curve given' pricer when the alternates (for price or yield) may be more common.
And I am with you that it is probably something intrinsic to the Schedule
class.
Hello, I'm trying to price a sample bond, but for some reason, the schedule object differs when I run it within
Schedule()
compared to when I use a list insideFixedRateBond()
. Specifically, the bond function is omitting the first cashflow. Am I missing something? Is this the expected behaviour?Schedule Function
FixedRateBond
Which gives output: