KC Portfolio
Enter password to continue
Incorrect password
body { background: #0f1117; color: #eef2ff; font-family: 'Inter', sans-serif; font-size: 15px; min-height: 100vh; } /* ── NAV ── */ nav { background: #171b26; border-bottom: 1px solid rgba(255,255,255,0.07); padding: 0 32px; display: flex; align-items: center; justify-content: space-between; height: 56px; position: sticky; top: 0; z-index: 50; } .nav-brand { font-weight: 600; font-size: 16px; color: #f5c842; letter-spacing: -0.3px; } .nav-tabs { display: flex; gap: 2px; } .tab-btn { background: none; border: none; color: #7882a4; padding: 7px 14px; border-radius: 8px; cursor: pointer; font-family: 'Inter', sans-serif; font-size: 13px; font-weight: 500; transition: all 0.15s; } .tab-btn:hover { background: #1e2333; color: #eef2ff; } .tab-btn.active { background: #1e2333; color: #eef2ff; } .nav-right { display: flex; align-items: center; gap: 12px; } .refresh-btn { background: rgba(245,200,66,0.1); border: 1px solid rgba(245,200,66,0.25); color: #f5c842; padding: 6px 14px; border-radius: 8px; cursor: pointer; font-size: 12px; font-family: 'Inter', sans-serif; font-weight: 500; transition: all 0.15s; } .refresh-btn:hover { background: rgba(245,200,66,0.2); } .live-dot { width: 7px; height: 7px; border-radius: 50%; background: #10d48a; display: inline-block; animation: pulse 2s infinite; } @keyframes pulse { 0%,100%{opacity:1} 50%{opacity:0.4} } .update-time { font-size: 11px; color: #7882a4; } /* ── PAGES ── */ .page { display: none; padding: 28px 32px; max-width: 1400px; margin: 0 auto; } .page.active { display: block; } /* ── DASHBOARD ── */ .total-section { padding: 32px 0 28px; } .total-3col { display: grid; grid-template-columns: 1fr 1px 1fr 1px 1fr; gap: 0; max-width: 900px; margin: 0 auto; } .total-divider { background: rgba(255,255,255,0.08); } .total-col { text-align: center; padding: 0 28px; } .total-label { font-size: 11px; font-weight: 600; color: #7882a4; letter-spacing: 0.8px; text-transform: uppercase; margin-bottom: 12px; } .total-value { font-size: 42px; font-weight: 700; letter-spacing: -1.5px; line-height: 1; } .tv-gold { color: #f5c842; } .tv-muted { color: #8892a4; } .total-sub { font-size: 12px; color: #7882a4; margin-top: 8px; } .total-err { font-size: 12px; color: #f05050; margin-top: 12px; text-align: center; display: none; } .asset-cards { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; margin-bottom: 28px; } .asset-card { background: #171b26; border: 1px solid rgba(255,255,255,0.07); border-radius: 14px; padding: 18px 20px; } .asset-card-label { font-size: 11px; font-weight: 500; color: #7882a4; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 8px; } .asset-card-value { font-size: 22px; font-weight: 700; color: #eef2ff; letter-spacing: -0.5px; } .asset-card-sub { font-size: 11px; color: #7882a4; margin-top: 5px; } .asset-card-pnl { font-size: 12px; font-weight: 500; margin-top: 4px; } .dash-grid { display: grid; grid-template-columns: 340px 1fr; gap: 20px; margin-bottom: 24px; } .dash-card { background: #171b26; border: 1px solid rgba(255,255,255,0.07); border-radius: 14px; padding: 20px 22px; } .dash-card-title { font-size: 13px; font-weight: 600; color: #7882a4; margin-bottom: 16px; text-transform: uppercase; letter-spacing: 0.4px; } /* allocation chart */ #alloc-canvas-wrap { position: relative; height: 200px; } .alloc-legend { margin-top: 14px; display: flex; flex-direction: column; gap: 8px; } .alloc-row { display: flex; align-items: center; justify-content: space-between; font-size: 13px; } .alloc-dot { width: 10px; height: 10px; border-radius: 3px; margin-right: 8px; flex-shrink: 0; display: inline-block; } .alloc-name { color: #c8d0e8; display: flex; align-items: center; } .alloc-pct { color: #7882a4; font-weight: 500; } /* equity mini table on dashboard */ .eq-summary-table { width: 100%; border-collapse: collapse; } .eq-summary-table th { text-align: left; font-size: 11px; font-weight: 600; color: #7882a4; text-transform: uppercase; letter-spacing: 0.4px; padding: 0 0 10px; border-bottom: 1px solid rgba(255,255,255,0.07); } .eq-summary-table th:last-child, .eq-summary-table td:last-child { text-align: right; } .eq-summary-table td { padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,0.05); font-size: 13px; vertical-align: middle; } .eq-summary-table tr:last-child td { border-bottom: none; } .ticker-pill { display: inline-block; background: rgba(255,255,255,0.07); border-radius: 5px; padding: 2px 7px; font-size: 11px; font-weight: 600; color: #c8d0e8; } .alerts-strip { background: #171b26; border: 1px solid rgba(255,255,255,0.07); border-radius: 14px; padding: 14px 20px; display: flex; gap: 20px; flex-wrap: wrap; align-items: center; } .alert-chip { display: flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 500; padding: 5px 10px; border-radius: 7px; } .alert-red { background: rgba(240,80,80,0.12); color: #f05050; } .alert-amber { background: rgba(245,180,50,0.12); color: #f5b432; } .alert-green { background: rgba(16,212,138,0.12); color: #10d48a; } /* ── EQUITIES PAGE ── */ .section-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; } .section-title { font-size: 15px; font-weight: 600; color: #eef2ff; } .section-sub { font-size: 12px; color: #7882a4; margin-top: 2px; } .bank-tag { display: inline-block; font-size: 11px; font-weight: 500; padding: 2px 8px; border-radius: 5px; } .tag-hsbc { background: rgba(220,40,40,0.12); color: #e05555; } .tag-jss { background: rgba(84,144,245,0.12); color: #5490f5; } .data-table { width: 100%; border-collapse: collapse; background: #171b26; border-radius: 14px; overflow: hidden; margin-bottom: 24px; } .data-table thead tr { border-bottom: 1px solid rgba(255,255,255,0.07); } .data-table th { text-align: left; padding: 12px 16px; font-size: 11px; font-weight: 600; color: #7882a4; text-transform: uppercase; letter-spacing: 0.4px; background: #1a1f2e; } .data-table th.r, .data-table td.r { text-align: right; } .data-table td { padding: 13px 16px; border-bottom: 1px solid rgba(255,255,255,0.04); font-size: 13px; } .data-table tr:last-child td { border-bottom: none; } .data-table tr:hover td { background: rgba(255,255,255,0.02); } .data-table tfoot td { background: #1a1f2e; font-weight: 600; font-size: 13px; border-top: 1px solid rgba(255,255,255,0.07); } .pos { color: #10d48a !important; } .neg { color: #f05050 !important; } .warn { color: #f5b432 !important; } .muted { color: #7882a4; } .loading { color: #7882a4; font-style: italic; } .live-price { font-weight: 600; } .price-loading { color: #7882a4; font-size: 12px; } .section-divider { height: 1px; background: rgba(255,255,255,0.06); margin: 24px 0; } /* SP cards - cleaner */ .sp-grid { display: flex; flex-direction: column; gap: 10px; margin-bottom: 24px; } .sp-card { background: #171b26; border: 1px solid rgba(255,255,255,0.07); border-radius: 14px; padding: 16px 20px; border-left: 4px solid transparent; } .sp-card.sp-danger { border-left-color: #f05050; } .sp-card.sp-warn { border-left-color: #f5b432; } .sp-card.sp-ok { border-left-color: #10d48a; } .sp-card.sp-neutral { border-left-color: #3d4565; } .sp-top { display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 12px; } .sp-tickers { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; } .sp-ticker { background: rgba(255,255,255,0.08); border-radius: 6px; padding: 3px 9px; font-size: 12px; font-weight: 600; color: #f5c842; } .sp-ticker.overlap { background: rgba(240,80,80,0.12); color: #f05050; } .sp-type { font-size: 10px; font-weight: 600; padding: 3px 8px; border-radius: 5px; margin-left: 4px; text-transform: uppercase; letter-spacing: 0.3px; } .type-fcn { background: rgba(154,110,243,0.15); color: #9b6ef3; } .type-cup { background: rgba(245,200,66,0.1); color: #f5c842; } .type-snb { background: rgba(16,212,200,0.1); color: #10d4c8; } .sp-subtitle { font-size: 12px; color: #7882a4; margin-top: 5px; } .sp-mv { font-size: 18px; font-weight: 700; color: #eef2ff; } .sp-pnl { font-size: 12px; margin-top: 3px; } .sp-meta { display: grid; grid-template-columns: repeat(auto-fit, minmax(100px,1fr)); gap: 10px; } .sp-meta-item {} .sp-meta-label { font-size: 10px; font-weight: 600; color: #7882a4; text-transform: uppercase; letter-spacing: 0.3px; margin-bottom: 2px; } .sp-meta-value { font-size: 13px; color: #eef2ff; font-weight: 500; } .sp-meta-value.gold { color: #f5c842; } .sp-extra { margin-top: 10px; padding-top: 9px; border-top: 1px solid rgba(255,255,255,0.05); font-size: 11px; color: #7882a4; display: flex; gap: 16px; flex-wrap: wrap; } .ki-badge { background: rgba(16,212,138,0.1); color: #10d48a; font-size: 10px; font-weight: 600; padding: 2px 7px; border-radius: 5px; margin-left: 4px; } .ki-breach { background: rgba(240,80,80,0.12); color: #f05050; font-size: 10px; font-weight: 600; padding: 2px 7px; border-radius: 5px; margin-left: 4px; } .sp-tracker { margin-top: 11px; padding-top: 10px; border-top: 1px solid rgba(255,255,255,0.06); display: flex; flex-direction: column; gap: 7px; } .spt-title { font-size: 9px; font-weight: 700; color: #50566a; text-transform: uppercase; letter-spacing: 0.8px; margin-bottom: 3px; } .spt-row { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; } .spt-name { font-size: 11px; font-weight: 600; color: #c8d0e8; min-width: 80px; } .spt-price { font-size: 12px; font-weight: 700; color: #eef2ff; } .spt-loading { font-size: 11px; color: #50566a; font-style: italic; } .spt-level { font-size: 11px; color: #7882a4; display: flex; align-items: center; gap: 6px; } .spt-level span { font-weight: 500; } .buf-safe { color: #10d48a; font-size: 11px; font-weight: 600; } .buf-warn { color: #f5b432; font-size: 11px; font-weight: 600; } .buf-danger { color: #f05050; font-size: 11px; font-weight: 600; } .buf-breach { background: rgba(240,80,80,0.12); color: #f05050; font-size: 10px; font-weight: 700; padding: 2px 6px; border-radius: 4px; } .spt-bar-wrap { flex: 1; min-width: 120px; height: 4px; background: rgba(255,255,255,0.07); border-radius: 2px; overflow: hidden; } .spt-bar { height: 100%; border-radius: 2px; transition: width 0.5s; } .overlap-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; margin-bottom: 16px; } /* ─── REDESIGNED SP CARDS ────────────────────────────────── */ .spv2-section { display:flex; align-items:center; justify-content:space-between; margin:20px 0 10px; } .spv2-section-title { font-size:13px; font-weight:600; color:#eef2ff; } .spv2-card { background:#171b26; border:1px solid rgba(255,255,255,0.07); border-radius:14px; margin-bottom:12px; overflow:hidden; border-left:4px solid #2a2f40; } .spv2-card.danger { border-left-color:#f05050; } .spv2-card.warn { border-left-color:#f5b432; } .spv2-card.ok { border-left-color:#10d48a; } .spv2-card.gold { border-left-color:#f5c842; } .spv2-header { display:flex; align-items:flex-start; justify-content:space-between; padding:14px 18px 10px; gap:12px; flex-wrap:wrap; } .spv2-title-group { display:flex; align-items:center; gap:8px; flex-wrap:wrap; } .spv2-name { font-size:15px; font-weight:700; color:#eef2ff; } .spv2-badge { font-size:10px; font-weight:700; padding:2px 8px; border-radius:5px; text-transform:uppercase; letter-spacing:0.3px; } .spv2-badge-cup { background:rgba(245,200,66,0.1); color:#f5c842; } .spv2-badge-fcn { background:rgba(154,110,243,0.15); color:#9b6ef3; } .spv2-badge-hsbc { background:rgba(220,40,40,0.12); color:#e05555; font-size:9px; } .spv2-badge-jss { background:rgba(84,144,245,0.12); color:#5490f5; font-size:9px; } .spv2-notional { font-size:16px; font-weight:700; color:#eef2ff; } .spv2-coupon { font-size:12px; color:#10d48a; margin-top:2px; } .spv2-dates { display:flex; gap:0; background:rgba(0,0,0,0.15); border-top:1px solid rgba(255,255,255,0.05); border-bottom:1px solid rgba(255,255,255,0.05); } .spv2-date-cell { flex:1; padding:9px 16px; border-right:1px solid rgba(255,255,255,0.05); } .spv2-date-cell:last-child { border-right:none; } .spv2-date-label { font-size:9px; font-weight:700; color:#50566a; text-transform:uppercase; letter-spacing:0.6px; margin-bottom:3px; } .spv2-date-val { font-size:12px; font-weight:600; color:#c8d0e8; } .spv2-days-val { font-size:20px; font-weight:800; color:#f5c842; line-height:1; } .spv2-days-label { font-size:9px; color:#7882a4; } .spv2-table-wrap { padding:0 18px 14px; overflow-x:auto; } .spv2-table { width:100%; border-collapse:collapse; margin-top:12px; font-size:12px; } .spv2-table thead tr { border-bottom:1px solid rgba(255,255,255,0.08); } .spv2-table th { text-align:left; padding:5px 10px; font-size:9px; font-weight:700; color:#50566a; text-transform:uppercase; letter-spacing:0.5px; white-space:nowrap; } .spv2-table th.r, .spv2-table td.r { text-align:right; } .spv2-table td { padding:9px 10px; border-bottom:1px solid rgba(255,255,255,0.04); vertical-align:middle; } .spv2-table tr:last-child td { border-bottom:none; } .spv2-table tr.row-danger td { background:rgba(240,80,80,0.04); } .spv2-table tr.row-warn td { background:rgba(245,180,50,0.04); } .spv2-table tr.row-ok td { background:rgba(16,212,138,0.03); } .spv2-table tr.row-gold td { background:rgba(245,200,66,0.04); } .spv2-price-cell { font-family:'SF Mono','Fira Code',monospace; font-size:12px; color:#c8d0e8; white-space:nowrap; } .spv2-live-cell { font-family:'SF Mono','Fira Code',monospace; font-size:13px; font-weight:700; color:#eef2ff; white-space:nowrap; } .spv2-status { font-size:10px; font-weight:700; padding:2px 8px; border-radius:5px; white-space:nowrap; } .spv2-s-danger { background:rgba(240,80,80,0.12); color:#f05050; } .spv2-s-warn { background:rgba(245,180,50,0.12); color:#f5b432; } .spv2-s-ok { background:rgba(16,212,138,0.1); color:#10d48a; } .spv2-s-gold { background:rgba(245,200,66,0.1); color:#f5c842; } .spv2-s-gray { background:rgba(255,255,255,0.05);color:#7882a4; } .spv2-note { margin:0 18px 12px; padding:9px 12px; border-radius:8px; font-size:11px; line-height:1.6; } .spv2-note-danger { background:rgba(240,80,80,0.08); color:#e08080; border:1px solid rgba(240,80,80,0.15); } .spv2-note-warn { background:rgba(245,180,50,0.08); color:#d4a040; border:1px solid rgba(245,180,50,0.15); } .spv2-note-ok { background:rgba(16,212,138,0.06); color:#60a88a; border:1px solid rgba(16,212,138,0.12); } .spv2-note-info { background:rgba(255,255,255,0.03); color:#7882a4; border:1px solid rgba(255,255,255,0.07); } .spv2-missing { font-size:11px; color:#50566a; font-style:italic; } .conc-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-top:20px; } .conc-card { background:#171b26; border:1px solid rgba(255,255,255,0.07); border-radius:10px; padding:12px 14px; } .conc-name { font-size:13px; font-weight:700; color:#f5c842; margin-bottom:3px; } .conc-count { font-size:11px; color:#f05050; margin-bottom:7px; font-weight:500; } .conc-tag { display:inline-block; font-size:10px; background:rgba(255,255,255,0.06); border-radius:4px; padding:2px 6px; color:#c8d0e8; margin:2px 2px 0 0; } .overlap-card { background: #171b26; border: 1px solid rgba(255,255,255,0.07); border-radius: 12px; padding: 14px 16px; } .overlap-name { font-size: 14px; font-weight: 700; color: #f5c842; margin-bottom: 4px; } .overlap-count { font-size: 11px; color: #f05050; margin-bottom: 8px; font-weight: 500; } .overlap-tag { display: inline-block; font-size: 10px; background: rgba(255,255,255,0.07); border-radius: 4px; padding: 2px 6px; color: #c8d0e8; margin: 2px 2px 0 0; } .info-box { background: #171b26; border: 1px solid rgba(255,255,255,0.07); border-radius: 10px; padding: 12px 16px; font-size: 12px; color: #7882a4; margin-bottom: 24px; } /* chart container */ .chart-wrap { position: relative; height: 220px; } /* summary row */ .summary-row { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; margin-top: 8px; } .sum-card { background: #171b26; border: 1px solid rgba(255,255,255,0.07); border-radius: 12px; padding: 14px 16px; } .sum-label { font-size: 11px; font-weight: 500; color: #7882a4; text-transform: uppercase; letter-spacing: 0.4px; margin-bottom: 6px; } .sum-value { font-size: 20px; font-weight: 700; color: #eef2ff; } .sum-sub { font-size: 11px; color: #7882a4; margin-top: 3px; } .footer { padding: 20px 32px; border-top: 1px solid rgba(255,255,255,0.06); display: flex; justify-content: space-between; font-size: 11px; color: #3d4565; margin-top: 20px; } @media(max-width:900px){ .asset-cards{grid-template-columns:repeat(2,1fr);} .dash-grid{grid-template-columns:1fr;} .overlap-grid{grid-template-columns:repeat(2,1fr);} .page{padding:16px;} nav{padding:0 12px;} .nav-tabs{gap:0;overflow-x:auto;} .tab-btn{font-size:11px;padding:6px 9px;white-space:nowrap;} .total-3col{grid-template-columns:1fr;gap:0;} .total-divider{width:100%;height:1px;} .total-col{padding:16px 0;} .total-value{font-size:32px;} .nav-brand{font-size:14px;} .data-table{font-size:12px;} .data-table th,.data-table td{padding:9px 10px;} }
Net Portfolio Value (USD)
Loading…
Gross assets minus liabilities · live equities · SP at cost
Gross Assets
Before loans
Liabilities
−$1,865,000
4 fixed loans · CHF + JPY
Cost Basis
⚠ Live prices unavailable — showing last known values from statement
Direct Equities
7 positions · live prices
Bonds
$2,005,235
11 bonds · market value
−$90,625 on cost
Structured Products
~$1,600,000
10 structures · at cost
2 KI breached
Snowball FRNs
$606,656
4 notes · market value
+$14,034 net gain
HF & Equity Fund
$409,852
Blackstone HF + N1 China
−$13,148 combined
Cash Holdings
$2,885,000
5 accounts · USD
HSBC · IBKR · Safra · Manesha
Insurance / ILP
$1,604,768
4 policies · USD
HSBC · SunLife · Prudential
Liabilities
−$1,865,000
4 fixed loans · CHF + JPY
All maturing May 2026
Allocation
Direct Equities — Live Prices
Name Ticker Price Value (USD) P&L
Loading prices…
Total
ALERTS ⚠ AIA + BYD — KI breached ⚠ Meituan + BABA — KI breached ⚠ CHF Loan 1 — matures 11 May (today) CHF Loan 2 — matures 26 May 2026 JPY Loan — matures 18 May 2026 Temasek 2.25% — MV −27% JSS FCNs — all healthy, KI far
Liabilities — Fixed Loans
Description CCY Principal Accrued Interest Total USD Equivalent Rate Matures
Fixed Loan (Lombard) TODAY CHF CHF 703,226.17 CHF 509.84 CHF 703,736.01 −$902,862 0.90% p.a. 11 May 2026
Fixed Loan (Lombard) JPY JPY 7,914,695 JPY 7,591 JPY 7,922,286 −$50,514 1.644% p.a. 18 May 2026
Fixed Loan (Lombard) CHF CHF 258,360.69 CHF 96.89 CHF 258,457.58 −$331,590 0.90% p.a. 26 May 2026
Standard Chartered CHF Loan CHF CHF 515,000 CHF 515,000 ~−$580,000 TBC TBC
Total Liabilities ~−$1,865,000
Direct Equity Holdings
Prices auto-update on load. All values converted to USD at live FX rates.
HSBC
Fetching FX rates…
Name Ticker CCY Shares Avg Cost Live Price Market Value (USD) Cost Basis (USD) P&L (USD) P&L %
Fetching live prices…
Total Direct Equities
⚑ CRM (Salesforce) is held directly — excluded from all structured product underlyings as per investment guidelines.
Loading price data…
Cash Holdings
Uninvested cash across all accounts · USD
AccountInstitutionAmount (USD)Notes
HSBC PremierHSBC PREM$600,000474-810314-380
HSBC Private BankHSBC PB$135,000HSBC PB account
Manesha PBHSBC PB$1,075,000Private banking account
Interactive BrokersIBKR$375,000IBKR account cash
J. Safra SarasinJSS$700,0008030-034066-0001
Total Cash$2,885,000
Total Cash
$2,885,000
Across 5 accounts
Largest Balance
$1,075,000
Manesha PB · HSBC
% of Gross Portfolio
~25%
Of total gross assets
Insurance & Investment-Linked Policies
USD · current values
Policy / ProductInstitutionBank / DistributorCurrent Value (USD)
HSBC GDAP TAXHSBC InsuranceHSBC$45,890
HSBC JADEHSBC InsuranceHSBC$206,865
SunJoy SunLifeSun Life FinancialSunLife$352,013
PRU WealthPrudentialStanChart$1,000,000
Total Insurance / ILP$1,604,768
Total Insurance Value
$1,604,768
4 policies
Largest Policy
$1,000,000
PRU Wealth · StanChart
HSBC Policies
$252,755
GDAP TAX + JADE
Values shown at current surrender/investment value. Update these figures whenever you receive policy statements.
HSBC Premier — Bonds & Certificates of Deposit
Account 474-810314-380 · Statement 21 Apr 2026
HSBC PREM
SecurityISINFace ValueCost (book)Market PriceMarket ValueP&L (USD)Maturity
Amazon.com 4.05%US023135BJ40$200,000$183,50080.41%$160,822−$22,678 (−12.4%)Aug 2047
HSBC Holdings 4.762%US404280DC08$200,000$194,00097.84%$195,688+$1,688 (+0.9%)Mar 2033
McDonald's Corp 4.45%US58013MFC38$200,000$185,56084.54%$169,076−$16,484 (−8.9%)Mar 2047
Temasek Financial 2.25%US87973RAV24$400,000$328,00059.79%$239,160−$88,840 (−27.1%)Apr 2051
Saudi Arabian Oil 5.25%XS2861550817$200,000$200,000101.04%$202,078+$2,078 (+1.0%)Jul 2034
Standard Chartered 5.244%XS3068732455$200,000$200,000101.63%$203,262+$3,262 (+1.6%)May 2031
Total HSBC PREM$1,291,060$1,170,086−$120,974
HSBC — Fixed Income Bonds & Bond Funds
Prices as at 7 May 2026, incl. accrued interest
HSBC PB
SecurityISINPrincipalCost (book)Market PriceMarket Value (incl. accrued)P&LMaturity
BNP Paribas 7.375% Fix-to-Var PerpUSF1067PAG12$200,000$204,800104.17%$210,707+$5,907 (+2.9%)Perpetual
ING Groep 7.25% Fix-to-Var PerpXS2885225966$200,000$200,000105.66%$218,239+$18,239 (+9.1%)Perpetual
Kraft Heinz Foods 5.4%US50077LBN55$200,000$200,000101.17%$203,923+$3,923 (+2.0%)Mar 2035
BNP Paribas SICAV GL BD 2029LU30376240072,000 units$200,000101.14%$202,280+$2,280 (+1.1%)2029
Total HSBC Bonds$804,800$835,149+$30,349 (+3.8%)
Total Bond Cost
$2,095,860
Both accounts combined
Total Bond MV
$2,005,235
At market prices
PREM Net P&L
−$120,974
Temasek & Amazon drag
HSBC Bonds P&L
+$30,349
All 4 positions positive
Callable Snowball FRNs
HSBC PB
InstrumentISINPrincipalAvg CostMarket PriceMV (USD)P&LRateMaturity
GS AUD Snowball FRNXS2769572798AUD 200,00099.25089.860$129,812−$13,565 (−9.5%)7.05%Mar 2036
HSBC USD Snowball FRNXS2758227875$200,00099.960106.637$213,274+$13,354 (+6.7%)6.21%Feb 2034
Citi USD Snowball FRNXS2752753108$150,00099.550109.060$163,590+$14,265 (+9.6%)6.90%Mar 2034
Merrill Lynch USD Snowball (Zero Cpn)XS3100011801$100,000100.00099.980$99,980−$20 (−0.0%)6.17% accrualAug 2035
Total Snowball FRNs$606,656+$14,034
ML Snowball is zero coupon — accrues to 161.70% (USD 161,700) at maturity. Callable annually from Aug 2028. Guarantor: Bank of America (S&P A−).
Hedge Fund
HSBC PB
FundUnitsAvg Cost/UnitNAV/UnitCost BasisMarket ValueP&L
Blackstone PR CR ICAP OFF SP4A SIE C USD293.433$1,032.60$980.96~$303,000$287,845−$15,155 (−5.0%)
Equity Fund
HSBC PB
FundISINUnitsAvg CostNAVCost BasisMarket ValueP&L
Ninety One GSF All China Equity A USD AccLU12519228913,295.70336.41137.020~$120,000$122,007+$2,007 (+1.7%)
JSS Monthly (USD)
$4,500
4 FCNs · 12% p.a. monthly
Bond Coupon (USD/yr est.)
~$96,562
9 fixed coupon bonds
Snowball FRN (USD/yr)
~$28,940
USD FRNs + ML accrual
Total Est. Annual Income
~$179,500
SP + bonds + FRNs
Structured Products — Coupon Schedule
#StructureBankNotionalRateFrequencyAnnual IncomeMonthlyMaturity
01AIA + BYDHSBCHKD 1,000,000Bonus 51.76%At maturityKI breached22 Sep 2026
02Meituan + BABAHSBCHKD 1,000,000Bonus 53.18%At maturityKI breached18 Aug 2026
03BABA + XiaomiHSBCUSD 200,000Bonus 41.57%At maturityConditional18 Nov 2026
04BABA + TencentHSBCUSD 200,000Bonus 48.72%At maturityConditional23 Feb 2027
05Xiaomi + Meituan + BABAHSBCHKD 1,000,00012% p.a.QuarterlyHKD 120,000HKD 10,0002 Sep 2026
06Fanuc + Hitachi + SonyHSBCJPY 20,000,0008% p.a.QuarterlyJPY 1,600,000JPY 133,33319 Feb 2027
07MSFT + NVDAJSSUSD 100,00012% p.a.MonthlyUSD 12,000USD 1,000May 2027
08BX + KKRJSSUSD 200,00012% p.a.MonthlyUSD 24,000USD 2,000Apr 2027
09Hitachi + IHIJSSUSD 150,00012% p.a.MonthlyUSD 18,000USD 1,500Nov 2026
10SNOW + UBERJSSUSD 100,00012% p.a.MonthlyUSD 12,000USD 1,000May 2027
Bond Annual Coupon Income (est.)
BondBankFace ValueCouponEst. Annual (USD)
Amazon.com 4.05%HSBC PREM$200,0004.05%$8,100
HSBC Holdings 4.762%HSBC PREM$200,0004.762%$9,524
McDonald's Corp 4.45%HSBC PREM$200,0004.45%$8,900
Temasek Financial 2.25%HSBC PREM$400,0002.25%$9,000
Saudi Arabian Oil 5.25%HSBC PREM$200,0005.25%$10,500
Standard Chartered 5.244%HSBC PREM$200,0005.244%$10,488
BNP Paribas 7.375% PerpHSBC$200,0007.375%$14,750
ING Groep 7.25% PerpHSBC$200,0007.25%$14,500
Kraft Heinz Foods 5.4%HSBC$200,0005.40%$10,800
Total bond coupon p.a.~$96,562
These are Lombard/pledge loans borrowed against your investment portfolio (JSS account 8030-034066-0001). All three mature in May 2026 and will need to be repaid or rolled over.
LoanAccountPrincipal (local)Interest RateAccrued InterestTotal (local)USD EquivalentStart DateMaturity
CHF Fixed Loan 1MATURES TODAY JSS CHF 703,226.17 0.90% p.a. CHF 509.84 CHF 703,736.01 −$902,862 9 Apr 2026 11 May 2026
JPY Fixed Loan JSS JPY 7,914,695 1.644% p.a. JPY 7,591 JPY 7,922,286 −$50,514 17 Apr 2026 18 May 2026
CHF Fixed Loan 2 JSS CHF 258,360.69 0.90% p.a. CHF 96.89 CHF 258,457.58 −$331,590 23 Apr 2026 26 May 2026
Total Liabilities~−$1,865,000
Total Liabilities
~−$1,865,000
USD equivalent · 8 May 2026
Gross Portfolio
Before loans
Net Portfolio Value
Gross minus liabilities
FX note: CHF loans converted at ~1.284 USD/CHF · JPY loan at ~156.7 JPY/USD (as per statement 8 May 2026).
These rates differ from the live FX rates used for equity conversion — loan amounts reflect statement valuations.
Total Income (received)
loading…
Total Costs
Loan interest + fees
Net Income
Received minus costs
Pending Confirmation
Expected but not confirmed
Portfolio Tracker
Record monthly value + new capital to track appreciation vs cash added.
⏳ Pending — Confirm When Received
No pending items
Income & Cost Log
DateDescriptionBankTypeAmountStatusActions
Loading…
All TimeIncomeNet
Monthly Income vs Costs
Portfolio Growth Tracker
Track total value month by month — splits appreciation from new capital added