FX Rate Monitor is a real-time currency exchange rate tool. It polls TWD/JPY and USD/JPY rates every minute, displays live charts, and helps you decide when to buy or sell currency at your bank or broker.
Key capabilities:
On desktop, the page is split into a left main-content pane (trade simulator, live rates, adjusted rates, chart, daily references) and a right sidebar pane (market clock, alerts, rate adjustments, polling, statistics, log). The two pane widths adjust automatically to your browser window size — the left pane gets roughly four times the share of any extra space over the right pane, because it carries the most information-dense cards (chart, simulator, multi-currency reference rows). The right pane keeps a comfortable minimum width so the market clock's two-city horizontal layout never feels cramped.
On mobile, both panes collapse into a single vertical column. The app auto-detects your device on first load — you can also manually switch between PC and Mobile using the toggle in the header.
Every card has a small ▲ / ▼ button pair in its header. Tapping ▲ moves the card up one slot, tapping ▼ moves it down one slot. On desktop, cards only swap within their own pane. The two live-rate cards (primary + reference) are grouped as a single horizontal block that moves together.
When the left pane gets narrow (e.g., on a smaller window or a tablet in landscape), the live-rate pair automatically stacks the primary and reference cards vertically inside the group instead of side-by-side, so neither card clips its content. Once you widen the window back, the cards return to the side-by-side layout automatically.
Your custom arrangement is saved per currency pair AND per device mode (desktop / mobile) in your browser's local storage. Switching pairs or device modes loads the right saved arrangement. The Reset Layout button in the header restores the current pair × device-mode arrangement to the default.
The primary rate card shows the live rate for your active pair, refreshed every minute from the rate provider. Each card displays both the forward rate (e.g., TWD → JPY) and the reverse rate (JPY → TWD), with the reverse calculated automatically.
Below the live numbers, the card shows the daily highest and lowest observed rates with the timestamps when they were observed. A live badge indicates the data is fresh (per-minute) or has fallen back to a daily source.
The reference rate card next to the primary card shows the OTHER live pair (USD/JPY when your primary is TWD/JPY, and vice versa). It refreshes independently and helps you compare two pairs at a glance.
The rate chart loads the last 7 days of historical data on first visit and continues to grow from each new minute observation. The most recent 24 hours render at 1-minute resolution; older data uses 15-minute resolution to keep the chart legible. The x-axis shows the date (MM-DD) plus time at the first tick of each calendar day, and time only (HH:mm) for ticks within the same day, so you can identify which day a historical point belongs to at a glance. Hovering any point in the tooltip always shows the full date and time.
The Session Statistics card shows the highest, lowest, and spread of the rates observed in your current browser session, plus the total sample count. Reload the page to start a new session.
If you set high or low alert thresholds (see Section 7), the chart will draw horizontal lines at those values so you can see at a glance how close the current rate is to your targets.
The Trade Simulator lets you input an amount in either currency and see the converted amount calculated using either the live (fetched) rate or the rate adjusted with your personal spreads (see Section 6).
Use the I have toggle to choose which currency you're starting from, the Action toggle to choose buy or sell direction, and the Rate toggle to switch between the fetched rate and the adjusted rate. Your selections are saved per currency pair.
The result block shows the converted amount as a large locale-formatted number, a smaller description line below it (e.g., "100,000 TWD → 453,200 JPY") with the actual reverse rate used in parens (color-coded mint for the adjusted rate, green for the fetched rate), and a "Rate as of HH:MM:SS" line indicating when the underlying rate was last fetched in your local time. On wide screens the controls and the result fit on a single horizontal row; on narrower screens the controls reflow to multiple rows automatically.
Banks and brokers don't trade at the live market rate — they add a spread that includes their bank offset, premium, and any promotional discount. The Rate Adjustments panel lets you input these spreads as positive or negative values so the Adjusted rate in the converter approximates the real amount you would receive.
Each adjustment has a + / − sign toggle and a numeric value. Combine all three to model your bank's actual quote. Apply to reverse rate inverts the adjustment direction so you can model spreads on the JPY → TWD direction independently.
Below the inputs you'll find a small monospace calculation breakdown box that shows exactly how your adjustments combine into the final rate. It displays the live base rate, then one indented line per non-zero adjustment with its sign, then the summed result, then the inverse (reverse rate). The breakdown updates immediately as you edit any input or toggle the apply-to-reverse checkbox, and re-calculates on every new live rate tick — so you can always verify what the converter and the alert thresholds are actually using.
Set a high threshold to be notified when the rate climbs above your target, and a low threshold to be notified when it falls below. You can also set a Near tolerance to get an early warning when the rate gets close to a threshold without crossing it yet.
Sound alerts play a short tone in your browser. Browser notifications fire a system notification (you may need to grant permission the first time). Alert events are also logged in the Alert Log card so you can review what triggered.
The Daily Reference Rates card shows three currency pairs sourced from free public providers (different from the per-minute provider used by the primary rate cards). They refresh once per hour and are labeled Daily Rate to make the data quality clear.
You can change which pairs are shown by selecting different FROM and TO currencies from the dropdowns next to each slot. Your selection is saved across page reloads.
The market clock shows two markets side by side — the left panel shows the FROM currency's market, the right panel shows the TO currency's market. Each panel shows the current local time in that market, the trading hours, and an OPEN / CLOSED / CLOSING SOON status badge.
When a market is closed, the panel shows when it will reopen (later today or next Monday after the weekend). When it's about to close, you'll see a CLOSING SOON warning so you have time to place orders.
The polling interval controls how often the app fetches a new rate from the provider (minimum 60 seconds). Lower values refresh more often but consume more API quota.
The page automatically reloads at a configurable interval (default: 6 hours, minimum 0 = off) to refresh data and free up memory from long-running sessions. All your settings are saved before the reload, so everything is fully restored afterwards.
The Reset Layout button in the header restores the current currency pair's current device-mode arrangement to the default. Other pairs and the same pair's other device-mode are not affected.
On devices and browsers that support the Screen Wake Lock API, the dashboard automatically requests a screen wake lock so the device display does not turn off while you're watching live rates. The lock is released when you close the tab and re-acquired automatically when you switch back. If the API is unavailable on your browser, the page still works normally — only the auto-keep-screen-on feature is skipped.