What does a digital dollar cost in the Philippines? This index measures the gap between what USDT costs in pesos on Philippine exchange order books and the global dollar price converted at the reference exchange rate, every trading day. The Philippines is one of the world’s largest remittance-receiving economies, and its crypto exchanges are licensed and supervised by the Bangko Sentral ng Pilipinas (BSP). The number is a measurement of one gap — not a remittance-cost comparison, not a peso forecast and not a trading signal. Sister indices: India USDT, India USDC, Indonesia USDT, Mexico USDT, Turkey USDT.
| Exchange | Mid (₱) | Best bid / best ask (₱) | Spread | vs index fix |
|---|---|---|---|---|
| loading… | ||||
Methodology v0.1.0 · DRAFT pending calibration and Owner sign-off. Values marked TO BE SET are filled from calibrate.py after roughly 44 hours of live capture; the version number does not change when they are filled, because filling them does not change how a fix is computed.
The Crypto Times Philippines USDT Premium Index (CTPI-USDT-SPOT-PHP) measures how much more (or less) a dollar stablecoin costs in Philippine pesos on Philippine exchange order books than the global dollar price converted at the reference exchange rate, every trading day. Two numbers are published: the raw premium (peso price of USDT versus USD/PHP) and the peg-adjusted premium (the headline), which also divides out USDT’s own small deviation from $1 so that only the Philippines-versus-world gap remains.
What to expect. No level is presumed. Filipinos reach a digital dollar through peso bank and e-wallet on-ramps into a small set of BSP-supervised exchanges; fees, on-ramp friction, remittance-driven demand and venue depth can hold the peso price of USDT away from the world price in either direction. The archive records the size and persistence of that gap. The remittance framing is context, not a claim: the index measures an exchange price gap, not the cost of any remittance service.
Fix window 11:30–12:30 PHT (12:00 ± 30 minutes), published at 12:31 PHT (04:31 UTC) by a systemd timer with Persistent=true; if the host is off through the window, the timer runs on boot, finds no samples and refuses to publish. No estimate is ever published in place of a missed fix; a missed or late fix is recorded in the corrections log as a publication-timing entry.
The ECB publishes its daily reference rates around 16:00 CET, which is 22:00–23:00 in Manila, about ten hours after the window closes; the fix therefore always prices against the prior ECB business day’s rate, the family’s deterministic rule, and its date is cited with every fix.
Official fixes are computed every Monday to Friday (PHT). Local public holidays do not pause the index: crypto trades every day, so a Philippine public holiday is an ordinary fix day, priced against the ECB reference rate by the usual rule below. Weekend runs store an indicative point at the same fix time, measured against the last business day’s USD/PHP and marked distinctly on the chart.
The engine that computes this index also computes The Crypto Times India Bitcoin Premium Index, where the global leg moves inside the window; the family rule pairs each venue sample with the reference captured nearest to it in time (within 120 seconds; unpaired samples are counted and dropped, never estimated). For a stablecoin leg the pairing changes nothing materially, but one rule for the whole family is worth more than two.
r = venue_mid_php ÷ usdtusd_ref — the USD/PHP rate implied by that venue’s USDT quote.r across its paired samples is the venue observation; the median two-sided peso depth resting within ±TO BE SET bps of mid (stored bands: 50, 100) is the venue weight.TO BE SET two-sided. Exclusions are recorded in the fix’s provenance with the venue’s would-be value.R. A venue must supply real resting depth, not just a printed price, to move the fix.premium_pct = (R ÷ USDPHP − 1) × 100.raw_premium_pct = (observed_mid_median ÷ USDPHP − 1) × 100.value = R × usdtusd_ref (pesos per USDT), where usdtusd_ref is the median of the references actually paired, so that value ÷ (usdtusd_ref × USDPHP) − 1 reproduces the headline premium exactly from the figures on the page.An official fix requires at least TO BE SET eligible venues, a publishable USD/PHP reference within the carry ceiling, at least one paired USDT/USD reference, and no existing official fix for that time. Officials are immutable once written; restatements go only through governance tooling and appear in the corrections log.
single_venue_aggregate while one venue is the whole index; two_venue_aggregate; high_venue_dispersion when venue observations differ by more than TO BE SET bps; unpaired_samples(n); insufficient_venues on indicative fixes only.
Candidate venues at launch: Philippine venues licensed by the Bangko Sentral ng Pilipinas (BSP) only — Coins.ph, whose public order book is documented, and PDAX, onboarded from configuration once a public order-book endpoint is confirmed. Offshore exchanges are not candidates. Single-venue rule (adopted 24 September 2026): the minimum is one qualifying venue. While Coins.ph is the only venue, each fix is computed from its order book alone and carries the flag single_venue_aggregate; with one venue there is no cross-venue comparison and no dispersion measure, so the depth floor and the per-sample pairing are the quality gates. A day on which Coins.ph does not qualify produces no official fix, with the reason recorded. When a second venue qualifies it joins under the same rules, and the minimum is reviewed. Constituent status is set from measured order-book depth during calibration and reviewed against the family venue policy; the venue-status line and the per-exchange table state, every day, which venues the number includes and why any is excluded. Changes appear in the changelog.
Between fixes the page shows a 5-minute indicative reading computed with the same pairing and aggregation, against the USD/PHP rate in force at the sample. Past 15 minutes without a usable sample the live block shows STALE rather than a stale number. Indicative readings are never part of the daily fix series.
Besides the daily fix, the engine records one reading a day at 12:00 UTC — the same moment for every index in the family (20:00 PHT here) — computed exactly as above over 11:55–12:05 UTC (19:55–20:05 PHT), against the latest ECB reference captured before the window closes, which is always the prior business day’s rate. It exists so that a future multi-country composite can combine markets observed at the same instant rather than hours apart. It is not this index’s official value and is never part of its fix series; a day on which it cannot be computed is recorded as INVALID with its reason. Around that window the collector samples every 60 seconds whatever the local hour. The series is published at /v1/sync on the engine host.
The methodology version changes only when the way a fix is computed changes — never for display, documentation or the filling of calibration values above. Package versions are separate.
Single-venue rule adopted: the minimum is one qualifying venue, so while Coins.ph is the only venue each fix is computed from its order book alone, carries the flag single_venue_aggregate, and the page says so every day; a day on which Coins.ph does not qualify produces no official fix, with the reason recorded. Local public holidays do not pause the index: a holiday is an ordinary fix day, priced against the ECB reference rate by the usual rule; weekends stay indicative. Official fixes remain switched off.
Index created on the CTPI family engine, configured for USDT/PHP: Coins.ph enabled (documented public order book); PDAX shipped as a configuration-only candidate pending a public order-book endpoint; offshore exchanges are not candidates. USDT/USD reference from Kraken paired per sample; ECB USD/PHP denominator; noon-PHT fix published 12:31 PHT; raw and peg-adjusted premiums; the family’s synchronized reading recorded daily at 12:00 UTC (20:00 PHT). Official fixes remain switched off ([fix].official_enabled = false) until calibration values are set from live data and the methodology is signed; the daily timer stores indicative (shadow) fixes meanwhile.
No corrections, restatements or publication-timing entries yet. Entries are added here, inside this document, never on a separate page: a missed or late fix is recorded as a publication-timing entry; a change to a published value is a restatement, with the old value, the new value, the reason and the date.
| Date | Type | Fix date | Detail |
|---|---|---|---|
| none recorded | |||