Stp Calculator

.stp-container { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; max-width: 800px; margin: 20px auto; padding: 25px; border: 1px solid #e1e1e1; border-radius: 12px; background-color: #ffffff; box-shadow: 0 4px 20px rgba(0,0,0,0.08); color: #333; } .stp-header { text-align: center; margin-bottom: 30px; } .stp-header h2 { color: #1a3a5a; margin-bottom: 10px; font-size: 28px; } .stp-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; } @media (max-width: 600px) { .stp-grid { grid-template-columns: 1fr; } } .stp-input-group { margin-bottom: 15px; } .stp-input-group label { display: block; margin-bottom: 8px; font-weight: 600; font-size: 14px; color: #555; } .stp-input-group input { width: 100%; padding: 12px; border: 1px solid #ccc; border-radius: 6px; box-sizing: border-box; font-size: 16px; } .stp-button { grid-column: span 2; background-color: #2c3e50; color: white; padding: 15px; border: none; border-radius: 6px; font-size: 18px; font-weight: bold; cursor: pointer; transition: background 0.3s; margin-top: 10px; } @media (max-width: 600px) { .stp-button { grid-column: span 1; } } .stp-button:hover { background-color: #34495e; } .stp-results { margin-top: 30px; padding: 20px; background-color: #f8f9fa; border-radius: 8px; display: none; } .stp-result-item { display: flex; justify-content: space-between; padding: 10px 0; border-bottom: 1px solid #eee; } .stp-result-item:last-child { border-bottom: none; font-weight: bold; font-size: 1.1em; color: #27ae60; } .stp-content { margin-top: 40px; line-height: 1.6; color: #444; } .stp-content h3 { color: #1a3a5a; margin-top: 25px; } .stp-content ul { padding-left: 20px; }

Systematic Transfer Plan (STP) Calculator

Plan your mutual fund transfers and estimate future portfolio value.

Total Value in Target Fund: 0
Remaining Value in Source Fund: 0
Total Combined Portfolio Value: 0
Total Estimated Profit: 0

What is a Systematic Transfer Plan (STP)?

A Systematic Transfer Plan (STP) is a strategy in mutual fund investing where an investor transfers a fixed amount of money from one mutual fund scheme (usually a debt or liquid fund) to another (usually an equity fund) at regular intervals. It is essentially an automated way to rebalance your portfolio and average out the cost of investment in volatile markets.

Why Use an STP Calculator?

Manually calculating the returns for an STP is complex because money is moving between two different assets with two different rates of return. Our STP calculator helps you:

  • Mitigate Risk: See how moving money gradually reduces the impact of market volatility compared to a lump sum investment.
  • Project Growth: Estimate the final value of both your source and target funds simultaneously.
  • Optimize Liquidity: Understand how much remains in your low-risk source fund while building equity exposure.

How Does the STP Work?

When you start an STP, your bulk capital stays in a "Source Fund" (like a Liquid Fund) which earns a modest but stable return. Every month, a fixed portion is redeemed from the Source Fund and invested in the "Target Fund" (like a Nifty 50 Index Fund). This process continues until the specified tenure ends or the source fund is exhausted.

Example Calculation

Suppose you have 1,000,000 in a Debt Fund earning 6% annually. You decide to transfer 50,000 every month into an Equity Fund earning 12% annually for 12 months.

  • Every month, 50,000 moves to Equity.
  • The remaining balance in the Debt Fund continues to earn 0.5% monthly interest.
  • The accumulated balance in the Equity Fund earns 1% monthly interest.
  • By the end of the year, you have a diversified portfolio with returns optimized from both ends.
function calculateSTP() { var initialAmount = parseFloat(document.getElementById('initialAmount').value); var transferAmount = parseFloat(document.getElementById('transferAmount').value); var tenure = parseInt(document.getElementById('tenureMonths').value); var sourceRateAnn = parseFloat(document.getElementById('sourceReturn').value); var targetRateAnn = parseFloat(document.getElementById('targetReturn').value); if (isNaN(initialAmount) || isNaN(transferAmount) || isNaN(tenure) || isNaN(sourceRateAnn) || isNaN(targetRateAnn)) { alert("Please enter valid numbers in all fields."); return; } if (transferAmount * tenure > initialAmount * 1.5) { alert("Warning: Total transfer amount exceeds realistic source fund limits."); } var sourceMonthlyRate = (sourceRateAnn / 100) / 12; var targetMonthlyRate = (targetRateAnn / 100) / 12; var currentSourceBalance = initialAmount; var currentTargetBalance = 0; for (var i = 1; i = transferAmount) { currentSourceBalance -= transferAmount; currentTargetBalance += transferAmount; } else { // If remaining balance is less than transfer amount, transfer all currentTargetBalance += currentSourceBalance; currentSourceBalance = 0; } // 2. Both funds earn interest for the month currentSourceBalance = currentSourceBalance * (1 + sourceMonthlyRate); currentTargetBalance = currentTargetBalance * (1 + targetMonthlyRate); } var totalValue = currentSourceBalance + currentTargetBalance; var totalProfit = totalValue – initialAmount; document.getElementById('resTargetValue').innerText = currentTargetBalance.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); document.getElementById('resSourceValue').innerText = currentSourceBalance.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); document.getElementById('resTotalValue').innerText = totalValue.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); document.getElementById('resProfit').innerText = totalProfit.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); document.getElementById('stpResults').style.display = 'block'; }

Leave a Reply

Your email address will not be published. Required fields are marked *