useDynLib(qrmtools, .registration = TRUE, .fixes = "C_")


### Imports ####################################################################

importFrom("quantmod", "getSymbols",
           "Op", "Hi", "Lo", "Cl", "Vo", "Ad",
           "OpCl", "ClCl", "HiCl", "LoCl", "LoHi", "OpHi", "OpLo", "OpOp")
importFrom("Quandl", "Quandl")
importFrom("zoo", "index")
importFrom("xts", "as.xts")
importFrom("methods", "hasArg")
importFrom("stats", "dnorm", "dt", "integrate", "pnorm", "qnorm", "qt",
           "runif", "uniroot", "qqline", "var")
importFrom("grDevices", "colorRampPalette")
importFrom("grDevices", "dev.off")
importFrom("graphics", "image", "mtext", "plot", "rug", "abline")
importFrom("lattice", "levelplot")
importFrom("rugarch", "ugarchspec", "ugarchfit")
importFrom("stats", "quantile", "HoltWinters", "density", "ppoints", "optim")
importFrom("methods", "is", "existsFunction")
importFrom("utils", "setTxtProgressBar", "txtProgressBar", "head")


### Exports ####################################################################

export(
    ## Distributions
    "dGEV", "pGEV", "qGEV", "rGEV",
    "dGPD", "pGPD", "qGPD", "rGPD",
    "dPar", "pPar", "qPar", "rPar",
    ## Risk measures
    "VaR_np", "VaR_t", "VaR_Par", "ES_np", "ES_t", "ES_Par",
    "gVaR", "gEX",
    ## Worst/best VaR
    "crude_VaR_bounds", "dual_bound", "VaR_bounds_hom",
    "rearrange", "RA", "ARA",
    "block_rearrange", "ABRA",
    ## Black--Scholes formula
    "Black_Scholes", "Black_Scholes_Greeks",
    ## Graphics
    "NA_plot", "matrix_plot", "matrix_density_plot", "pp_plot", "qq_plot",
    ## Time Series
    "fit_ARMA_GARCH",
    ## Result/warning/error catching
    "catch",
    ## Returns
    "returns",
    ## Data related functions
    "get_data"
)
