From 2418f111427d3d77985f217b17f8c05ab09228fb Mon Sep 17 00:00:00 2001 From: hemangjoshi37a Date: Sun, 15 Feb 2026 16:46:38 +1100 Subject: [PATCH] Fix UI/UX issues found during Playwright audit - Strip raw markdown (**bold**) from Top Picks, Stocks to Avoid, and StockDetail banner text - Hide empty Top Picks section when no BUY stocks exist - Show all SELL stocks in Stocks to Avoid (remove 5-stock limit) - Fix "-0.0%" negative zero display in History page returns - Fix "1 sections" grammar in AIAnalysisPanel - Replace dead footer links with real GitHub/Twitter URLs - Fix Portfolio Simulator SELL dilution calculation Co-Authored-By: Claude Opus 4.6 --- frontend/backend/database.py | 4 +- frontend/backend/recommendations.db | Bin 25595904 -> 25948160 bytes frontend/src/components/AIAnalysisPanel.tsx | 2 +- frontend/src/components/Footer.tsx | 8 +- .../src/components/PortfolioSimulator.tsx | 3 +- frontend/src/components/TopPicks.tsx | 4 +- frontend/src/pages/Dashboard.tsx | 4 +- frontend/src/pages/History.tsx | 70 ++++++++++-------- frontend/src/pages/StockDetail.tsx | 4 +- 9 files changed, 57 insertions(+), 42 deletions(-) diff --git a/frontend/backend/database.py b/frontend/backend/database.py index c031466c..35f956b8 100644 --- a/frontend/backend/database.py +++ b/frontend/backend/database.py @@ -1497,12 +1497,12 @@ def update_daily_recommendation_summary(date: str): for s in buy_stocks[:5] ] - # Stocks to avoid: bottom-ranked SELL stocks (last 5) + # Stocks to avoid: all SELL stocks stocks_to_avoid = [ {'symbol': s['symbol'], 'company_name': s['company_name'], 'confidence': s['confidence'], 'reason': s['reason'], 'rank': s['rank']} - for s in sell_stocks[-5:] + for s in sell_stocks ] cursor.execute(""" diff --git a/frontend/backend/recommendations.db b/frontend/backend/recommendations.db index 393c3ac84c0cab833757d74016c2c2c845515218..9b5e8dbe3d70896d5a8b2c9fcb5ab2fbf69f7059 100644 GIT binary patch delta 186150 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 diff --git a/frontend/src/components/AIAnalysisPanel.tsx b/frontend/src/components/AIAnalysisPanel.tsx index 52e3dff0..67d21b84 100644 --- a/frontend/src/components/AIAnalysisPanel.tsx +++ b/frontend/src/components/AIAnalysisPanel.tsx @@ -120,7 +120,7 @@ export default function AIAnalysisPanel({ AI Analysis - {sections.length} sections + {sections.length} {sections.length === 1 ? 'section' : 'sections'} {/* Social & Copyright */}
- + - + © {new Date().getFullYear()} diff --git a/frontend/src/components/PortfolioSimulator.tsx b/frontend/src/components/PortfolioSimulator.tsx index 745ea68a..839b3356 100644 --- a/frontend/src/components/PortfolioSimulator.tsx +++ b/frontend/src/components/PortfolioSimulator.tsx @@ -142,7 +142,8 @@ function calculateSmartTrades( delete openPositions[symbol]; } - stocksTracked++; + // SELL exits position to cash — don't count in stocksTracked + // since no capital is deployed and return is 0 } }); diff --git a/frontend/src/components/TopPicks.tsx b/frontend/src/components/TopPicks.tsx index b57e6cba..579e3ad0 100644 --- a/frontend/src/components/TopPicks.tsx +++ b/frontend/src/components/TopPicks.tsx @@ -44,7 +44,7 @@ export default function TopPicks({ picks }: TopPicksProps) { BUY
-

{pick.reason}

+

{pick.reason?.replace(/\*\*/g, '').replace(/\*/g, '')}

-

