Bài 4: Ngưỡng chi phí-hiệu quả cho Việt Nam

Ngưỡng là chi phí cơ hội, không chỉ là một bội số GDP: hiểu ngưỡng của khóa học, chọn và báo cáo cho đúng

Vì sao bạn nên quan tâm?

GDP bình quân đầu người của Việt Nam năm 2025 là 125.5 triệu VNĐ (Cục Thống kê (Bộ Tài chính) 2026). Nếu lấy đúng con số đó làm ngưỡng, tức mức chi tối đa còn chấp nhận cho mỗi đơn vị sức khỏe có thêm, thì coi một năm sống khỏe mạnh đáng giá tới 125.5 triệu VNĐ, bằng 24 tháng lương tối thiểu vùng I, tức gần 2 năm làm việc của một công nhân ở Hà Nội hay TP.HCM (Chính phủ 2025). Ở mức nửa GDP, con số đó còn 12 tháng lương. Quỹ có hạn: tiền trả cho xét nghiệm nhanh ở ICU là tiền không dùng được cho thuốc huyết áp ở trạm y tế xã. Bài này giải thích vì sao khóa học chọn 1 lần GDP bình quân đầu người làm ngưỡng cơ sở, 0.5 lần làm ngưỡng thấp, và cách kiểm tra kết luận có đổi khi đổi ngưỡng.

Mục tiêu học tập

Sau bài này, bạn có thể:

  1. Giải thích ngưỡng chi phí-hiệu quả (cost-effectiveness threshold) theo lượng sức khỏe mất đi ở nơi khác khi ngân sách dành cho can thiệp mới.
  2. Phân biệt ngưỡng phía cung (chi phí cơ hội) với ngưỡng phía cầu (mức sẵn lòng chi trả), và nêu vì sao quy tắc 1–3 lần GDP bình quân đầu người không đủ làm căn cứ.
  3. Giải thích ngưỡng của khóa học (1 lần GDP bình quân đầu người, kèm 0.5 lần) và tính các ngưỡng ứng viên từ số liệu GDP.
  4. Xác định ở ngưỡng nào thì quyết định đổi chiều, và diễn giải lợi ích sức khỏe ròng: QALY can thiệp mang lại trừ QALY mất do chi phí cơ hội.

Ý chính

  • Ngưỡng \(\lambda\) là chi phí để hệ thống y tế hiện tại tạo thêm một QALY ở biên, tức ở phần hoạt động sẽ bị cắt để nhường tiền. Chi thêm \(\Delta C\) làm mất khoảng \(\Delta C/\lambda\) QALY ở nơi khác, nên can thiệp chỉ làm tăng sức khỏe dân số khi ICER < \(\lambda\) (Claxton và c.s. 2015; Woods và c.s. 2016).
  • Quy tắc 1–3 lần GDP bình quân đầu người có gốc từ báo cáo năm 2001 của Ủy ban Kinh tế vĩ mô và Y tế của WHO (Bertram và c.s. 2016), không phản ánh chi phí cơ hội và đặt tiêu chuẩn quá dễ đạt (Marseille và c.s. 2015).
  • Ngưỡng ước tính theo chi phí cơ hội cho nước thu nhập thấp và trung bình thường thấp hơn 1 lần GDP bình quân đầu người (Woods và c.s. 2016; Ochalek, Lomas, và Claxton 2018), vậy mà phần lớn nghiên cứu ở các nước này vẫn dùng quy tắc GDP, thường không biện luận (Leech và c.s. 2018; Kazibwe và c.s. 2022).
  • Ngưỡng của khóa học: 1 lần GDP bình quân đầu người (125.5 triệu VNĐ/QALY) là mốc mà các phân tích chi phí-hiệu quả gần đây ở Việt Nam dùng trên thực tế (Ong và c.s. 2026; Kieu, Le, và Nguyen 2025), không phải ngưỡng do cơ quan nhà nước ban hành. 0.5 lần (62.75 triệu VNĐ) là ngưỡng thấp theo hướng chi phí cơ hội, dùng cho phân tích độ nhạy.
  • Trong ví dụ, ICER của xét nghiệm nhanh kèm AMS bằng 1.4% GDP bình quân đầu người: quyết định chỉ đổi chiều với ngưỡng thấp hơn mức đó, tức thấp hơn cả cận dưới của El Salvador (11%). Chỉ ngưỡng rất thấp như cận dưới của Malawi (1%) mới làm thường quy thắng.
  • Ngưỡng phải cùng đơn vị với ICER: ICER theo DALY không được so với khoảng ngưỡng tính theo QALY (Bài 2).
  • Ngưỡng chỉ là một đầu vào; tác động ngân sách, tính khả thi và công bằng cũng phải được cân nhắc (Bertram và c.s. 2016).

