Add rounding to coupons and accrued amounts
Maintainers usually reply within 2 days
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 25/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- cpp
- Domain
- fintech-quant
Research direction
Start by locating the QuantLib bond cash flow and coupon/accrued amount calculations used by qlBond. The issue gives a target coupon example: 3% on RUB 1,000 over 182 days should round to 14.96. Check how existing bond tests cover coupon and accrued amounts, then assess where per-bond rounding belongs; done means the calculations match the stated Russian local bond convention without changing other bond conventions.
Written by the indexing model from the issue text.
Description
Hi. In Russia local bonds are traded not in notional but in quantities by RUB 1000 amount for every 1 bond.
It imlies coupon and accrued amounts are rounded per 2 digits for every RUB 1000. It differs from eurubond conventions, but that's it.
As a results, CFs are not precisely correct when constructing via qlBond object. For big amount (millions, billions) that rounding actually gives some distortions in yields, spreads. Is there a way to fix this bug? Somehow force qlXL to round coupon and accrued amount for every sigle bond?
For example, 3% coupon rate act/365 with 182D for 1000 gives correct coupon 14.96 and not 14,9589. Accrued for 1st day is 0.82 and not 0.82.
- Dominant language
- C++
- Stars
- 7.7k
- Forks
- 2.3k
- Avg merge
- 5d 10h
- Merged PRs (30d)
- 87
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from lballabio/QuantLib
-
DateGeneration::Zero with endOfMonth = true crashes with 'year outside valid range'Possibly taken @1AbdullahButt claimed this 3 days ago. Openhelp wanted
Difficulty 1/5 Under an hour Newbie friendliness 82/100
Maintainers usually reply within 2 days
-
COSHestonEngine, AnalyticPTDHestonEngine and HestonRNDCalculator diverge as vol-of-vol -> 0, unlike AnalyticHestonEnginePossibly taken @leafyoung claimed this 2 days ago. Open
Difficulty 4/5 3-5 days Newbie friendliness 47/100
Maintainers usually reply within 2 days
-
sabrFlochKennedyVolatility returns NaN at beta=1 and at nu=0, both removable singularitiesPossibly taken @leafyoung claimed this 2 days ago. Open
Difficulty 3/5 1-2 days Newbie friendliness 55/100
Maintainers usually reply within 2 days
-
Difficulty 5/5 Over a week Newbie friendliness 18/100
Maintainers usually reply within 2 days
-
Difficulty 5/5 Over a week Newbie friendliness 12/100
Maintainers usually reply within 2 days
All issues in lballabio/QuantLib
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Sunrisepeak/mcpp-language-server#80 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
xiaoyifang/goldendict-ng#3148 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 91/100
triton-inference-server/server#9069 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Maintainers usually reply within 4 days