Peer-to-Peer Lending Investment Budget Tool

Budget & Goals Setup

Platform Allocation

Add New P2P Platform

Your Platform Allocations

No platforms added yet.

Total P2P Capital: $0.00

Total Allocated: $0.00

Status: Awaiting setup...

Record Investment/Disbursement

Disbursement Log for Selected Platform:

  • No disbursements recorded or no platform selected.

Total Disbursed on this Platform: $0.00

Performance & Projections

Overall Investment Summary

Total P2P Investment Capital: N/A

Total Capital Allocated to Platforms: N/A

Total Capital Actually Disbursed: N/A

Projected Earnings (Based on Disbursed Amounts & Expected Rates)

Weighted Average Expected Annual Rate: N/A %

Projected Gross Annual Earnings: $N/A

Platform Allocation & Disbursement Overview

No platforms allocated or disbursements made yet.

Prepared for: ${p2pData.userName}

`; pdfHtml += `

Report Date: ${new Date().toLocaleDateString()}

`; pdfHtml += `

Investment Goals

`; pdfHtml += `

Total P2P Investment Capital: $${p2pData.totalCapital.toFixed(2)}

`; pdfHtml += `

Desired Overall Annual Return: ${p2pData.desiredReturn.toFixed(1)}%

`; pdfHtml += `

Investment Horizon: ${p2pData.horizon || 'N/A'}

`; if(p2pData.riskTolerance) pdfHtml += `

Overall Risk Tolerance: ${p2pData.riskTolerance}

`; pdfHtml += `

Platform Allocation Plan

`; if (p2pData.platforms.length > 0) { pdfHtml += ``; p2pData.platforms.forEach(p => { const percentOfCapital = p2pData.totalCapital > 0 ? (p.allocation / p2pData.totalCapital * 100).toFixed(1) : 'N/A'; pdfHtml += ``; }); pdfHtml += `
Platform NameAllocated ($)Expected Rate (%)% of Total CapitalRisk Level
${p.name}${p.allocation.toFixed(2)}${p.expectedRate.toFixed(1)}${percentOfCapital}%${p.risk || 'N/A'}
`; } else { pdfHtml += `

No platforms allocated.

`; } const totalDisbursedAllPlatforms = p2pData.platforms.reduce((sum, plat) => sum + plat.disbursements.reduce((dSum, disb) => dSum + disb.amount, 0), 0); pdfHtml += `

Disbursement & Projections Summary

`; pdfHtml += `

Total Amount Disbursed: $${totalDisbursedAllPlatforms.toFixed(2)}

`; let weightedRateNumerator = 0; p2pData.platforms.forEach(p => { const platformDisbursed = p.disbursements.reduce((s,d) => s + d.amount, 0); weightedRateNumerator += platformDisbursed * p.expectedRate; }); const weightedAvgRate = totalDisbursedAllPlatforms > 0 ? (weightedRateNumerator / totalDisbursedAllPlatforms) : 0; pdfHtml += `

Weighted Average Expected Rate (on disbursed): ${weightedAvgRate.toFixed(2)}%

`; pdfHtml += `

Projected Gross Annual Earnings: $${(totalDisbursedAllPlatforms * (weightedAvgRate / 100)).toFixed(2)}

`; pdfPrintEl.innerHTML = pdfHtml; window.print(); pdfPrintEl.innerHTML = ''; // Clear after }); // --- Initialization --- function setDefaultP2PDates() { const today = new Date().toISOString().split('T')[0]; if (p2pDisbursementDateInput) p2pDisbursementDateInput.value = today; } updateP2PTabDisplay(); setDefaultP2PDates(); renderP2PPlatforms(); // Includes updating allocation summary and populating selects renderP2PProjectionsTab(); // Initial render of projections });
Scroll to Top