Nội dung

Ngưỡng nghĩa là gì

Ngân sách y tế có hạn, nên mỗi đồng chi cho xét nghiệm nhanh là đồng không chi cho thuốc thiết yếu, nhân lực hay tiêm chủng; sức khỏe mà các khoản ấy lẽ ra tạo ra là chi phí cơ hội (opportunity cost). Nếu ở biên hệ thống tạo một QALY với chi phí \(\lambda\) đồng, thì chi thêm \(\Delta C\) làm mất khoảng \(\Delta C/\lambda\) QALY. Lấy QALY can thiệp mang lại thêm (ΔE) trừ phần mất ấy, ta được lợi ích sức khỏe ròng (NHB):

\[ \text{NHB gia tăng} = \Delta E - \frac{\Delta C}{\lambda}. \]

Đây là ngưỡng phía cung (supply side), phản ánh năng suất biên của hệ thống y tế; Claxton và cộng sự ước tính ngưỡng này cho Anh (Claxton và c.s. 2015), Ochalek và cộng sự cho nước thu nhập thấp và trung bình (Ochalek, Lomas, và Claxton 2018). Ngưỡng phía cầu (demand side) hỏi người dân sẵn lòng trả bao nhiêu cho một QALY; câu hỏi ấy liên quan đến quy mô ngân sách y tế, chứ không phải cách phân bổ một ngân sách cố định (Woods và c.s. 2016).

Quy tắc theo GDP và vì sao không đủ làm căn cứ

Chương trình WHO-CHOICE từng coi can thiệp là “rất chi phí-hiệu quả” nếu chi phí cho mỗi DALY tránh được dưới 1 lần GDP bình quân đầu người, và “chi phí-hiệu quả” nếu dưới 3 lần (Marseille và c.s. 2015; Hutubessy, Chisholm, và Edejer 2003). Các con số này nhằm biện luận để tăng đầu tư cho y tế, chứ không nhằm chọn giữa các can thiệp trong một ngân sách cho trước (Bertram và c.s. 2016; Woods và c.s. 2016). Hai điểm yếu chính, đo bằng số của chính module:

  • Không phản ánh chi phí cơ hội, nên quá dễ đạt. 1 lần GDP bình quân đầu người là 125.5 triệu VNĐ, gấp 71 lần ICER của ví dụ; gần như can thiệp hiệu quả nào cũng “đạt” (Marseille và c.s. 2015; Kazibwe và c.s. 2022). Ngưỡng quá cao dẫn đến chấp nhận cả can thiệp có ICER cao hơn ngưỡng theo chi phí cơ hội, tức làm giảm tổng sức khỏe dân số (Woods và c.s. 2016; Ochalek, Lomas, và Claxton 2018). Một ngưỡng quy ước khác, 50,000 đô la Mỹ/QALY, cũng tồn tại bền bỉ (Neumann, Cohen, và Weinstein 2014).
  • Bỏ qua khả năng chi trả và đặc thù quốc gia. Can thiệp “đạt ngưỡng” vẫn có thể vượt ngân sách (Marseille và c.s. 2015); hai nước cùng GDP có năng suất hệ thống y tế rất khác nhau (Bertram và c.s. 2016).

Ngưỡng dựa trên chi phí cơ hội

Woods và cộng sự ngoại suy, tức suy rộng, ước tính ngưỡng của Anh sang các nước khác theo thu nhập. Cận dưới của khoảng tăng theo thu nhập: Malawi (nước nghèo nhất khi nghiên cứu) 1%–51% GDP bình quân đầu người, El Salvador (ranh giới trung bình thấp và trung bình cao) 11%–51%, Kazakhstan (ranh giới trung bình cao và cao) 32%–59% (Woods và c.s. 2016). Việt Nam hiện thuộc nhóm thu nhập trung bình cao (World Bank 2026), tức nằm giữa El Salvador và Kazakhstan. Ochalek và cộng sự ước tính ngưỡng theo DALY cho từng nước, và thấy các ngưỡng này có xu hướng thấp hơn khoảng 1–3 lần GDP bình quân đầu người của WHO (Ochalek, Lomas, và Claxton 2018). Cả hai nguồn có số riêng cho Việt Nam trong phụ lục mà khóa học chưa tiếp cận được, nên các khoảng ở đây chỉ cho biết độ lớn.

