Investment Unit Trust, Stock Tracker & Financial Planning
Preview mode – this viewer blocks saving, printing and internet access, so clients are not kept, Print does nothing and prices cannot load. Download the file and open it in Chrome/Edge, or use your own website link – everything works there.

Holdings

Charge is treated as included in the amount (same as your Excel): Net = Amount ÷ (1 + charge%). Leave unit price blank to use the NAV on that date from price history.

Value vs. capital invested

Market valueCapital invested

Recovery & averaging calculator

Average down to a target cost

What-if NAV

All funds for this client

Collects the testator's instructions and an inventory of assets from the uploaded statements, then produces a summary PDF for the lawyer or trust company to draft the will.

Fund performance calculator

Key in the fund, each investment amount, sales charge % and unit price – everything else is calculated like the Excel sheet. Leave the unit price empty to use the daily price on that date (if on file).

#Date of investmentInvestment amount (RM)Charges %Amount chargesNet amountUnit priceUnits

Backtest an investment plan

Lump sum investments

Value of the plan

Market valueMoney invested

Investment schedule

Each debit / lump sum buys units at the fund's NAV on that date (or the next business day's NAV).

Calendar-year returns (NAV)

Period returns

Backtests use the NAV history stored in this app. Past performance is not a reliable indicator of future returns; distributions are included only if the NAV history is distribution-adjusted.

Daily prices

Paste daily price list

Open FIMM daily price or AHAM daily fund price, select all (Ctrl+A), copy and paste here. Each line "FUND NAME 1.2345" is detected.

Import price history (CSV)

Format A: date,price for the selected fund. Format B: date,fund name,price. Dates as YYYY-MM-DD or DD/MM/YYYY.

Add / edit fund

Upload AHAM statements

AHAM One Look / Investment Overview → unit trust holdings valued at the latest NAV. Bank savings, fixed deposit, ASNB (ASB/ASB2) and EPF statements → the client's net worth for Financial Planning.

Automatic daily prices

Your browser is not allowed to read the AHAM/FIMM websites directly, so the app needs a small free "price service" on your Cloudflare account to fetch the daily NAVs for it (one-time, about 2 minutes):

  1. Cloudflare dashboard → Workers & Pages → Create → Start with Hello World! → name it e.g. ut-prices → Deploy.
  2. Edit code → delete everything → paste the contents of price-worker.js → Deploy.
  3. Copy its link (e.g. https://ut-prices.yourname.workers.dev), paste below, press Save, then Test.
Keep price history (needed for backtests) – one-time, 3 minutes
  1. Cloudflare → Storage & Databases → KV → Create → name it PRICES.
  2. Open your ut-prices worker → Settings → Bindings → Add → KV namespace → Variable name PRICES, namespace PRICES → Save.
  3. Same worker → Settings → Trigger events → Add → Cron trigger → 30 1,11 * * * (9:30am & 7:30pm Malaysia) → Add.
  4. Make sure the worker has the latest price-worker.js code, then open https://ut-prices…workers.dev/save once.

From then on the price list is stored every day, even when the app is closed, and the app loads the stored days automatically.

Branding

Clients

Backup & transfer

All data stays on this device. Export a backup file to move it to another device or hand a client their own file.