{
  "_id": "6ad08e74cf31981cbb6ee9d3",
  "Type": "Package",
  "Package": "ffp",
  "Title": "Fully Flexible Probabilities for Stress Testing and Portfolio\nConstruction",
  "Version": "0.2.2.9000",
  "Authors@R": "person(given = \"Bernardo\",\nfamily = \"Reckziegel\",\nrole = c(\"aut\", \"cre\"),\nemail = \"bernardo_cse@hotmail.com\")",
  "Description": "Implements numerical entropy-pooling for portfolio\nconstruction and scenario analysis as described in Meucci,\nAttilio (2008) and Meucci, Attilio (2010)\n<doi:10.2139/ssrn.1696802>.",
  "License": "MIT + file LICENSE",
  "URL": "https://github.com/Reckziegel/FFP",
  "BugReports": "https://github.com/Reckziegel/FFP/issues",
  "Config/testthat/edition": "3",
  "Encoding": "UTF-8",
  "Language": "en-US",
  "LazyData": "true",
  "Roxygen": "list(markdown = TRUE)",
  "RoxygenNote": "7.2.1",
  "VignetteBuilder": "knitr",
  "Config/pak/sysreqs": "cmake libicu-dev",
  "Repository": "https://reckziegel.r-universe.dev",
  "Date/Publication": "2022-09-29 18:22:37 UTC",
  "RemoteUrl": "https://github.com/reckziegel/ffp",
  "RemoteRef": "HEAD",
  "RemoteSha": "da655b211d72304d7bf436a5116fb3b4c40d5a0f",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-10-15 07:28:35 UTC",
    "User": "root"
  },
  "Author": "Bernardo Reckziegel [aut, cre]",
  "Maintainer": "Bernardo Reckziegel <bernardo_cse@hotmail.com>",
  "_user": "reckziegel",
  "_type": "src",
  "_file": "ffp_0.2.2.9000.tar.gz",
  "_fileid": "https://r2.ropensci.org/1056bfd12193ff31884d649e5c752a34a9ba28705e5ed547d3091b3b10da671d",
  "_filesize": 1634346,
  "_sha256": "1056bfd12193ff31884d649e5c752a34a9ba28705e5ed547d3091b3b10da671d",
  "_expires": "2027-01-23T08:27:27.000Z",
  "_created": "2026-10-15T07:28:35.000Z",
  "_published": "2026-10-15T08:27:32.622Z",
  "_buildurl": "https://github.com/r-universe/reckziegel/actions/runs/38698397085",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_jobs": [
    {
      "job": 116302797160,
      "time": 171,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11955580813"
    },
    {
      "job": 116302796916,
      "time": 183,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11955895462"
    },
    {
      "job": 116302797135,
      "time": 214,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11957888381"
    },
    {
      "job": 116302797013,
      "time": 181,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11957573310"
    },
    {
      "job": 116300830139,
      "time": 316,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11954399203"
    },
    {
      "job": 116302797230,
      "time": 125,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "11954334527"
    },
    {
      "job": 116302797134,
      "time": 108,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11955389377"
    },
    {
      "job": 116302797008,
      "time": 113,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11955437714"
    },
    {
      "job": 116302797326,
      "time": 114,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11954399523"
    }
  ],
  "_upstream": "https://github.com/reckziegel/ffp",
  "_commit": {
    "id": "da655b211d72304d7bf436a5116fb3b4c40d5a0f",
    "author": "Bernardo Reckziegel <bernardo_cse@hotmail.com>",
    "committer": "Bernardo Reckziegel <bernardo_cse@hotmail.com>",
    "message": "Increment version number to 0.2.2.9000\n",
    "time": 1664475757
  },
  "_maintainer": {
    "name": "Bernardo Reckziegel",
    "email": "bernardo_cse@hotmail.com",
    "login": "reckziegel",
    "twitter": "@ReckziegelB",
    "description": "",
    "uuid": 24939585
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 2.10",
      "role": "Depends"
    },
    {
      "package": "assertthat",
      "version": ">= 0.2.1",
      "role": "Imports"
    },
    {
      "package": "dplyr",
      "version": ">= 1.0.10",
      "role": "Imports"
    },
    {
      "package": "forcats",
      "version": ">= 0.5.2",
      "role": "Imports"
    },
    {
      "package": "ggdist",
      "version": ">= 3.2.0",
      "role": "Imports"
    },
    {
      "package": "ggplot2",
      "version": ">= 3.3.6",
      "role": "Imports"
    },
    {
      "package": "lubridate",
      "version": ">= 1.8.0",
      "role": "Imports"
    },
    {
      "package": "magrittr",
      "version": ">= 2.0.3",
      "role": "Imports"
    },
    {
      "package": "methods",
      "role": "Imports"
    },
    {
      "package": "mvtnorm",
      "version": ">= 1.1-3",
      "role": "Imports"
    },
    {
      "package": "purrr",
      "version": ">= 0.3.4",
      "role": "Imports"
    },
    {
      "package": "rlang",
      "version": ">= 1.0.6",
      "role": "Imports"
    },
    {
      "package": "scales",
      "version": ">= 1.2.1",
      "role": "Imports"
    },
    {
      "package": "stringr",
      "version": ">= 1.4.1",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "tibble",
      "version": ">= 3.1.8",
      "role": "Imports"
    },
    {
      "package": "tidyr",
      "version": ">= 1.2.1",
      "role": "Imports"
    },
    {
      "package": "vctrs",
      "version": ">= 0.4.1",
      "role": "Imports"
    },
    {
      "package": "nloptr",
      "version": ">= 2.0.3",
      "role": "Imports"
    },
    {
      "package": "crayon",
      "role": "Imports"
    },
    {
      "package": "NlcOptim",
      "version": ">= 0.6",
      "role": "Imports"
    },
    {
      "package": "copula",
      "role": "Suggests"
    },
    {
      "package": "covr",
      "role": "Suggests"
    },
    {
      "package": "ghyp",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "version": ">= 1.40",
      "role": "Suggests"
    },
    {
      "package": "markdown",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "roxygen2",
      "role": "Suggests"
    },
    {
      "package": "spelling",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.1.4",
      "role": "Suggests"
    },
    {
      "package": "xts",
      "version": ">= 0.12.1",
      "role": "Suggests"
    }
  ],
  "_owner": "reckziegel",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [],
  "_tags": [],
  "_topics": [
    "bayesian-inference",
    "entropy-pooling",
    "flexible-probabilities",
    "portolio-optimization",
    "risk-management",
    "scenarios",
    "views"
  ],
  "_stars": 21,
  "_contributors": [
    {
      "user": "reckziegel",
      "count": 85,
      "uuid": 24939585
    }
  ],
  "_userbio": {
    "uuid": 24939585,
    "type": "user",
    "name": "Bernardo Reckziegel",
    "followers": 53
  },
  "_downloads": {
    "count": 374,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/ffp"
  },
  "_mentions": 1,
  "_devurl": "https://github.com/reckziegel/ffp",
  "_searchresults": 38,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/ffp.html",
    "extra/manual.pdf",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "LICENSE"
  ],
  "_homeurl": "https://github.com/reckziegel/ffp",
  "_realowner": "reckziegel",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.1.0",
      "date": "2021-07-14"
    },
    {
      "version": "0.2.0",
      "date": "2022-02-17"
    },
    {
      "version": "0.2.1",
      "date": "2022-03-24"
    },
    {
      "version": "0.2.2",
      "date": "2022-09-29"
    }
  ],
  "_exports": [
    "as_ffp",
    "bind_probs",
    "bind_views",
    "bootstrap_scenarios",
    "crisp",
    "double_decay",
    "empirical_stats",
    "ens",
    "entropy_pooling",
    "exp_decay",
    "ffp",
    "ffp_moments",
    "fit_to_moments",
    "half_life",
    "is_ffp",
    "kernel_entropy",
    "kernel_normal",
    "new_ffp",
    "relative_entropy",
    "scenario_density",
    "scenario_histogram",
    "view_on_copula",
    "view_on_correlation",
    "view_on_covariance",
    "view_on_joint_distribution",
    "view_on_marginal_distribution",
    "view_on_mean",
    "view_on_rank",
    "view_on_volatility"
  ],
  "_datasets": [
    {
      "name": "db",
      "title": "Dataset used in Historical Scenarios with Fully Flexible Probabilities ('matrix' format).",
      "object": "db",
      "class": [
        "matrix",
        "array"
      ],
      "fields": [
        "SWAP2YR",
        "SWAP10YR",
        "CDXIG OTR",
        "S&P 500",
        "Dollar Index",
        "Crude",
        "Gold",
        "VIX",
        "10YR Inflation Swap Rate"
      ],
      "rows": 1083,
      "table": true,
      "tojson": true
    },
    {
      "name": "db_tbl",
      "title": "Dataset used in Historical Scenarios with Fully Flexible Probabilities ('tibble' format).",
      "object": "db_tbl",
      "class": [
        "tbl_df",
        "tbl",
        "data.frame"
      ],
      "fields": [
        "SWAP2YR",
        "SWAP10YR",
        "CDXIG OTR",
        "S&P 500",
        "Dollar Index",
        "Crude",
        "Gold",
        "VIX",
        "10YR Inflation Swap Rate"
      ],
      "rows": 1083,
      "table": true,
      "tojson": true
    }
  ],
  "_help": [
    {
      "page": "autoplot",
      "title": "Inspection of a 'ffp' object with ggplot2",
      "topics": [
        "autoplot.ffp",
        "plot.ffp"
      ]
    },
    {
      "page": "bind_probs",
      "title": "Stack Flexible Probabilities",
      "topics": [
        "bind_probs"
      ]
    },
    {
      "page": "bind_views",
      "title": "Stack Different Views",
      "topics": [
        "bind_views"
      ]
    },
    {
      "page": "bootstrap_scenarios",
      "title": "Flexible Probabilities Driven Bootstrap",
      "topics": [
        "bootstrap_scenarios",
        "bootstrap_scenarios.data.frame",
        "bootstrap_scenarios.matrix",
        "bootstrap_scenarios.numeric",
        "bootstrap_scenarios.tbl",
        "bootstrap_scenarios.ts",
        "bootstrap_scenarios.xts"
      ]
    },
    {
      "page": "crisp",
      "title": "Full Information by Market Conditioning",
      "topics": [
        "crisp",
        "crisp.data.frame",
        "crisp.default",
        "crisp.matrix",
        "crisp.numeric",
        "crisp.tbl_df",
        "crisp.ts",
        "crisp.xts"
      ]
    },
    {
      "page": "db",
      "title": "Dataset used in Historical Scenarios with Fully Flexible Probabilities ('matrix' format).",
      "topics": [
        "db"
      ]
    },
    {
      "page": "db_tbl",
      "title": "Dataset used in Historical Scenarios with Fully Flexible Probabilities ('tibble' format).",
      "topics": [
        "db_tbl"
      ]
    },
    {
      "page": "double_decay",
      "title": "Flexible Probabilities using Partial Information",
      "topics": [
        "double_decay",
        "double_decay.data.frame",
        "double_decay.default",
        "double_decay.matrix",
        "double_decay.numeric",
        "double_decay.tbl",
        "double_decay.ts",
        "double_decay.xts"
      ]
    },
    {
      "page": "empirical_stats",
      "title": "Summary Statistics for Empirical Distributions",
      "topics": [
        "empirical_stats",
        "empirical_stats.data.frame",
        "empirical_stats.default",
        "empirical_stats.matrix",
        "empirical_stats.numeric",
        "empirical_stats.tbl_df",
        "empirical_stats.ts",
        "empirical_stats.xts"
      ]
    },
    {
      "page": "ens",
      "title": "Effective Number of Scenarios",
      "topics": [
        "ens"
      ]
    },
    {
      "page": "entropy_pooling",
      "title": "Numerical Entropy Minimization",
      "topics": [
        "entropy_pooling"
      ]
    },
    {
      "page": "exp_decay",
      "title": "Full Information by Exponential Decay",
      "topics": [
        "exp_decay",
        "exp_decay.data.frame",
        "exp_decay.default",
        "exp_decay.matrix",
        "exp_decay.numeric",
        "exp_decay.tbl",
        "exp_decay.ts",
        "exp_decay.xts"
      ]
    },
    {
      "page": "ffp",
      "title": "Manipulate the 'ffp' Class",
      "topics": [
        "as_ffp",
        "as_ffp.default",
        "as_ffp.integer",
        "ffp",
        "is_ffp"
      ]
    },
    {
      "page": "ffp_moments",
      "title": "Moments with Flexible Probabilities",
      "topics": [
        "ffp_moments",
        "ffp_moments.data.frame",
        "ffp_moments.default",
        "ffp_moments.matrix",
        "ffp_moments.numeric",
        "ffp_moments.tbl_df",
        "ffp_moments.xts"
      ]
    },
    {
      "page": "half_life",
      "title": "Half-Life Calculation",
      "topics": [
        "half_life"
      ]
    },
    {
      "page": "kernel_entropy",
      "title": "Partial Information Kernel-Damping",
      "topics": [
        "kernel_entropy",
        "kernel_entropy.data.frame",
        "kernel_entropy.default",
        "kernel_entropy.matrix",
        "kernel_entropy.numeric",
        "kernel_entropy.tbl_df",
        "kernel_entropy.ts",
        "kernel_entropy.xts"
      ]
    },
    {
      "page": "kernel_normal",
      "title": "Full Information by Kernel-Damping",
      "topics": [
        "kernel_normal",
        "kernel_normal.data.frame",
        "kernel_normal.default",
        "kernel_normal.matrix",
        "kernel_normal.numeric",
        "kernel_normal.tbl_df",
        "kernel_normal.ts",
        "kernel_normal.xts"
      ]
    },
    {
      "page": "relative_entropy",
      "title": "Relative Entropy",
      "topics": [
        "relative_entropy"
      ]
    },
    {
      "page": "scenario_density",
      "title": "Plot Scenarios",
      "topics": [
        "scenario_density",
        "scenario_histogram"
      ]
    },
    {
      "page": "view_on_copula",
      "title": "Views on Copulas",
      "topics": [
        "view_on_copula",
        "view_on_copula.default",
        "view_on_copula.matrix",
        "view_on_copula.tbl_df",
        "view_on_copula.xts"
      ]
    },
    {
      "page": "view_on_correlation",
      "title": "Views on Correlation Structure",
      "topics": [
        "view_on_correlation",
        "view_on_correlation.default",
        "view_on_correlation.matrix",
        "view_on_correlation.tbl_df",
        "view_on_correlation.xts"
      ]
    },
    {
      "page": "view_on_joint_distribution",
      "title": "Views on Joint Distribution",
      "topics": [
        "view_on_joint_distribution",
        "view_on_joint_distribution.default",
        "view_on_joint_distribution.matrix",
        "view_on_joint_distribution.tbl_df",
        "view_on_joint_distribution.xts"
      ]
    },
    {
      "page": "view_on_marginal_distribution",
      "title": "Views on Marginal Distribution",
      "topics": [
        "view_on_marginal_distribution",
        "view_on_marginal_distribution.default",
        "view_on_marginal_distribution.matrix",
        "view_on_marginal_distribution.tbl_df",
        "view_on_marginal_distribution.xts"
      ]
    },
    {
      "page": "view_on_mean",
      "title": "Views on Expected Returns",
      "topics": [
        "view_on_mean",
        "view_on_mean.default",
        "view_on_mean.matrix",
        "view_on_mean.tbl_df",
        "view_on_mean.xts"
      ]
    },
    {
      "page": "view_on_rank",
      "title": "Views on Relative Performance",
      "topics": [
        "view_on_rank",
        "view_on_rank.default",
        "view_on_rank.matrix",
        "view_on_rank.tbl_df",
        "view_on_rank.xts"
      ]
    },
    {
      "page": "view_on_volatility",
      "title": "Views on Volatility",
      "topics": [
        "view_on_volatility",
        "view_on_volatility.default",
        "view_on_volatility.matrix",
        "view_on_volatility.tbl_df",
        "view_on_volatility.xts"
      ]
    }
  ],
  "_readme": "https://github.com/reckziegel/ffp/raw/HEAD/README.md",
  "_rundeps": [
    "assertthat",
    "cli",
    "cpp11",
    "crayon",
    "distributional",
    "dplyr",
    "farver",
    "forcats",
    "generics",
    "ggdist",
    "ggplot2",
    "glue",
    "gtable",
    "isoband",
    "labeling",
    "lifecycle",
    "lubridate",
    "magrittr",
    "MASS",
    "mvtnorm",
    "NlcOptim",
    "nloptr",
    "numDeriv",
    "pillar",
    "pkgconfig",
    "purrr",
    "quadprog",
    "R6",
    "RColorBrewer",
    "Rcpp",
    "rlang",
    "S7",
    "scales",
    "stringi",
    "stringr",
    "tibble",
    "tidyr",
    "tidyselect",
    "timechange",
    "utf8",
    "vctrs",
    "viridisLite",
    "withr"
  ],
  "_vignettes": [
    {
      "source": "how-does-EP-work.Rmd",
      "filename": "how-does-EP-work.html",
      "title": "How does EP work?",
      "author": "Bernardo Reckziegel",
      "engine": "knitr::rmarkdown",
      "headings": [],
      "created": "2022-09-28 14:00:38",
      "modified": "2022-09-28 14:00:38",
      "commits": 1
    },
    {
      "source": "views.Rmd",
      "filename": "views.html",
      "title": "Views",
      "author": "Bernardo Reckziegel",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Views on Expected Returns",
        "Views on Volatility",
        "Views on Correlation",
        "Views on Relative Performance",
        "Views on Marginal Distribution",
        "Views on Copulas"
      ],
      "created": "2022-09-28 14:00:38",
      "modified": "2022-09-29 13:22:32",
      "commits": 4
    }
  ],
  "_score": 5.90200289135073,
  "_indexed": true,
  "_nocasepkg": "ffp",
  "_universes": [
    "reckziegel"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.2.2.9000",
      "date": "2026-10-15T07:32:11.000Z",
      "distro": "resolute",
      "commit": "da655b211d72304d7bf436a5116fb3b4c40d5a0f",
      "fileid": "https://r2.ropensci.org/208e6d8d3e6b514d15d02b8dcca4c243b74daa2605b1bbc646ffef2eced908d0",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/reckziegel/actions/runs/38698397085"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "0.2.2.9000",
      "date": "2026-10-15T07:32:21.000Z",
      "distro": "resolute",
      "commit": "da655b211d72304d7bf436a5116fb3b4c40d5a0f",
      "fileid": "https://r2.ropensci.org/d8f7461b3b1c7dd457c24baa7917851e569b830511e560e8a6f2f5f3de2c7042",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/reckziegel/actions/runs/38698397085"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.2.2.9000",
      "date": "2026-10-15T08:26:01.000Z",
      "commit": "da655b211d72304d7bf436a5116fb3b4c40d5a0f",
      "fileid": "https://r2.ropensci.org/679f706979802ddb47cf303c8e2927cafbad3491f010d35d70d108ff6891382e",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/reckziegel/actions/runs/38698397085"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "0.2.2.9000",
      "date": "2026-10-15T08:22:58.000Z",
      "commit": "da655b211d72304d7bf436a5116fb3b4c40d5a0f",
      "fileid": "https://r2.ropensci.org/46443f9d35d4a166d4a4313cba186f7c6c3765cc15ac2d24e9e36aa4c966f9bf",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/reckziegel/actions/runs/38698397085"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.2.2.9000",
      "date": "2026-10-15T07:31:53.000Z",
      "commit": "da655b211d72304d7bf436a5116fb3b4c40d5a0f",
      "fileid": "https://r2.ropensci.org/c2096a0c483b086f5a3cd7736f85e09751a16af88a46fa770e235e38ae1be68d",
      "status": "success",
      "buildurl": "https://github.com/r-universe/reckziegel/actions/runs/38698397085"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.2.2.9000",
      "date": "2026-10-15T07:30:50.000Z",
      "commit": "da655b211d72304d7bf436a5116fb3b4c40d5a0f",
      "fileid": "https://r2.ropensci.org/4e152ac53919826c9f8dc910f776baead1a3be5076ac8e34781d07b0f2697615",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/reckziegel/actions/runs/38698397085"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.2.2.9000",
      "date": "2026-10-15T07:30:52.000Z",
      "commit": "da655b211d72304d7bf436a5116fb3b4c40d5a0f",
      "fileid": "https://r2.ropensci.org/a60bdca61fb55e9e5a2701b2e8a21b70047a8e53034249d3e76dfd1c10864583",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/reckziegel/actions/runs/38698397085"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "0.2.2.9000",
      "date": "2026-10-15T07:30:53.000Z",
      "commit": "da655b211d72304d7bf436a5116fb3b4c40d5a0f",
      "fileid": "https://r2.ropensci.org/e9afaa4bc65a02a7bc164480ed3c0341dd82d4c871be7f7069a1ad250a9c0c50",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/reckziegel/actions/runs/38698397085"
    }
  ]
}