Ngưỡng của khóa học: 1 lần và 0.5 lần GDP bình quân đầu người

Việt Nam chưa ban hành ngưỡng chính thức, nên khóa học theo thông lệ của các nghiên cứu trong nước và đặt hai mốc, đều lấy từ ../_shared/params/vn_context.csv (mọi module dùng chung giá trị này):

  • Ngưỡng cơ sở, 1 lần GDP bình quân đầu người: 125.5 triệu VNĐ/QALY, theo GDP 2025 của Cục Thống kê (Cục Thống kê (Bộ Tài chính) 2026). Đây là mốc các phân tích gần đây ở Việt Nam dùng, ví dụ phân tích chi phí-thỏa dụng theo quan điểm BHXH cho thuốc điều trị đái tháo đường (Ong và c.s. 2026) và phân tích thuốc điều trị lạc nội mạc tử cung (Kieu, Le, và Nguyen 2025). Dùng mốc này giúp kết quả của khóa học so được với các báo cáo người học sẽ đọc. Có điều, mốc này không dựa trên chi phí cơ hội, và vượt cận trên của mọi khoảng Woods ước tính.
  • Ngưỡng thấp, 0.5 lần GDP bình quân đầu người: 62.75 triệu VNĐ/QALY. Mốc này nằm trong khoảng Woods ước tính cho các nước có mức thu nhập như Việt Nam (từ 11% đến 59%), và các nghiên cứu vắc xin ở Việt Nam cũng đã dùng mốc này, tính theo DALY (Dang và c.s. 2026; Do và c.s. 2023). Khóa học dùng ngưỡng thấp cho phân tích độ nhạy: kết luận nào đứng vững ở 1 lần GDP mà đổ ở 0.5 lần thì phải nói rõ điều đó.
  • Cận trên 3 lần GDP chỉ dùng để thấy quy tắc cũ dễ dãi đến đâu.

Bảng dưới xếp các ngưỡng ứng viên cạnh nhau (hàng 3 lần GDP gốc tính theo DALY, ở đây chỉ dùng làm con số tham chiếu); chiến lược tối ưu là chiến lược có NMB (lợi ích ròng quy ra tiền) lớn nhất:

Ngưỡng Triệu VNĐ/QALY Chiến lược tối ưu
Malawi (Woods), cận dưới, 1% GDP/người 1.25 Thường quy
El Salvador (Woods), cận dưới, 11% GDP/người 13.80 Xét nghiệm nhanh + AMS
Kazakhstan (Woods), cận dưới, 32% GDP/người 40.16 Xét nghiệm nhanh + AMS
Ngưỡng thấp của khóa học, 0.5 × GDP/người 62.75 Xét nghiệm nhanh + AMS
Ngưỡng cơ sở của khóa học, 1 × GDP/người 125.50 Xét nghiệm nhanh + AMS
3 × GDP/người (cận trên của quy tắc WHO-CHOICE) 376.50 Xét nghiệm nhanh + AMS

Ngưỡng làm thay đổi quyết định ra sao

ICER của xét nghiệm nhanh kèm AMS so với thường quy là 1.76 triệu VNĐ/QALY. Ở ngưỡng 1% GDP/người (cận dưới của Malawi), can thiệp tốn thêm 0.69 triệu VNĐ mỗi người bệnh; tính trên 1,000 người bệnh, khoản chi thêm ấy làm mất 550.8 QALY ở nơi khác, trong khi can thiệp chỉ mang lại 392.2 QALY, nên lợi ích ròng âm (-158.6 QALY). Ở cận dưới của El Salvador, lợi ích ròng là 342.1 QALY; ở ngưỡng thấp của khóa học là 381.2 QALY. Trong ví dụ này, kết luận đứng vững từ cận dưới của El Salvador trở lên, tức trên mọi ngưỡng trong bảng trừ hàng Malawi. Còn can thiệp nào có ICER nằm giữa hai ngưỡng của khóa học (từ 62.75 triệu VNĐ đến 125.5 triệu VNĐ/QALY) thì hai ngưỡng cho hai kết luận trái ngược, và khi đó phải nêu rõ và biện luận.

