#!/usr/bin/env python

import glob
import os
import sys
from risk_helper import RiskEngine

risk_engine = RiskEngine(sys.argv[1] if len(sys.argv) > 1 else False)

# whithout collateral
risk_engine.print_headline(
    "Run RiskEngine to produce NPV cube and exposures, without collateral")
risk_engine.run("Input/ore.xml")
risk_engine.get_times("Output/log.txt")
risk_engine.save_output_to_subdir(
    "collateral_none", ["log.txt", "xva.csv"] +
    glob.glob(os.path.join(os.getcwd(), os.path.join("Output", "exposure*"))))

# Threshhold>0
risk_engine.print_headline(
    "Run RiskEngine to postprocess the NPV cube, with collateral (threshold>0)"
)
risk_engine.run("Input/ore_threshold.xml")
risk_engine.save_output_to_subdir(
    "collateral_threshold", ["log.txt", "xva.csv"] +
    glob.glob(os.path.join(os.getcwd(), os.path.join("Output", "exposure*"))) +
    glob.glob(os.path.join(os.getcwd(), os.path.join("Output", "colva*"))))

# mta=0
risk_engine.print_headline(
    "Run RiskEngine to postprocess the NPV cube, with collateral (threshold=0)"
#!/usr/bin/env python

import os
import sys
from risk_helper import RiskEngine

risk_engine = RiskEngine(sys.argv[1] if len(sys.argv) > 1 else False)

# Case A
risk_engine.print_headline(
    "Run RiskEngine (case A (swap eur), 1st order regression)")
risk_engine.run("Input/ore_A1.xml")
risk_engine.get_times("Output/log_1.txt")
risk_engine.save_output_to_subdir(
    "case_A_eur_swap",
    ["log_1.txt", "dim_evolution_1.txt", "dim_regression_1.txt"])
risk_engine.print_headline(
    "Run RiskEngine (case A (swap eur), 2nd order regression)")
risk_engine.run("Input/ore_A2.xml")
risk_engine.save_output_to_subdir(
    "case_A_eur_swap",
    ["log_2.txt", "dim_evolution_2.txt", "dim_regression_2.txt"])
risk_engine.print_headline(
    "Run RiskEngine (case A (swap eur), zero order regression)")
risk_engine.run("Input/ore_A0.xml")
risk_engine.save_output_to_subdir(
    "case_A_eur_swap",
    ["log_0.txt", "dim_evolution_0.txt", "dim_regression_0.txt"])

risk_engine.print_headline("Plot results")