diff --git a/src/app/hashtag/[tag]/TradePanel.tsx b/src/app/hashtag/[tag]/TradePanel.tsx index 6823d10..8dd340d 100644 --- a/src/app/hashtag/[tag]/TradePanel.tsx +++ b/src/app/hashtag/[tag]/TradePanel.tsx @@ -102,23 +102,35 @@ export function TradePanel({ hashtag, balance, longPosition, shortPosition, fund

LONG position

- {longPosition ? ( - <> -

{formatNumber(longPosition.shares)} shares

-

avg {formatCurrency(longPosition.avgBuyPrice)}

- - ) : ( + {longPosition ? (() => { + const pnl = (hashtag.currentPrice - longPosition.avgBuyPrice) * longPosition.shares + return ( + <> +

{formatNumber(longPosition.shares)} shares

+

avg {formatCurrency(longPosition.avgBuyPrice)}

+

= 0 ? 'text-emerald-400' : 'text-red-400'}`}> + {pnl >= 0 ? '+' : ''}{formatCurrency(pnl)} +

+ + ) + })() : (

None

)}

SHORT position

- {shortPosition ? ( - <> -

{formatNumber(shortPosition.shares)} shares

-

avg {formatCurrency(shortPosition.avgBuyPrice)}

- - ) : ( + {shortPosition ? (() => { + const pnl = (shortPosition.avgBuyPrice - hashtag.currentPrice) * shortPosition.shares + return ( + <> +

{formatNumber(shortPosition.shares)} shares

+

avg {formatCurrency(shortPosition.avgBuyPrice)}

+

= 0 ? 'text-emerald-400' : 'text-red-400'}`}> + {pnl >= 0 ? '+' : ''}{formatCurrency(pnl)} +

+ + ) + })() : (

None

)}