Thước đo kết cục cũng quyết định đem ICER so với ngưỡng nào. ICER theo DALY bằng 0.9% GDP bình quân đầu người, nhưng không được đem con số đó so với khoảng tính theo QALY của Woods (Bài tập 2).

Báo cáo khi chưa có ngưỡng chính thức

Ba việc nên làm như sau. (1) Trình bày kết quả trên một dải ngưỡng và chỉ rõ điểm đổi quyết định (Hình 11.1; M03 mở rộng bằng CEAC). (2) Báo cáo cả ngưỡng cơ sở 1 lần GDP lẫn ngưỡng thấp 0.5 lần, và ghi rõ ngưỡng theo GDP chỉ là quy ước để so sánh. (3) Báo cáo kèm tác động ngân sách và công bằng (Bertram và c.s. 2016).

Thực hành

Đoạn mã đầu nạp mô hình, dựng đường biên, rồi lấy ICER của xét nghiệm nhanh kèm AMS, chiến lược duy nhất ngoài thường quy còn trên đường biên, và đổi ICER ấy thành tỷ lệ GDP bình quân đầu người. Kiểm tra: R không báo lỗi, tức hai ngưỡng của khóa học đúng bằng 1 lần và 0.5 lần GDP.

if (!isTRUE(l10n_info()[["UTF-8"]])) invisible(Sys.setlocale("LC_CTYPE", "en_US.UTF-8"))
source("../_shared/R/helpers.R")
source("../_shared/R/vn_data.R")   # course-wide values: threshold, life table, CPI, prices
source("code/model.R")
library(ggplot2)
p <- load_params()                   # module parameters + shared values, costs in 2025 VND
res <- run_tree(p)
fr <- efficiency_frontier(res$strategy, res$cost, res$qaly)
icer_main <- fr$icer[fr$strategy == "rdt_ams"]
gdp <- p$gdp_pc_vnd                  # 2025 GDP per capita (shared, GSO)
# The same ICER as a share of GDP per capita: decisions flip only below this share
icer_share_gdp <- icer_main / gdp
round(c(icer_million = icer_main / 1e6, share_of_gdp = icer_share_gdp), 4)
icer_million share_of_gdp 
      1.7624       0.0140 
# The course thresholds are fixed multiples of GDP per capita (vn_context() also checks this)
wtp_high <- param_bounds(p, "wtp")[["high"]]
round(c(wtp = p$wtp, wtp_low = p$wtp_low, wtp_high = wtp_high) / gdp, 2)
     wtp  wtp_low wtp_high 
     1.0      0.5      3.0 
stopifnot(abs(p$wtp / gdp - 1) < 1e-12, abs(p$wtp_low / gdp - 0.5) < 1e-12, abs(wtp_high / gdp - 3) < 1e-12)

Đoạn mã sau tính các ngưỡng ứng viên từ GDP bình quân đầu người năm 2025, rồi ở mỗi ngưỡng chọn chiến lược có NMB lớn nhất. Kiểm tra: quyết định chỉ khác ở ngưỡng thấp hơn ICER.

# Candidate thresholds for Viet Nam (VND per QALY), from 2025 GDP per capita
thresholds <- data.frame(
  code = c("mwi_low", "slv_low", "kaz_low", "course_low", "course", "gdp3"),
  rule = c(paste0("Malawi (Woods), cận dưới, ", fmt_pct(p$ocet_pct_low_mwi, 0), " GDP/người"),
           paste0("El Salvador (Woods), cận dưới, ", fmt_pct(p$ocet_pct_low_slv, 0), " GDP/người"),
           paste0("Kazakhstan (Woods), cận dưới, ", fmt_pct(p$ocet_pct_low_kaz, 0), " GDP/người"),
           "Ngưỡng thấp của khóa học, 0.5 × GDP/người",
           "Ngưỡng cơ sở của khóa học, 1 × GDP/người",
           "3 × GDP/người (cận trên của quy tắc WHO-CHOICE)"),
  k = c(p$ocet_pct_low_mwi * gdp, p$ocet_pct_low_slv * gdp, p$ocet_pct_low_kaz * gdp,
        p$wtp_low, p$wtp, wtp_high)
)
thresholds$k_million <- round(thresholds$k / 1e6, 2)
thresholds$share_gdp <- round(thresholds$k / gdp, 3)
thresholds$best <- sapply(thresholds$k, function(k) best_strategy(res, k))
rownames(thresholds) <- thresholds$code
thresholds[, c("rule", "k_million", "share_gdp", "best")]
                                                      rule k_million share_gdp
