diff options
| author | Somhairle H. Marisol <[email protected]> | 2026-09-22 08:07:00 +0800 |
|---|---|---|
| committer | Somhairle H. Marisol <[email protected]> | 2026-09-22 08:07:00 +0800 |
| commit | b05e728ae23d088ca6c9ecccf6ed00d2ab6f3839 (patch) | |
| tree | 4846648aa87263742c1181c189287b53c3bf84de /src/FundLab.Web/App.fs | |
| parent | 27a85d9070abd000245b2a2e6460ddf9fd5eb97e (diff) | |
| download | fund-lab-b05e728ae23d088ca6c9ecccf6ed00d2ab6f3839.tar.gz | |
Add bond full milestone: profile probe, coupon/accrual rules, ledger and point-in-time valuation (3d-29)
Diffstat (limited to 'src/FundLab.Web/App.fs')
| -rw-r--r-- | src/FundLab.Web/App.fs | 35 |
1 files changed, 32 insertions, 3 deletions
diff --git a/src/FundLab.Web/App.fs b/src/FundLab.Web/App.fs index c150596..5e891ae 100644 --- a/src/FundLab.Web/App.fs +++ b/src/FundLab.Web/App.fs @@ -401,6 +401,14 @@ type RawBondQuote = accruedInterest: obj date: obj maturityDate: obj + parValue: obj + valueDate: obj + couponRate: obj + rating: obj + dataStatus: obj + accruedInterestComputed: obj + dirtyPrice: obj + valuationDate: obj } type RawStockQuote = @@ -879,6 +887,14 @@ type BondQuoteView = accruedInterest: string option quoteDate: string option maturityDate: string option + parValue: string option + valueDate: string option + couponRate: string option + rating: string option + dataStatus: string option + accruedInterestComputed: string option + dirtyPrice: string option + valuationDate: string option } type StockQuoteView = @@ -1343,6 +1359,14 @@ module Api = accruedInterest = decodeOptionalText raw.accruedInterest quoteDate = decodeOptionalText raw.date maturityDate = decodeOptionalText raw.maturityDate + parValue = decodeOptionalText raw.parValue + valueDate = decodeOptionalText raw.valueDate + couponRate = decodeOptionalText raw.couponRate + rating = decodeOptionalText raw.rating + dataStatus = decodeOptionalText raw.dataStatus + accruedInterestComputed = decodeOptionalText raw.accruedInterestComputed + dirtyPrice = decodeOptionalText raw.dirtyPrice + valuationDate = decodeOptionalText raw.valuationDate } let decodeStockQuote (raw: RawStockQuote) : StockQuoteView = @@ -5685,11 +5709,16 @@ let private bondsPanel model dispatch = prop.className "metric-strip" prop.children [ bondQuoteMetric "名称" quote.name - bondQuoteMetric "价格" quote.price bondQuoteMetric "净价" quote.cleanPrice - bondQuoteMetric "应计利息" quote.accruedInterest - bondQuoteMetric "行情日期" quote.quoteDate + bondQuoteMetric "应计利息" quote.accruedInterestComputed + bondQuoteMetric "全价" quote.dirtyPrice + bondQuoteMetric "票息率" quote.couponRate + bondQuoteMetric "面值" quote.parValue + bondQuoteMetric "起息日" quote.valueDate bondQuoteMetric "到期日" quote.maturityDate + bondQuoteMetric "评级" quote.rating + bondQuoteMetric "估值日期" quote.valuationDate + bondQuoteMetric "数据质量" quote.dataStatus ] ] ] |
