Forum Replies Created
-
AuthorPosts
-
Roland LichtersKeymaster
Hi Marco,
you could indeed use the simulation framework to achieve what you are looking for. The easiest way is changing the relevant simulation.xml such that the simulation model calibration is skipped, and it is initialized to zero volatility. Then choose a small number of paths (I don’t recall whether 1 is sufficient) and run XVA analytics. The combination of the EPE and ENE profiles will provide you with the NPV evolution “along the forward curve” until maturity. I have used that approach in the past. If you need more help when you try that, let me know.
Best regards,
RolandRoland LichtersKeymasterHi Roland,
apologies for the delay on this: That feature has not made it into ORE, but we have come across such a requirement in the past.
Our solution at the time was adding a new scenario generator class that inherits from ore::analytics::ScenarioGenerator and loads the scenario data from an external source (e.g. a file).When
ScenarioGenerator::next(const Date& d)
is called, it simply builds a new Scenario with
const boost::shared_ptr
scenario = scenarioFactory_->buildScenario(d); and then populates the scenario object with the appropriate data from the external source, using
scenario->add(key, value);
So this use case fits quite nicely into ORE’s scenario machinery with very little additional coding.
I hope this helps.Best regards,
Roland
Roland LichtersKeymasterDear all,
I have posted a summary of the ORE User Meeting here.
More feedback is welcome!
Best regards,
RolandRoland LichtersKeymasterDear all,
the agenda for the ORE User Meeting is now final, see https://www.quaternion.com/news.
looking forward to seeing you on Friday in Frankfurt at Fleming’s, Eschenheimer Tor 2.
Best regards,
RolandRoland LichtersKeymasterHi Alex,
apologies for the late reply – yes, we have added support for commodity forwards, it will appear in ORE latest with the next release.
We currently expect to have time and resources to prepare the next release around year end.Best regards,
RolandRoland LichtersKeymasterHi Roland,
I copied the XML snippets to my post, but the tags got removed, unfortunately. I think you get my point though.
Regards,
RolandRoland LichtersKeymasterHi Roland,
following up on Niall’s comments, please have a look at Example_8. It covers pricing and exposure simulation for a cross currency swap, so the set up we have chosen there takes cross currency basis into account, and it is assuming EUR collateral.
In Examples/Example_8/Input/ore.xml we say that we want to use the market configuration “collateral_eur”.
In Examples/Input/todaysmarket.xml you then see that this means we use the following discount curves
Yield/EUR/EUR1D
Yield/USD/USD-IN-EUR
Yield/GBP/GBP-IN-EUR
Yield/CHF/CHF6M
Yield/JPY/JPY6M
i.e. Eonia discounting in EUR and e.g. a USD-IN-EUR for discounting USD cash flows.And finally in Examples/Input/curveconfig.xml you will find the following which defines how the USD-IN-EUR curve is constructed from FX Forwards and Cross Currency Basis Swaps:
USD-IN-EUR
USD collateralized in EUR discount curve
USD
FX Forward
FXFWD/RATE/EUR/USD/3M
FXFWD/RATE/EUR/USD/6M
FXFWD/RATE/EUR/USD/9M
FXFWD/RATE/EUR/USD/12M
EUR-USD-FX-CONVENTIONS
EUR1D
FX/RATE/EUR/USD
Cross Currency Basis Swap
CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/2Y
CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/3Y
CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/4Y
CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/5Y
CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/7Y
CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/10Y
CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/15Y
CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/20Y
CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/30Y
CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/40Y
CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/50Y
EUR-USD-XCCY-BASIS-CONVENTIONS
EUR1D
FX/RATE/EUR/USD USD3M EUR3M
Discount
LogLinear
A365
0.000000000001
I hope that helps.
Regards,
RolandRoland LichtersKeymasterHi studentt,
ORE adds new QuantLib-style models/processes/engines, market evolution methods, collateral modelling for variation margin and dynamic initial margin etc in three libraries (QuantExt, OREData, OREAnalytics). And it acts as a configurable application around these three libraries including QuantLib.
Please have a look at the FAQs and the user guide (see the link on the documentation page). That should give you an overview over the project and the relation to QuantLib.
Best regards,
RolandRoland LichtersKeymasterDear all,
the work is done, the first ORE release is available at https://github.com/OpenSourceRisk/Engine/releases.
Regards,
Roland -
AuthorPosts