mwi_low             Malawi (Woods), cận dưới, 1% GDP/người      1.25      0.01
slv_low       El Salvador (Woods), cận dưới, 11% GDP/người     13.80      0.11
kaz_low        Kazakhstan (Woods), cận dưới, 32% GDP/người     40.16      0.32
course_low       Ngưỡng thấp của khóa học, 0.5 × GDP/người     62.75      0.50
course            Ngưỡng cơ sở của khóa học, 1 × GDP/người    125.50      1.00
gdp3       3 × GDP/người (cận trên của quy tắc WHO-CHOICE)    376.50      3.00
              best
mwi_low      usual
slv_low    rdt_ams
kaz_low    rdt_ams
course_low rdt_ams
course     rdt_ams
gdp3       rdt_ams
# The decision flips only at the very low Malawian bound, because the ICER (about 1.4% of
# GDP per capita) lies between the Malawian and the Salvadoran lower bounds; the prose relies on this
stopifnot(thresholds["mwi_low", "best"] == "usual", all(thresholds$best[-1] == "rdt_ams"),
          p$ocet_pct_low_mwi < icer_share_gdp, icer_share_gdp < p$ocet_pct_low_slv)

Đoạn mã tiếp theo vẽ NMB gia tăng so với thường quy theo ngưỡng. Kiểm tra: đường của xét nghiệm nhanh kèm AMS đổi dấu đúng tại ICER (đo trên chính các điểm của đường vẽ).

# Incremental NMB of each strategy versus usual care across thresholds:
# a line crosses zero exactly at that strategy's ICER versus usual care
k_grid <- seq(0, 1.2 * gdp, length.out = 241)
curve <- NULL
for (s in STRATEGIES[-1]) {
  d <- incremental(res, s, "usual")
  curve <- rbind(curve, data.frame(strategy = STRATEGY_LABELS[[s]], k = k_grid,
                                   inmb = d[["qaly"]] * k_grid - d[["cost"]]))
}
curve$strategy <- factor(curve$strategy, levels = STRATEGY_LABELS[-1])
marks <- thresholds[c("slv_low", "kaz_low", "course_low", "course"), ]
fig_curve <- ggplot(curve, aes(k / 1e6, inmb / 1e6, colour = strategy)) +
  geom_hline(yintercept = 0, colour = "grey40") +
  annotate("segment", x = marks$k / 1e6, xend = marks$k / 1e6, y = min(curve$inmb) / 1e6,
           yend = 1.07 * max(curve$inmb) / 1e6, linetype = "22", colour = "grey60") +
  annotate("text", x = marks$k / 1e6, y = 1.1 * max(curve$inmb) / 1e6,
           label = c(paste0("El Salvador\n", fmt_pct(p$ocet_pct_low_slv, 0), " GDP"),
                     paste0("Kazakhstan\n", fmt_pct(p$ocet_pct_low_kaz, 0), " GDP"), "0.5 × GDP", "1 × GDP"),
           vjust = 0, size = 3) +
  expand_limits(y = 1.25 * max(curve$inmb) / 1e6) +
  geom_line(linewidth = 1) +
  scale_colour_manual(values = pal_course[c(4, 1, 2)], name = NULL) +
  labs(x = "Ngưỡng chi phí-hiệu quả (triệu VNĐ/QALY)",
       y = "NMB gia tăng so với thường quy (triệu VNĐ)",
       title = "Chiến lược tốt nhất phụ thuộc vào ngưỡng",
       subtitle = "Đường cắt trục 0 tại ICER so với thường quy; đường cao nhất là lựa chọn tối ưu") +
  theme_course()
save_fig(fig_curve, "l04-nmb-threshold.png")
# Check on the plotted curve itself (not on the ICER formula): the rapid test + AMS line
# changes sign exactly where the grid crosses the ICER
d_main <- incremental(res, "rdt_ams", "usual")
line_ams <- curve[curve$strategy == STRATEGY_LABELS[["rdt_ams"]], ]
sign_change <- line_ams$k[which(diff(sign(line_ams$inmb)) != 0)[1] + 1]
stopifnot(abs(sign_change - icer_main) <= diff(k_grid)[1])
Hình 1: NMB gia tăng so với thường quy theo ngưỡng. Đường cao nhất ở mỗi ngưỡng là lựa chọn tối ưu; thường quy là trục 0.

