action portfoliooptimizer_post_portfolio_analysis_ulcer_performance_index { label: "Ulcer Performance Index" description: "Compute the Ulcer Performance Index of one or several portfolio(s).\n\nReferences\n* Carl R. Bacon, Practical Portfolio Performance Measurement and Attribution\n* [Peter G. Martin, Ulcer Index, An Alternative Approach to the Measurement of Investment Risk & Risk-Adjusted Performance](http://www.tangotools.com/ui/ui.htm)\n" provider: portfoliooptimizer method: POST path: "/portfolio/analysis/ulcer-performance-index" encoding: json input: { type: "object" required: ["portfolios", "riskFreeRate"] properties: { portfolios: { type: "array" items: { type: "object" required: ["portfolioValues"] properties: { portfolioValues: { type: "array" description: "portfolioValues[t] is the value of the portfolio at the time t" items: { type: "number" } } } } } riskFreeRate: { type: "number" description: "The risk free rate" } } } output: { type: "object" required: ["portfolios"] properties: { portfolios: { type: "array" items: { type: "object" required: ["portfolioUlcerPerformanceIndex"] properties: { portfolioUlcerPerformanceIndex: { type: "number" description: "The Ulcer Performance Index of the portfolio" } } } } } } }