Hastructure
Cashflow modeling library for structured finance
https://github.com/yellowbean/Hastructure#readme
| LTS Haskell 24.17: | 0.50.4 |
| Stackage Nightly 2025-07-18: | 0.50.4 |
| Latest on Hackage: | 0.50.4 |
BSD-3-Clause licensed by Xiaoyu
Maintained by [email protected]
This version can be pinned in stack with:
Hastructure-0.50.4@sha256:3ee71894e1f5b88df2a096de96b173b421341aa4fbc6d86ddd199d47fb33a9d1,5740Depends on 45 packages(full list with versions):
aeson, aeson-pretty, attoparsec, attoparsec-aeson, base, base-compat, bytestring, containers, Decimal, deepseq, dlist, generic-lens, hashable, Hastructure, http-types, lens, math-functions, MissingH, monad-loops, mtl, numeric-limits, openapi3, parallel, regex-base, regex-pcre-builtin, scientific, servant, servant-openapi3, servant-server, split, string-conversions, swagger2, tabular, tasty, tasty-golden, tasty-hspec, tasty-hunit, template-haskell, text, time, and many more
Used by 1 package in nightly-2025-07-18(full list with versions):
What is Hastructure ?
Hastructure names after Haskell and Structured Finance, aims to provide cashflow projection for deal/transactions described in either Haskell structure or JSON via RESTful Service, with inputs from below:
- deal components (bonds,assets,accounts,waterfall,trigger,fees etc.)
- pool performance assumption input as well as interest rate assumption
Hastructure will generate outputs:
- cashflow of bonds/accounts/fees
- pricing of bonds
- or other outputs make your lose money faster :sunglasses:
Why Hastructure ?
- :bricks: A collection of building blocks to build cashflows model for structured product. User just need to
composethem together. - :car: In-house and white-label friendly.
- :flags: No lock-in risk, all JSONs input/output, no proprietary file formats.
I’m using language XXX
- :snake: Python wrapper is in
Betanow ! - :coffee: Easy integration with
Java/C#/C++/JavaScript/PythonwithRESTfulinterface and Docker image are ready.- C/Java : here
Documentation
- see what
Hastructureis capable of -> Here
Features
- Integration
- Asset class coverage (Mortgage/Student Loan/Auto Loan/Rentals/Corp Loan/Consumer Installment)
- Pool Assumptions
- Mortgage (Prepay, Prepay Penalty, Deliquency, Default,Recovery Lag/Rate)
- Installment (Prepay Default Recovery Lag/Rate)
- Corp Loan (Prepay Default Recovery Lag/Rate)
- Receivable (Default Recovery Lag/Rate)
- Rentals (Gaps between leases,Rental Curve Assumption)
- Fixed Asset ( Uitility Rate)
- Multiple Waterfalls
- Clean up waterfall/ Pre,Post Enforcement waterfall
- Pool collection waterfall
- Accounts
- Reserve Account/Bank Account (with interest)/Cash Account/ Ledger(PDL)
- Bonds/Tranches
- Float Index rate / Step Up coupon type / Fix Rate
- Sequential / Prepay Lockout /PAC Bond Support /Z Bond Support
- Bond Pricing (IRR /WAL /Duration /Accrual Int)
- Call
- call by Pool/Bond Balance amount;Bond/Pool Factor;On Date/or after
- Fees
- Pool / Bond balanced based fees
- Fix Amount Fees / Custom Fee Flow / Number Type Fee of a deal / Formula based fee rate
- Liquidity Provider
- line of credit/ Unlimit support
- interest charge or fee charge on the credit used & unused
- Trigger
- Base on Date
- Base on Free Formula, Bond /Pool metrics
- Base on Pool performance, like Cumulative Default Rate, last 3 periods delinquency rates.
- Base on any combination above
- Interest Swap
- Float to Float/ Fix to Float
- formula based notional balance
- Scenario Analysis
- Running multiple scenarios on single deal
- Pricing on single asset
- Revoving Buy Analysis
- Free Formula Support
- User is able to using statistics of deal ( Pool Balance,Account balance ,total Bond Balance of , A factor of .. ) to construct formula which used to specify the amount of cash to transfer , pay out to fee or liabilities etc.
- Misc
- Support user define pay dates & pool collection dates
Online Demo
The demo only cover very limit features of this engine and subject to UI performance issue due to rapid prototype design of web component
Pls noted that the web demo is far behind latest development/stable version
Others
Changes
Changelog for Hastructure
0.50.0
2025-07-14
- NEW: add
stopByin run assumption ,which stop deal run by a list ofCondition - NEW: expose
asset levelcashflow ,with a toggle - NEW: expose
Un-Used Pool cashflow - ENHANCE: parameterized the
tweaks - ENHANCE: update dependency to accomodate publishment to
Hackage - FIX: enable
Leasedeal forFinancial reports
0.46.4
2025-06-10
- ENHANCE: add error message when calculation IRR for bond with non cashflow
- ENHANCE: add
tweak:Stress Prepayment - ENHANCE: add
stop:Bond Principal LossBond Interest Loss
0.46.2
2025-06-08
- ENHANCE: add
tweak:Balance Splitandstop:Bond Met Target IRR
0.46.1
2025-06-07
- ENHANCE: add 2 more
leaseEndTypeassumptions:EarlierLaterwhich will end the lease projection base on two inputEnd dateandextention times. - ENHANCE: expose
new bond rate typeintrigger effects. Now bond rate type can be changed during the projection. - REFACTOR: with new refactor
root finderendpoint and signature. In the long term, the refactor of signature lays down fundation fordeal structuringdomain, now it would be easy to implement all kinds of structuring features.
0.45.7
2025-05-26
- ENHANCE: add
BaseByVecfor vector-based rental change
0.45.5
2025-05-20
- NEW:
MaxSpreadfeature for structuring stage: get max possible bond coupon rate ! - ENHANCE: Transfer from
stacktocabalas build tool - ENHANCE: Apply
DListto trigger log - ENHANCE: Enable
Double Decline BalanceinFixedAsset - REFACTOR: Refactor
Leasingasset type- Add
Defaultassumption - Add
Period-basedrental ,in addition toDay-basedrental calculation
- Add
0.45.2
2025-04-01
- ENHANCE: Performance optimization by replace
ListwithDList. - ENHANCE: In
inspection,exposeIsOutstandingHasPassedMaturityinPre
0.45.1
2025-03-25
- FIX: in
Pricing/IRR, error when holding position is too small - ENHANCE: engine will auto patch
interest start datefor bonds if it is not modeled. InPreClosingstatus, engine will useclosing dateas bond interest begin date ; InNon-PreClosingstatus, it defaults to use last waterfall distribution date as bond interest begin date.
0.45.0
2025-03-21
- BREAK: remove unused
DealDates:FixInterval,CustomDatesandPatternInterval. Since all these can be replace by newGenericDatesin typeDateDesp - ENHANCE: now bond with
No last interest accure daywill begin accrue interest fromclosing dateif the deal is inPreClosingmode, while the bond will uselast bond dayotherwise. - FIX:
IsPaidOffnow can be queried in inspection formula
0.44.0
2025-03-11
- BREAK: Add
PACPAC AnchortoBondGroup, nowBondGroupisMap String L.Bond (Maybe PrinType) - NEW: add formula
bondTargetBalanceto query target amortized balance - ENHANCE: expose
PAC Anchorwhich is same toPACexcept that the balance schedule will be ineffective ifAnchor Bondsare paid off.
0.43.0
2025-03-08
- NEW: new interest type
BalRefwhich bond will accrue its interest by aFormula, which is being used to modelIObond - ENHANCE: in
FirstLoss,the stress will be applied torevolving assumptionas well - FIX: add
interest accruedin bond pricing result - BREAK: In waterfall ,the action
CalcBondIntnow only accepts a list of bond names - BREAK: asset modeling and analytics
leasehas been refactored
0.42.10
2025-02-15
- NEW: expose new bond pricing : calculate IRR for
holdinga bond,hold and sella bond, orbuy a bond. - ENHANCE: lift
Pricingto expose error message. - ENHANCE: change compare symbol in response from
GTto>and others as well. - ENHANCE: auto patch
bond paid periodsandpool collection periodsforpreClosingdeal.
0.42.8
2025-02-13
- FIX: Enable
byTermassumption onInstallment - FIX: cap the default rate vector with 100% geneated by
root.finder - NEW: add
PeriodBasedrate curve or balance curve inPre, i.e. easy to build default rate trigger in structuring stage
0.42.4
2025-02-06
- NEW:
FirstLossas new endpoint, which will stress onDefaultassumption till 0.01 loss on input tranche. - NEW: New prepayment /default assumption via
byTerm, which vector curves are being applied via term of the assets.
0.42.3
2025-02-04
- NEW:
Multi-threadon pool cashflow projection - NEW: Expose
convexityon bond/asset - NEW: Add new prepayment assumption
PSAfor Monthly mortgage - NEW: Add new prepayment/default vector assumption based on asset origin term
0.42.1
2025-02-02
- NEW: add custom fee flow by
BondPaidPeriodPoolCollectedPeriodindex
0.42.0
2025-02-01
- ENHANCE: refactor
calcPmtto boost 15x performance for mortgage cashflow projection. - NEW: add
ScheduleByIndexfor bonds - FIX:
fundWithshall increase the bond balance - ENHANCE: refactor Z-spread calc logic with numeric.root.finder
0.41.1
2025-01-11
- NEW:
Multi Interest Bondwhich used to model in bond withstep upfeature ( sub ordinated interest) in European - NEW: new assumption ,which used to funding existing bond.
- NEW: new query
totalFundingfor bond,which records all funding amount of bond. - NEW: new query
AmountRequiredForIRRfor bond,which return the amount to be paid out make bond met the target IRR. - NEW: in
Rate Swap, the notional can be set byFormula - ENHANCE: when account is being used as a source for
support, it has option to book ledger with bothcreditanddebitdirection. - FIX:
payPrinBySeqwas not paying out principal.
0.40.13
2024-12-17
- NEW: new formula
totalFundedfor bond with extra funding amount - NEW: new deal run assumption
FundBond, which records a time series funding amount for a single bond. - ENHANCE: When booking account from
supportaction, now user can book onCreditorDebitside - FIX:
payPrinBySeqwas not working
0.40.9
2024-12-11
- ENHANCE: Ensure
limitalways return positive ,otherwise engine will throw error - NEW: add new action
changeStatusin waterfall, with optionalPreas condition to trigger the status change
0.40.6
2024-12-06
- NEW: new formula
ledgerBalanceBy, which return eitherCreditorDebitbalance of a ledger - FIX: step-up coupon bond which has a floater index will increase forever
- ENHANCE: refactor on
PDLbook type.
0.40.1
2024-11-05
- NEW: break changes on API ,now the engine is able to throw out error message instead of just hanging.
0.31.0
2024-11-05
- NEW: new Call options assumption ,which specifies
datesto be tested - ENHANCE: transform financial report to a
Treefrom aTable
0.30.5
2024-11-02
- NEW: Expose bond factor formula for single bond
- FIX: Enable balanceSheet support for multiple pools
- FIX: Include logs from clean up waterfall
- FIX: Include logs from trigger/actions
- ENHANCE: query borrower number by Pool Id
- ENHANCE: query current pool balance by Pool Id
0.30.3
2024-10-20
- NEW: Expose combo sensitivity endpoint,
- NEW: Expose single clear ledger function
- NEW: Expose
writeoffBySeqwhich write a list of bonds by sequence. - NEW: Add new assumption curve with padding last value to rest
- NEW: Expose extra Stress on ppy/def curve, use can impose time-series based stress on prepayment and default.
- NEW: Expose
transferMultiple, with one action transfer multiple account to single account - ENHANCE: Expose pricing for bond groups
- ENHANCE: Instead of liquidating all pools but users now have the option to select pool to liquidate
- FIX: Revolve buy when building balance
- FIX: avoid duplicate run waterfall in call
0.28.21
2024-8-25
- ENHANCE: Expose pricing function with options of
includeornot includeaccrued interest. - NEW: Ballon Mortgage
- NEW: Expose Assumption: defaultAtEnd with rates
- NEW: Expose revolving buy asset from multiple pools
- NEW: Expose which waterfall is run at each payment date
0.28.16
2024-8-6
- FIX: correct
runPoolcashflow order and add UT
0.28.15
2024-7-31
- FIX: enable compound formula on
weighted averageformula.
0.28.14
2024-07-06
- FIX: enable
annualized rate fee typewith formulabondbalanceonbondGroup
0.28.13
2024-06-30
- NEW: new assumption
issue bondwhich allow funding by issuing new bonds during cashflow projection. - NEW: new asset class
projectScheduleFlowwhich can be divided projected cashflow with fix portion and float portions. The interest from the float portion will be affected by interest rate assumption. - ENHANCE: enable formula
bondRate/bondWaRateonbondGroup - FIX:
formulawill returninfif adividewith zero instead of just throw exception - FIX:
financial reportswas failing because it can’t access tointerest dueon bond group. - FIX: enable formula query on
bond groups
0.28.8
2024-06
- FIX:
limitonpayFeewas not working withduePct - ENHANCE: expose
transaction statementfortriggers
0.28.2
2024-05-27
- NEW: enable
triggerto run waterfallactions - FIX: the
result logused to be doubled each pool collection period - FIX:
payPrinResidualwill use all cash from account regardless principal due of bonds, which may caused negative balance of bonds( cash of account > principal due of bond)
0.28.1
2024-05-26
- BREAK : add
bondGroup, which group bonds and pay with prorata/sequential/by coupon rate/by maturity/by start date - BREAK : add
begin balance/accure interest/as of datefor cashflow frame - BREAK : add
interest arrearsinterest over intereston bond cashflow - NEW: add
interest over interestsettings on bonds and exposeinterest over interestinterest dueflow - ENHANCE: add tabular representation of cashflow frame
- FIX: fix rolling default rate query
0.27.21
2024-05-15
- NEW: add
weekday <n>in the date pattern - ENHANCE: expose
weekly/biweeklyinPeriod - NEW: now allow new
first N period without Feefeature to model cashflow of typeInstallment - FIX: negative pool balance for (revolving pool asset >= 2)
0.27.13
2024-05-05
- ENHANCE: enable all
Combination Typeformula (via patching dates) - ENHANCE: add capability to query txn in (Fee/Bond/Account) via a
comment
0.27.12
2024-05-04
- ENHANCE: deal will return how it was ended in projection
0.27.11
2024-05-04
- NEW: Formula:
originalBondBalance,BondDuePrin - NEW: Waterfall Action:
CalcBondPrin,PayPrinWithDue - ENHANCE: fix Formula:
PoolFactor - NEW: Enable
*between formulas - FIX: Unlimit Liquidity Provider has wrong available balance
0.27.7
2024-05-01
- ENHANCE: Enable pricing on asset via a constant rate/rate curve; add
durationfor asset pricing (curve only)
0.27.4
2024-04-15
- ENHANCE: Pool run: enhance multip-scenario run and mulitple-assets type run
- ENHANCE: Enable revovling on
Receivable - ENHANCE: add
RecoveryByDaystoReceivable,which describes recovery cash received after default. - FIX: Fix single asset run on
lease - FIX: Failed to include cumulative stats on revolving buy assets
- FIX: Multi-asset run was failure due to including schedule cashflow run.
- ENHANCE: upgrade stack resolver from
lts-18.22tolts-22.6
0.27.0
2024-04-01
- NEW: Now docker image ship with
Apple siliconchip ! Happy hacking Mac users !
0.26.2
2024-03-24
- FIX: patch recoveries for
Mortgagetype cashflow - NEW: add new asset class
Receivablewhich represent ainvoice factored,trading receivable - NEW:
DefaultAtEndassumption, which assumes asset default at last payment(ForReceivable)
0.26.1
2024-03-09
- NEW:
fundWithwhich will increate the balance of bond and deposit cash to account. - NEW:
writeOffwhich will write off balance of bond via a formula - NEW: a new predicate
passMaturitywhich True if bonds has passed their expected maturity/pay off date. - NEW:
Notas composite boolean test. - NEW: add new
OASpricing assumption, which return OAS spread given input scenarios.
0.26.0
2024-02-27
- NEW: add
NO_FirstNas type ofMortgagewhich implies no payment for first N period and interest due will be capitalized. - NEW: add
IO_FirstNas type ofMortgagewhich implies no principal payment for first N period. - NEW: add
Make WholeFeature, which allow user to set a ,,<WAL/Spread> Table. The bond will be componsate with PV from spread determined by WAL remaining.
0.25.0
2024-02-16
- NEW: add
resec deal, which allow to use bonds as underlying assets and allow user to set assumption on underlying deals.
0.24.1
2023-12-17
- NEW: add
payIntBySeqwhich pay interest to bonds sequentially with optional limit - NEW: add condition to “ExtraSupport” ,which support only available if a is satisfied
- NEW: add
Nothingto trigger effects - NEW: add
payFeeBySeqto which pay a list of fees sequentially with optional limit - NEW: add a fee type which due amount is X per pool collection period
- NEW: add a fee type which is a lookup table with look up value from a formula
- NEW: add override feature
rateandbalancetocalcDueIntaction in waterfall. - NEW: multiple pool support !! now engine support multiple pools in a deal with mixed assets.
- NEW: add query on
present value on schedule pool cashflow, which enableYield Maitenance Overcollaterisaztionsupports
0.23.1
2023-11-16
- NEW: new asset class
FixAssettype , which yield cashflow given acapacityand assumption calledutilization rate curve. The new asset type is applicable to Hotel booking/EV Charge station/Solar Panel/Wind Power type. - NEW: new rate hedge instrument
RateCapwhich yield cash ifrateCurveis higher than astrike rate - NEW: add
accruedInterestfield in pool stats, which will be deducted from pool cash flow - NEW: add
payPrinBySeqin waterfall action, now user can pay prin bond via a simple list. - NEW: add an assumption
fireTriggerwhich mannualy fire a trigger at point of projection - NEW: add pool collection type
totalCashwill aggregate all pool cash field - NEW:
payIntnow accept alimitwhich constrain how much interset to be paid via aformula - NEW: add
bookBya ledger viaformula - NEW: add
I_PtoMortgagetype ,which modelsBuy To Lettype mortgage( interest only and principal at last period) - ENHANCE: include
Lensand code clean up - BREAK: refactor
StepUpout ofinterestpart of bond.
0.22.2
2023-10-27
- ENHANCE: expose cumulative stats on pool cashflow returned by
runDeal
0.22.1
2023-10-26
- NEW: add
default by amountassumption, which enable user to set atotal amount of defaultalongside with a vector. - ENHANCE: misc refactors
0.22.0
2023-10-15
- BREAK: cashflow now with
Cumulative Stats( cumulative default/delinq/loss/prepayment/principal/recovery) - NEW: expose
inspectin waterfall action to observe variables during a waterfall execution - NEW:
stepupnow accpet apreinstead of adateto switch rate - ENHANCE: auto patch
issuance balanceforPreClosingDeal - ENHANCE: implement
pre-run checkandpost-run check- IssuanceBalance check :
Ongoing Dealshall have a IssuanceBalance value in Pool - Interest Rate check : index required by deal should be found in assumption
- Waterfall action check : actions in waterfall ( source/target) should exist in deal object
- IssuanceBalance check :
- FIX: fix bug on
prepay penaltywhen usingstepDown - FIX: fix project cashflow for
Loan
0.21.5
2023-10-8
- ENHANCE: in the revolving buy , now buy amount is no longer a multipler of revolving assets face value
- FIX: now revolving asset may have remtain term == original term
0.21.4
2023-9-27
- ENHANCE: require a new status when defining a deal in
preClosingstage - FIX: fix a bug when reading financial report logs
0.21.3
2023-9-26
- NEW: include a
default/delinq/lossstatus map when projecting cashflow - NEW: implement
haircutas extra stress projectingmortgage - ENHANCE: include
calleddeal status, which will be set when deal was triggered with a clean up call assumption - ENHANCE: expose
runAssetendpoint - ENHANCE: expose formula query on
deal statusas well astrigger status - ENHANCE: add
rampUpdeal status - FIX: adjust bond reset date from
cutoff datetoclosing date
0.21.1
2023-9-21
- BREAK: seperate
performance assumption - BREAK: add
delinquencyprojection on mortgage as well as schedule mortgage cashflow
0.20.3
2023-9-4
- ENHANCE: now user can include boolean/int/balance/rate type query in
inspectfield
0.20.2
2023-8-31
- BREAK: move
Triggerfromlistinto amapwith a name - ENHANCE: add
CumulatiePoolDefaultedRateTillto query default rate as of collection period N , then support query last one,last two default rates in the past as a rolling basis.. - ENHANCE: add
queryBoolwith test logic ofanyorwhich will test all predicates or any predicates are/is satisfied. With new included aforementioned formula above, the engine can have a predicate likelast 2 period cumulative defaulte rates are all lower than 5%,any last 2 period cumulative defaulte rates is higher than 5%
0.20.1
2023-8-29
- ENHANCE: add
LedgerTxnAmt, allow user to query transaction amount for a ledger bycomment - ENHANCE: expose
Absin formula , which will get absolute value of another formula
0.20.0
2023-8-25
- BREAK: refactor
payIntandpayFeewhich includesextraSupportfrom either anotheraccountorliquidation provider, with option to bookPDL drawon ledger - NEW: expose
Cumulative Net LossCumulative Net Loss RatioBond RateBond Weight Average Ratein formula - NEW: expose
Avgin formula ,which can calculate average value from a list of deal stats. - NEW: expose
RefRatein bond , now bond can be setup interest rate which reference to a value of deal , could be like 100% of Pool WAC coupon , or average of bond rate of bonds etc. - ENHANCE: add
liquidity providerinterest swaptobalance sheet repot - ENHANCE: add new bool query
is_most_senior_bond - ENHANCE: add new balance query
PoolCurCollectionreturns target pool source balance in last collected period - ENHANCE: refactor account transfer by
target reserve amount
0.19.15
2023-8-20
- ENHANCE: add
reserve account excess/gapto formula - ENHANCE: refactor bond
step upcoupon by date ,which pertains to Euro deals - ENHANCE: add comments to souce code and prepare to release to
Hackage
0.19.12
2023-8-17
- NEW: Add
Step Up By Date/Cap/Floorcoupon type for bond - NEW: Add
Prepay Penaltyattribute onMortgage, penalty types includes:rate0beforeterm Nandrate1afterterm N- Fixed amount in lifetime or before
term N - Fixed pct in life time or bfore
term N - Sliding from
rate0by step ofrate1 - Ladder type like first
12periods with Pct ofRate0, next12periods with Pct ofRate1
- ENHANCE: refactor
liquidity provider- include a maybe
valid dateof the agreement - include floater index
- include a maybe
0.19.11
2023-8-14
- ENHANCE: add
calcAndPayaction for fee - ENHANCE: expose new assumption on expense projection
- ENHANCE: include a new
NO_IEtype to generate dates vector - FIX: Fix missing periods of
recurrtype of fee
0.19.10
2023-8-7
- NEW : add a new expense type:
TargetBalanceFee, which due amount =<formula 1> - <formula 2> - ENHANCE: add query total txn amount for account/bond/expense with optional
commentas a filter - ENHANCE: expoese query on
cumulative poolonrecoveriesprincipalinterestprepayment - ENHANCE: expoese query on
beg balanceon pool
0.19.8
2023-7-24
- ENHANCE: trancate payments records for bond with 0 balance and 0 due interest/due pricipal
0.19.7
2023-7-19
- ENHANCE: expose query on
cumulative pool recoveries - ENHANCE: expose
factorin query - ENHANCE: ensure principal payment is cap via bond oustanding balance
0.19.6
2023-7-18
- FIX: update PDL Ledger balance after
bookByaction
0.19.4
2023-7-17
- FIX: fix pricing error if bond flow size is 0
0.19.0
2023-7-1
- BREAK : seperate
payIntaction andaccrueIntaction - ENHANCE: optimize
Z-spreadcalculation - ENHANCE: re arrange
deal.hs, break down code logic into seperate files. - NEW: include
ledgersto accomodatePDLfeature (Principal Deficiency Ledger) - ENHANCE: expose
roundingondeal stats, which rounds interest rate change by a factor of fix amount ,or pay principal on balance by a factor of fix amount. - ENAHNCE: expose
runDateendpoint as sandbox for user to play with<datePattern>
0.18.9
2023-6-23
- NEW : add
floorAndCapformula to set upper or lower bound of formula value - NEW : add formula based fee rate for
pctandannualtype of fee
0.18.1
2023-6-21
- NEW : Project cashflow for a list of asset, with performance assumption
- ENHANCE : Add
limitfor revolving buy action - ENHANCE : Add
defaultwaterfall - NEW : Add “IF-ELSE” in waterfall action
0.18.0
2023-6-8
- NEW “Major” : expose revolving assumption !
- NEW :
Prenow support comparing with abalancetype formula ,not limited to a balance number
0.17.2
2023-5-24
- NEW: expose
exclude datesandoffset by days
0.17.1
2023-5-21
- NEW: expose trigger status in
Inspect
0.17.0
2023-5-21
- NEW: expose
BalanceSheet ReportandCashflow Report, user can query them via set flags in assumption - BREAK: normalized some account comments to be analysed when compling
Cashflow Report
0.16.0
2023-5-13
- NEW: expose bond with
Step-Up couponfeature - BREAK:using
DatePatternto annotate reset date for floater bonds - FIX: data query in the trigger
0.15.4
2023-5-6
- FIX: Fix cashflow projection logic for
Installment - Include
DefaultedRecoveryassumption for defaulted assets.
0.15
2023-5-1
- Introduce new asset :
AdjustRateMortgagewith assumption:- init period,first reset cap, periodic reset cap,lifetime cap, lifetime floor
- Docker hub will host each stable releases of Hastructure