Đoạn mã cuối quy chi phí gia tăng thành QALY mất ở nơi khác. Kiểm tra: lợi ích sức khỏe ròng dương đúng khi ICER thấp hơn ngưỡng (so trên giá trị chưa làm tròn). Đến đây, bạn đã tự tìm được ngưỡng làm đổi quyết định.

# What a threshold means: extra spending displaces health elsewhere.
# Per 1,000 patients: QALYs gained vs QALYs forgone (= extra cost / k)
k_set <- thresholds[c("mwi_low", "slv_low", "course_low", "course"), "k"]
opp <- data.frame(
  k_million = round(k_set / 1e6, 2),
  qaly_gained = 1000 * d_main[["qaly"]],
  qaly_forgone = 1000 * d_main[["cost"]] / k_set
)
opp$net_health <- opp$qaly_gained - opp$qaly_forgone
# Net health benefit is positive exactly when the ICER is below the threshold
# (checked on unrounded values; rounding is only for display)
stopifnot(all((opp$net_health > 0) == (icer_main < k_set)))
opp[, -1] <- round(opp[, -1], 1)
opp
  k_million qaly_gained qaly_forgone net_health
1      1.25       392.2        550.8     -158.6
2     13.80       392.2         50.1      342.1
3     62.75       392.2         11.0      381.2
4    125.50       392.2          5.5      386.7
Mẹo thực hành
  • Vẽ NMB gia tăng theo một dải ngưỡng trước khi viết kết luận: hình trả lời ngay “ở ngưỡng nào kết luận đổi”.
  • Lấy ngưỡng từ cùng một nguồn cho mọi phân tích (trong khóa học là vn_context()), và quy về cùng năm giá, đơn vị tiền tệ với mô hình (M09).
Lỗi thường gặp
  • Viết “đạt chi phí-hiệu quả theo khuyến cáo của WHO (1–3 lần GDP)” làm căn cứ. Hãy nói rõ 1 lần GDP là quy ước thực hành, và báo cáo thêm ngưỡng theo chi phí cơ hội.
  • Mượn khoảng ngưỡng của nước khác mà không nói rõ. Cận dưới của khoảng tăng theo thu nhập, nên mượn khoảng có thể đảo kết luận.
  • Trộn đơn vị: ICER theo DALY với ngưỡng theo QALY, hoặc USD với VNĐ, hoặc GDP khác năm giá.

Bài tập

Bài 1 (dễ). Có ngưỡng nào mà phủ CR cho mọi ca, tức cho mọi người bệnh dùng ngay colistin, là lựa chọn tối ưu không? Giải thích bằng kết quả Bài 3.

Không. Trên lưới 241 ngưỡng, chiến lược tối ưu chỉ là Xét nghiệm nhanh + AMS hoặc Thường quy (bảng dưới). Phủ CR (kháng carbapenem) cho mọi ca bị lấn át tuyệt đối: đắt hơn và ít QALY hơn xét nghiệm nhanh kèm AMS, nên NMB thấp hơn ở mọi ngưỡng dương. Điều này đúng với độ nhạy hiệu dụng cơ sở, tức độ nhạy đã tính mức khớp với tác nhân gây bệnh; Bài 3 cho thấy kết luận đổi khi xét nghiệm kém hơn.

# Exercise 1: is there any threshold at which "cover-all" is the best choice?
best_on_grid <- sapply(k_grid, function(k) best_strategy(res, k))
table(best_on_grid)
best_on_grid
rdt_ams   usual 
    238       3 
any(best_on_grid == "cover_all")
[1] FALSE

Bài 2 (trung bình). Tính ICER theo DALY tránh được và theo QALY tăng thêm, rồi đổi mỗi ICER thành tỷ lệ GDP bình quân đầu người. Vì sao không được so ICER theo DALY với cận dưới 11% của Woods?

ICER theo DALY là 1.14 triệu VNĐ, bằng 0.9% GDP/người; theo QALY là 1.4%. Khoảng của Woods tính theo QALY, nên đem ICER theo DALY so với khoảng ấy là sai đơn vị. Phải so ICER theo DALY với ngưỡng theo DALY (như của Ochalek), hoặc ICER theo QALY với ngưỡng theo QALY. Khóa học dùng ngưỡng 1 lần GDP cho cả hai đơn vị chỉ vì đó là quy ước, không phải ước tính.