{stock.reason}

+

{stock.reason?.replace(/\*\*/g, '').replace(/\*/g, '')}

diff --git a/frontend/src/pages/Dashboard.tsx b/frontend/src/pages/Dashboard.tsx index a5d1cb57..480bcd59 100644 --- a/frontend/src/pages/Dashboard.tsx +++ b/frontend/src/pages/Dashboard.tsx @@ -540,7 +540,9 @@ export default function Dashboard() { {/* Top Picks and Avoid Section - Side by Side Compact */}
- + {recommendation.top_picks.length > 0 && ( + + )}
diff --git a/frontend/src/pages/History.tsx b/frontend/src/pages/History.tsx index 9c4b341d..6e550fbc 100644 --- a/frontend/src/pages/History.tsx +++ b/frontend/src/pages/History.tsx @@ -35,6 +35,13 @@ function getValueColorClass(value: number): string { : 'text-red-500 dark:text-red-400'; } +// Format percentage without negative zero (e.g. "-0.0" becomes "0.0") +function fmtPct(val: number, decimals = 1): string { + const s = val.toFixed(decimals); + if (s === '-0.0' || s === '-0.00') return s.replace('-', ''); + return s; +} + // Investment Mode Toggle Component function InvestmentModeToggle({ mode, @@ -287,6 +294,8 @@ export default function History() { topPicksReturnDistribution: undefined as ReturnBucket[] | undefined, dateReturns: {} as Record, allBacktestData: {} as Record>, + dailyReturnsArray: [] as number[], + topPicksDailyReturns: [] as number[], }; } @@ -313,21 +322,19 @@ export default function History() { // Cumulative returns const cumulativeData: CumulativeReturnPoint[] = []; - let aiMultiplier = 1, indexMultiplier = 1; + let aiMultiplier = 1; - // Nifty daily returns + // Nifty50 price ratio approach: direct comparison to start price + // This avoids losing Nifty returns on days without backtest data const sortedNiftyDates = Object.keys(nifty50Prices).sort(); - const niftyDailyReturns: Record = {}; - for (let i = 1; i < sortedNiftyDates.length; i++) { - const prevPrice = nifty50Prices[sortedNiftyDates[i - 1]]; - const currPrice = nifty50Prices[sortedNiftyDates[i]]; - niftyDailyReturns[sortedNiftyDates[i]] = ((currPrice - prevPrice) / prevPrice) * 100; - } + const hasNiftyData = sortedNiftyDates.length > 0; + const niftyStartPrice = hasNiftyData ? nifty50Prices[sortedNiftyDates[0]] : null; - const getNiftyReturn = (date: string): number => { - if (niftyDailyReturns[date] !== undefined) return niftyDailyReturns[date]; + const getNiftyReturnForDate = (date: string): number => { + if (!hasNiftyData || !niftyStartPrice) return 0; const closestDate = sortedNiftyDates.find(d => d >= date) || sortedNiftyDates[sortedNiftyDates.length - 1]; - return (closestDate && niftyDailyReturns[closestDate] !== undefined) ? niftyDailyReturns[closestDate] : 0; + if (!closestDate || !nifty50Prices[closestDate]) return 0; + return ((nifty50Prices[closestDate] / niftyStartPrice) - 1) * 100; }; const dateReturnsMap: Record = {}; @@ -381,14 +388,13 @@ export default function History() { else if (weightedReturn < 0) { losses++; totalLossReturn += Math.abs(weightedReturn); } aiMultiplier *= (1 + weightedReturn / 100); - const indexDailyReturn = getNiftyReturn(date); - indexMultiplier *= (1 + indexDailyReturn / 100); + const niftyCumulativeReturn = getNiftyReturnForDate(date); cumulativeData.push({ date, value: Math.round(aiMultiplier * 10000) / 100, aiReturn: Math.round((aiMultiplier - 1) * 1000) / 10, - indexReturn: Math.round((indexMultiplier - 1) * 1000) / 10, + indexReturn: Math.round(niftyCumulativeReturn * 10) / 10, }); } } @@ -431,7 +437,7 @@ export default function History() { } const avgWin = wins > 0 ? totalWinReturn / wins : 0; - const avgLoss = losses > 0 ? totalLossReturn / losses : 1; + const avgLoss = losses > 0 ? totalLossReturn / losses : 0; riskMetrics = { sharpeRatio: Math.round(sharpeRatio * 100) / 100, @@ -492,8 +498,9 @@ export default function History() { { range: '2% to 3%', min: 2, max: 3, count: 0, stocks: [] }, { range: '> 3%', min: 3, max: Infinity, count: 0, stocks: [] }, ]; - let topPicksMultiplier = 1, topPicksIndexMultiplier = 1; + let topPicksMultiplier = 1; let latestTopPicksDateWithData: string | null = null; + const topPicksDailyReturnsArr: number[] = []; for (const date of sortedDates) { const rec = recommendations.find(r => r.date === date); @@ -511,14 +518,14 @@ export default function History() { if (dateCount > 0) { const avgReturn = dateReturn / dateCount; + topPicksDailyReturnsArr.push(avgReturn); topPicksMultiplier *= (1 + avgReturn / 100); - const indexDailyReturn = getNiftyReturn(date); - topPicksIndexMultiplier *= (1 + indexDailyReturn / 100); + const topPicksNiftyReturn = getNiftyReturnForDate(date); topPicksCumulative.push({ date, value: Math.round(topPicksMultiplier * 10000) / 100, aiReturn: Math.round((topPicksMultiplier - 1) * 1000) / 10, - indexReturn: Math.round((topPicksIndexMultiplier - 1) * 1000) / 10, + indexReturn: Math.round(topPicksNiftyReturn * 10) / 10, }); } } @@ -548,17 +555,19 @@ export default function History() { topPicksReturnDistribution: topPicksDistribution, dateReturns: dateReturnsMap, allBacktestData: allBacktest, + dailyReturnsArray: dailyReturns, + topPicksDailyReturns: topPicksDailyReturnsArr, }; }, [batchBacktestByDate, hasBacktestData, recommendations, nifty50Prices]); // Overall stats const overallStats = useMemo(() => { - if (recommendations.length > 0 && chartData.cumulativeReturns && chartData.cumulativeReturns.length > 0) { - const lastPoint = chartData.cumulativeReturns[chartData.cumulativeReturns.length - 1]; + if (recommendations.length > 0 && chartData.dailyReturnsArray && chartData.dailyReturnsArray.length > 0) { + const mean = chartData.dailyReturnsArray.reduce((a, b) => a + b, 0) / chartData.dailyReturnsArray.length; return { totalDays: recommendations.length, totalPredictions: accuracyMetrics.total_predictions, - avgDailyReturn: Math.round((lastPoint.aiReturn / chartData.cumulativeReturns.length) * 10) / 10, + avgDailyReturn: Math.round(mean * 10) / 10, avgMonthlyReturn: 0, overallAccuracy: Math.round(accuracyMetrics.success_rate * 100), bestDay: null, @@ -566,7 +575,7 @@ export default function History() { }; } return { totalDays: recommendations.length, totalPredictions: 0, avgDailyReturn: 0, avgMonthlyReturn: 0, overallAccuracy: 0, bestDay: null, worstDay: null }; - }, [recommendations, chartData.cumulativeReturns, accuracyMetrics]); + }, [recommendations, chartData.dailyReturnsArray, accuracyMetrics]); // Filtered stats for Performance Summary const filteredStats = useMemo(() => { @@ -578,14 +587,17 @@ export default function History() { return { totalDays: dates.length, avgDailyReturn: overallStats.avgDailyReturn, buySignals: signalTotals.buy, sellSignals: signalTotals.sell, holdSignals: signalTotals.hold }; } + const topPicksMean = chartData.topPicksDailyReturns.length > 0 + ? chartData.topPicksDailyReturns.reduce((a, b) => a + b, 0) / chartData.topPicksDailyReturns.length + : 0; return { totalDays: dates.length, - avgDailyReturn: 0, + avgDailyReturn: Math.round(topPicksMean * 10) / 10, buySignals: recommendations.reduce((acc, r) => acc + r.top_picks.length, 0), sellSignals: 0, holdSignals: 0, }; - }, [summaryMode, dates.length, overallStats.avgDailyReturn, recommendations]); + }, [summaryMode, dates.length, overallStats.avgDailyReturn, recommendations, chartData.topPicksDailyReturns]); // Date stats const dateStatsMap = useMemo(() => { @@ -1069,7 +1081,7 @@ export default function History() {
- {isPositive ? '+' : ''}{avgReturn.toFixed(1)}% + {isPositive ? '+' : ''}{fmtPct(avgReturn)}%
)}
@@ -1098,7 +1110,7 @@ export default function History() { Overall
- {overallStats.avgDailyReturn >= 0 ? '+' : ''}{overallStats.avgDailyReturn.toFixed(1)}% + {overallStats.avgDailyReturn >= 0 ? '+' : ''}{fmtPct(overallStats.avgDailyReturn)}%
{overallStats.overallAccuracy}% accurate @@ -1391,7 +1403,7 @@ export default function History() { ? 'bg-red-50 dark:bg-red-900/20 text-red-600 dark:text-red-400' : getValueColorClass(nextDayReturn) }`} title={bt?.hold_days ? `${bt.hold_days}d return` : '1d return'}> - {nextDayReturn >= 0 ? '+' : ''}{nextDayReturn.toFixed(1)}% + {nextDayReturn >= 0 ? '+' : ''}{fmtPct(nextDayReturn)}% {bt?.hold_days && /{bt.hold_days}d} )} @@ -1415,7 +1427,7 @@ export default function History() {
{[ { label: 'Days Tracked', value: filteredStats.totalDays.toString(), icon: , color: 'nifty', modal: 'daysTracked' as SummaryModalType }, - { label: 'Avg Return', value: `${filteredStats.avgDailyReturn >= 0 ? '+' : ''}${filteredStats.avgDailyReturn.toFixed(1)}%`, icon: , color: filteredStats.avgDailyReturn >= 0 ? 'emerald' : 'red', modal: 'avgReturn' as SummaryModalType }, + { label: 'Avg Return', value: `${filteredStats.avgDailyReturn >= 0 ? '+' : ''}${fmtPct(filteredStats.avgDailyReturn)}%`, icon: , color: filteredStats.avgDailyReturn >= 0 ? 'emerald' : 'red', modal: 'avgReturn' as SummaryModalType }, { label: summaryMode === 'topPicks' ? 'Top Picks' : 'Buy Signals', value: filteredStats.buySignals.toString(), icon: , color: 'emerald', modal: 'buySignals' as SummaryModalType }, { label: 'Sell Signals', value: filteredStats.sellSignals.toString(), icon: , color: 'red', modal: 'sellSignals' as SummaryModalType }, ].map(({ label, value, icon, color, modal }) => ( diff --git a/frontend/src/pages/StockDetail.tsx b/frontend/src/pages/StockDetail.tsx index a7100a43..c2853d81 100644 --- a/frontend/src/pages/StockDetail.tsx +++ b/frontend/src/pages/StockDetail.tsx @@ -1080,7 +1080,7 @@ export default function StockDetail() {
Top Pick: - {latestRecommendation.top_picks.find(p => p.symbol === symbol)?.reason} + {latestRecommendation.top_picks.find(p => p.symbol === symbol)?.reason?.replace(/\*\*/g, '').replace(/\*/g, '')}
@@ -1094,7 +1094,7 @@ export default function StockDetail() {
Avoid: - {latestRecommendation.stocks_to_avoid.find(s => s.symbol === symbol)?.reason} + {latestRecommendation.stocks_to_avoid.find(s => s.symbol === symbol)?.reason?.replace(/\*\*/g, '').replace(/\*/g, '')}