Private Market Liquidity Assessment Tool
Input Investment Details
Assess Liquidity Factors
Liquidity Assessment Results
Please input details on previous tabs to see results.
Please complete "Investment Details" and "Liquidity Factors" tabs first.
'; return; } const inv = liquidityAssessmentData.investment; const fac = liquidityAssessmentData.factors; let estimatedTimeToLiquidity = inv.holdingPeriod; // Base time in years let potentialLiquidityDiscount = 0; // Base discount % let liquidityRiskScore = 'Medium'; // Default // Adjust Time to Liquidity based on factors if (fac.marketConditions === 'Bear') estimatedTimeToLiquidity += 2; if (fac.marketConditions === 'Bull') estimatedTimeToLiquidity = Math.max(1, estimatedTimeToLiquidity - 1); if (fac.secondaryMarketActivity === 'Low' || fac.secondaryMarketActivity === 'Non-existent') estimatedTimeToLiquidity += 3; if (fac.secondaryMarketActivity === 'High') estimatedTimeToLiquidity = Math.max(1, estimatedTimeToLiquidity - 0.5); if (fac.exitStrategy === 'Liquidation') estimatedTimeToLiquidity -= 1; // Faster but at a cost if (fac.exitStrategy === 'IPO') estimatedTimeToLiquidity += 2; // Longer process // Adjust Liquidity Discount based on factors switch (inv.assetClass) { case 'Private Equity': potentialLiquidityDiscount += 15; break; case 'Private Credit': potentialLiquidityDiscount += 10; break; case 'Real Estate': potentialLiquidityDiscount += 12; break; case 'Infrastructure': potentialLiquidityDiscount += 8; break; case 'Venture Capital': potentialLiquidityDiscount += 25; break; case 'Other': potentialLiquidityDiscount += 18; break; } if (fac.marketConditions === 'Bear') potentialLiquidityDiscount += 10; if (fac.marketConditions === 'Volatile') potentialLiquidityDiscount += 5; if (fac.marketConditions === 'Bull') potentialLiquidityDiscount = Math.max(0, potentialLiquidityDiscount - 5); if (fac.secondaryMarketActivity === 'Low' || fac.secondaryMarketActivity === 'Non-existent') potentialLiquidityDiscount += 15; if (fac.investorDemand === 'Low') potentialLiquidityDiscount += 7; if (fac.dealComplexity === 'High') potentialLiquidityDiscount += 5; if (fac.regulatoryEnvironment === 'Restrictive') potentialLiquidityDiscount += 3; // Determine Liquidity Risk Score if (estimatedTimeToLiquidity > 7 || potentialLiquidityDiscount > 20) { liquidityRiskScore = 'High'; } else if (estimatedTimeToLiquidity > 4 || potentialLiquidityDiscount > 10) { liquidityRiskScore = 'Medium'; } else { liquidityRiskScore = 'Low'; } // Store calculated results liquidityAssessmentData.results = { estimatedTimeToLiquidity: estimatedTimeToLiquidity.toFixed(1), // Years potentialLiquidityDiscount: potentialLiquidityDiscount.toFixed(2), // Percentage liquidityRiskScore: liquidityRiskScore }; let html = `Based on your inputs, here is the preliminary liquidity assessment:
Investment Name:
${inv.name}
Asset Class:
${inv.assetClass}
Investment Amount:
${formatCurrency(inv.amount)}
Estimated Time to Liquidity:
${liquidityAssessmentData.results.estimatedTimeToLiquidity} Years
Potential Liquidity Discount:
${formatPercentage(liquidityAssessmentData.results.potentialLiquidityDiscount)}
Liquidity Risk Score:
${liquidityAssessmentData.results.liquidityRiskScore}
${inv.notes ? `
Notes:
${inv.notes}
` : ''}
`;
liquidityResultsDisplay.innerHTML = html;
}
// --- PDF Generation Logic ---
/**
* Generates a PDF report of the liquidity assessment.
*/
window.generatePDF = async function() {
if (!liquidityAssessmentData.investment || !liquidityAssessmentData.factors || !liquidityAssessmentData.results) {
showCustomMessageBox('Please complete all sections of the tool before generating the PDF report.');
return;
}
pdfContentContainer.innerHTML = ''; // Clear previous content
const inv = liquidityAssessmentData.investment;
const fac = liquidityAssessmentData.factors;
const res = liquidityAssessmentData.results;
let pdfHtml = `
Private Market Liquidity Report
Investment Details
Investment Name:${inv.name}
Asset Class:${inv.assetClass}
Investment Amount:${formatCurrency(inv.amount)}
Investment Date:${formatDate(inv.date)}
Expected Holding Period:${inv.holdingPeriod} Years
Target IRR:${formatPercentage(inv.targetIRR)}
${inv.notes ? `Notes:${inv.notes}
` : ''}
Liquidity Factors
Current Market Conditions:${fac.marketConditions}
Secondary Market Activity:${fac.secondaryMarketActivity}
General Investor Demand:${fac.investorDemand}
Primary Exit Strategy:${fac.exitStrategy}
Deal Complexity / Covenants:${fac.dealComplexity}
Regulatory Environment:${fac.regulatoryEnvironment}
Liquidity Assessment Results
Estimated Time to Liquidity:${res.estimatedTimeToLiquidity} Years
Potential Liquidity Discount:${formatPercentage(res.potentialLiquidityDiscount)}
Liquidity Risk Score:${res.liquidityRiskScore}