QuoteOriginally posted by: outrunThese designs are highly purpose specific even though it's very modular.Eg, the meaning of SDE bit is difficult to understand for me (in general, as a design element). And there are generic properties that can be merged, a random number, a random path, a payoff of a path all have a generic "draw sample from distribution" interface. That makes me thing that payoff should be merged with SDE and "numerical path generator" into something "distribution like", to which you then connect the rng like you do with the standard distributions in C++11.The main difficulty if how to handle multiple payoffs connected to the same St path. I see two clearly distinct approaches with implications to how you can distribute the MC job across machines1) generate a full features St path, that contains the union of time steps needed so that *all* payoff functions can be evaluated from that single path2) have each payoff evaluator create its own path and somehow correlate / synchronize the pathsThanks for the feedback.I am open to design changes of course. That's the whole point .. to elicit response.0) the SDE is just a class that models sdes with drift, diffusion etc. More detailed layered designs allows you to initialise them using MLE etc. (like your OU calibration paper). Is that what you mean? 1) That's the current idea, yes. Each pricer decides what it wants to do with the path.2) That's possible as well. But then I would create a complete program for each kind of pricer. Then indeed you will need another component to manage the paths. Which is also a common scenario. I's probably easier to parallelise as well I suppose. If you view each pricer as a separate 'order' as it were then this would be correct.I see two clearly distinct approaches with implications to how you can distribute the MC job across machinesIn this case 2) is probably a better design? 3) I think payoff (market data) and SDE(model data) should be independent of each other, because it is 1:N (same payoff for PDE, MC, lattice, numerical integration).
Last edited by Cuchulainn
on January 17th, 2014, 11:00 pm, edited 1 time in total.