@@ -845,16 +845,19 @@ cashflow projection will stop at the date specified.
845845
846846 .. versionadded :: 0.46.5
847847
848- After 0.46.5, the stop run can be specified by a :ref: `Condition ` which will be evaluated on each distribution date described by :ref: `DatePattern `.
848+ After 0.46.5, the stop run can be specified by a :ref: `Condition ` which will be evaluated on each distribution date described by :ref: `DatePattern `. Any condition met will stop the projection.
849849
850850.. code-block :: python
851851
852852 (" stop" , < DatePattern> , * < Condition> )
853853
854854 .. code-block :: python
855855
856- # on each month end, the engine will evaluate two conditions, stop projection when ALL of them are met
857- (" stop" , " MonthEnd" , [" >=" ," 2022-01-01" ], [(" bondBalance" ," A1" )," <=" ,200 ])
856+ # on each month end, the engine will evaluate two conditions
857+ # , stop projection when ALL of them are met
858+
859+ (" stop" , " MonthEnd"
860+ , [" >=" ," 2022-01-01" ], [(" bondBalance" ," A1" )," <=" ,200 ])
858861
859862
860863 Project Expense
@@ -1451,6 +1454,9 @@ params:
14511454 * `` showWarning`` : if `False ` , client won' t show warning messages, defualt is `True`
14521455 * `` read`` : if `True ` , will try it best to parse the result into `DataFrame`
14531456
1457+ .. versionadded:: 0.50 .0
1458+ * `` rtn`` : defaults to [], to get asset level cashflow pass `` [" AssetLevelFlow" ]``
1459+
14541460returns:
14551461 * a map with keys of components like:
14561462
@@ -1463,6 +1469,8 @@ returns:
14631469 * `` _deal``
14641470 * `` ledgers``
14651471 * `` agg_accounts``
1472+ .. versionadded:: 0.50 .0
1473+ * `` pool_outstanding``
14661474
14671475.. image:: img/ deal_cycle_flow.png
14681476 :width: 600
@@ -1692,6 +1700,12 @@ Cashflow Results
16921700 * - `` Ledger flow``
16931701 - if modeled
16941702 - r[' ledgers' ]
1703+ * - `` Uncollected Pool flow``
1704+ - if any (after 0.50 .0)
1705+ - r[' pool_outstanding' ]
1706+ * - `` Asset Level flow``
1707+ - if any (after 0.50 .0) and toggle on
1708+ - r[' pool' ][' breakdown' ]
16951709
16961710
16971711* the `run()` function will return a dict which with keys of components like `bonds` `fees` `accounts` `pool`
@@ -1787,6 +1801,8 @@ User have the option to view multiple accounts cashflow in a single dataframe,wi
17871801Pool Cashflow
17881802""" """ """ """ """ "
17891803
1804+ Pool cashflow collected into SPV .
1805+
17901806.. code- block:: python
17911807
17921808 r[' pool' ][' flow' ] # pool cashflow
@@ -1802,6 +1818,64 @@ The ``readPoolsCf`` function can be used to view multiple pool cashflow.
18021818 readPoolsCf(r[' pool' ][' flow' ])
18031819
18041820
1821+ Pool cashflow un- collected.
1822+
1823+ .. versionadded:: 0.50 .0
1824+
1825+ .. code- block:: python
1826+
1827+ r[' pool_outstanding' ][' flow' ] # pool cashflow to be collected
1828+
1829+ Asset level cashflow
1830+
1831+ .. versionadded:: 0.50 .0
1832+
1833+ .. code- block:: python
1834+
1835+ r = api.run(... , rtn = [" AssetLevelFlow" ], read = True )
1836+
1837+ r[' pool' ][' breakdown' ] # cashflow list with breakdown
1838+ r[' pool_outstanding' ][' breakdown' ] # cashflow list with breakdown
1839+
1840+
1841+
1842+ Non- Cashflow Results
1843+ ^^^^^^^^^^^^^^^^^^^^^^^^^
1844+
1845+ `` r[' result' ]`` save the run result other than cashflow.
1846+
1847+ .. list- table:: Non Cashflow Results
1848+ :header- rows: 1
1849+
1850+ * - Response Component
1851+ - Condition
1852+ - Path
1853+ * - `` Deal Status flow``
1854+ - /
1855+ - r[' result' ][' status' ]
1856+ * - `` Bond Summary``
1857+ - /
1858+ - r[' result' ][' bonds' ]
1859+ * - `` Bond Pricing``
1860+ - if `pricing` in deal assumption
1861+ - r[' pricing' ]
1862+ * - `` Variable Inspect``
1863+ - if `inspect` in deal assumption
1864+ - r[' result' ][' inspect' ]
1865+ * - `` Variable Inspect``
1866+ - if `inspect` in deal waterfall
1867+ - r[' result' ][' waterfallInspect' ]
1868+ * - `` Deal Run Logs``
1869+ - /
1870+ - r[' result' ][' logs' ]
1871+ * - `` Waterfall Run``
1872+ - /
1873+ - r[' result' ][' waterfall' ]
1874+ * - `` Financial Reports``
1875+ - if `reports` in deal assumption
1876+ - r[' result' ][' report' ]
1877+
1878+ Bond Pricing
18051879Non- Cashflow Results
18061880^^^^^^^^^^^^^^^^^^^^^^^^^
18071881
@@ -2276,19 +2350,28 @@ Stress Default
22762350 syntax
22772351 `` stressDefault``
22782352
2353+ .. versionadded:: 0.50 .1
2354+ `` (" stressDefault" , < min factor:float > , < max factor:float > )``
2355+
22792356Stress Prepayment
22802357 It will stress the prepayment component in the pool performance assumption.
22812358
22822359 syntax
22832360 `` stressPrepayment``
22842361
2362+ .. versionadded:: 0.50 .1
2363+ `` (" stressPrepayment" , < min factor:float > , < max factor:float > )``
2364+
22852365
22862366Max Spread
22872367 It will increase the spread of bond.
22882368
22892369 syntax
22902370 `` (" maxSpread" , < bondName> )``
22912371
2372+ .. versionadded:: 0.50 .1
2373+ `` (" maxSpread" , < min factor:float > , < max factor:float > )``
2374+
22922375Split Balance
22932376 It will adjust balance distribution of two bonds.
22942377
0 commit comments