Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR introduces a revisited fundamental asset pricing formula.
The existing one did the following:
map a claim to an expression representing a stochastic process
make a model assumption, using geometric brownian motion as an elementary process
serialise the resulting formula to text
The revisited FAPF does only the first step: map a claim to a stochastic process representing its value at time t. The process primitives that are used are the ones outlined in the PJ paper: exch, disc, observable (in the future also snell and absorb.
Moreover, we now handle the propagation of acquisition time, such that
scale nodes that are evaluated before today are replaced with their numerical value
scale nodes that are unknown are mapped to the corresponding stoch. process
There are still a couple of things to iron out, specifically
implementation of snell and absorb primitive processes to handle anytime and until nodes (I think we can come to a better expression than what there is in the paper)
simplification functions
I would like to hear your feedback on this and also discuss whether we need support for printing out the formula in e.g. MathML like it's currently done for the existing fapf.
The tests can give you an idea of the output which is currently generated.