# Exercise 2: spot the unit error. The ICER per DALY averted is a different number from
# the ICER per QALY gained, so it cannot be set against a per-QALY threshold
fr_daly <- efficiency_frontier(res$strategy, res$cost, -res$daly)
icer_daly <- fr_daly$icer[fr_daly$strategy == "rdt_ams"]
round(c(icer_per_qaly_million = icer_main / 1e6, icer_per_daly_million = icer_daly / 1e6,
        share_gdp_qaly = icer_main / gdp, share_gdp_daly = icer_daly / gdp), 3)
icer_per_qaly_million icer_per_daly_million        share_gdp_qaly 
                1.762                 1.138                 0.014 
       share_gdp_daly 
                0.009 

Bài 3 (khó). Ở ngưỡng thấp của khóa học (0.5 lần GDP bình quân đầu người), giá xét nghiệm tối đa để xét nghiệm nhanh kèm AMS vẫn tốt hơn thường quy là bao nhiêu? So với giá BHYT hiện hành.

Giá xét nghiệm cộng thẳng vào chi phí kỳ vọng, nên giá tối đa \(= c_{\text{test}} + \Delta E \cdot \lambda - \Delta C\): 24.69 triệu VNĐ, gấp 32 lần giá 771,700 VNĐ (Bộ Y tế 2024). Đoạn mã kiểm tra lại bằng hàm tìm nghiệm của Bài 5. Chỗ này người mới hay nhầm: con số trên chỉ so với thường quy; khi so với cả bốn chiến lược, đối thủ mạnh nhất có thể khác và giá tối đa thấp hơn (Bài 5).

# Exercise 3: highest test price at which rapid test + AMS still beats usual care at the
# course's low threshold (0.5 x GDP per capita). The test price adds one-for-one to expected
# cost, so the maximum price solves  dQALY x k - (dCost + (price - base price)) = 0
k_low <- p$wtp_low
price_max <- p$c_test + d_main[["qaly"]] * k_low - d_main[["cost"]]
round(c(threshold_million = k_low / 1e6, price_max_million = price_max / 1e6,
        base_price_million = p$c_test / 1e6, ratio = price_max / p$c_test), 3)
 threshold_million  price_max_million base_price_million              ratio 
            62.750             24.692              0.772             31.997 
# Check against the root finder of Lesson 5 (a preview of threshold_value())
q <- modifyList(p, list(wtp = k_low))
price_root <- threshold_value(q, "c_test", lower = 0, upper = 100 * price_max, outcome = inmb)
stopifnot(abs(price_root - price_max) < 1, price_max > p$c_test)

Tài liệu tham khảo

# Slide Lời giảng chính Hình/Code
1 Câu hỏi Trả bao nhiêu cho một năm sống khỏe mạnh? 1 lần GDP bằng gần hai năm lương tối thiểu Hộp “Vì sao bạn nên quan tâm?”
2 Chi phí cơ hội Ngân sách cố định; tiền cho việc này là sức khỏe mất ở việc khác Công thức NHB
3 Phía cung và phía cầu Năng suất biên của hệ thống so với mức sẵn lòng chi trả Sơ đồ hai khái niệm
4 Quy tắc 1–3 lần GDP Nguồn gốc 2001; vì sao bị phê phán Hai điểm yếu
5 Vẫn được dùng nhiều Đa số nghiên cứu ở nước thu nhập thấp và trung bình; ít biện luận Leech 2018, Kazibwe 2022
6 Ước tính chi phí cơ hội Cận dưới tăng theo thu nhập; Việt Nam nằm giữa El Salvador và Kazakhstan Woods 2016, Ochalek 2018
7 Ngưỡng của khóa học 1 lần GDP: thông lệ các CEA ở Việt Nam; 0.5 lần: độ nhạy theo chi phí cơ hội Chunk l04-candidates
8 Quyết định đổi chiều Chỉ ở ngưỡng thấp hơn ICER; NMB gia tăng theo ngưỡng figs/l04-nmb-threshold.png
9 QALY được và QALY mất Trên 1,000 người bệnh, ở bốn ngưỡng Chunk l04-opportunity
10 Báo cáo đúng cách Dải ngưỡng; cả 1 lần và 0.5 lần GDP; kèm tác động ngân sách và công bằng Danh sách ba bước