@railpath/finance-toolkit
Version:
Production-ready finance library for portfolio construction, risk analytics, quantitative metrics, and ML-based regime detection
40 lines (39 loc) • 1.08 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.PortfolioOptimizationResultSchema = void 0;
const zod_1 = require("zod");
exports.PortfolioOptimizationResultSchema = zod_1.z.object({
/**
* Optimal weights for each asset
*/
weights: zod_1.z.array(zod_1.z.number()),
/**
* Expected portfolio return
*/
expectedReturn: zod_1.z.number(),
/**
* Portfolio variance
*/
variance: zod_1.z.number(),
/**
* Portfolio volatility (standard deviation)
*/
volatility: zod_1.z.number(),
/**
* Sharpe ratio (if risk-free rate provided)
*/
sharpeRatio: zod_1.z.number().optional(),
/**
* Optimization method used
*/
method: zod_1.z.enum(['minimumVariance', 'maximumSharpe', 'targetReturn']),
/**
* Convergence information
*/
converged: zod_1.z.boolean(),
iterations: zod_1.z.number().optional(),
/**
* Lagrange multipliers for constraints
*/
lagrangeMultipliers: zod_1.z.array(zod_1.z.number()).optional(),
});