Skip to content

Holiday calendar

Use GetHolidayCalendar, CLI holiday-calendar, REST POST /api/holiday-calendar, or MCP futu_get_holiday_calendar. Requires qot:read, extension_version: 1, and --enable-desktop-phase2-reads. Default OFF; live backend UNVERIFIED.

Required begin_time and optional end_time are RFC3339 instants with explicit offsets. End must not precede begin. Date-only input and nonzero fractional seconds are rejected. Instants are converted to +08:00 at second precision; normalized_begin_time and normalized_end_time expose the sent boundaries without guessing a system timezone.

Optional seq_mark is an opaque next-page marker. Filters are star (1–3), nation (numeric country IDs), and market_list (market IDs). Position and stock filters belong to other calendar pages and are not exposed here.

Nation IDs: 0 Other, 1 China, 2 Germany, 3 UK, 4 France, 5 US, 6 Canada, 7 Japan, 8 Singapore, 9 Australia, 10 Malaysia, 11 Korea. Market IDs: 0 Unknown, 1 US, 2 Hong Kong, 3 Singapore, 4 Mainland China, 5 Japan, 6 Canada, 7 Australia, 8 Malaysia, 9 Korea. These namespaces differ.

Korean selections are removed only when current confirmed quote rights explicitly mean no permission; delayed rights retain them. applied_filters shows the effective selection. A list emptied by filtering means no restriction for that dimension, as on the backend. Missing, stale or unsupported KR identity facts reject Korean selections without silently refreshing permissions or triggering a reconnect. Other selections do not require KR facts.

Each call returns one page. Optional code/data/cursor/has-more/total values retain presence; absent has-more never means completion. Raw event type and all item fields are retained, including unknown types and absent timestamps. Event timestamps are seconds; other raw values are not rescaled without an established unit. URLs remain data and are not opened automatically.