Strasmore Research
Học tập Matt ConnorBởi Matt Connor

Time in force: Day, GTC, IOC, FOK là gì?

Time in force quyết định lệnh tồn tại bao lâu, có khớp một phần không và khi nào bị hủy. Tìm hiểu các mốc auction cutoff để đặt lệnh đúng.

Time in force là trường trên phiếu lệnh trả lời một câu hỏi: lệnh này sẽ duy trì hiệu lực trong bao lâu? Loại lệnh xác định mức giá. Time in force xác định thời hạn và điều kiện khớp đi kèm. Mọi phiếu lệnh cổ phiếu và quyền chọn đều có cả hai trường này. Giá trị mặc định mà nền tảng tự điền vẫn là một lựa chọn.

Time in force trong giao dịch là gì?

Một lệnh có hai thiết lập độc lập. Thiết lập thứ nhất là giá. Lệnh thị trường chấp nhận mức giá đang được chào trên sổ lệnh; lệnh giới hạn nêu mức giá bất lợi nhất mà bạn chấp nhận. Hướng dẫn lệnh thị trường và lệnh giới hạn trình bày chi tiết phần này.

Thiết lập thứ hai là thời hạn. Time in force cho địa điểm giao dịch biết phần chưa khớp của lệnh sẽ tiếp tục có hiệu lực trong bao lâu, và liệu có chấp nhận khớp một phần hay không. Lệnh giới hạn mua 500 cổ phiếu ở mức $50 đồng thời chứa cả hai chỉ dẫn: mức giá và thời hạn hiệu lực. Thay đổi thời hạn nghĩa là bạn đã gửi một lệnh khác, ngay cả khi mức giá không đổi.

Thuật ngữ này khá ngắn gọn. Bốn thời hạn bao phủ gần như mọi phiếu lệnh mà nền tảng dành cho nhà đầu tư cá nhân thường hiển thị: trong ngày, good-til-canceled, good-til-date, cùng cặp chỉ có hiệu lực tức thời là immediate-or-cancel và fill-or-kill. Một số điều kiện thực thi có thể được bổ sung, còn các chỉ dẫn đấu giá thay thế hoàn toàn trường thời hạn.

Lệnh trong ngày, GTC và good-til-date

Day. Lệnh có hiệu lực đến hết phiên giao dịch thông thường. Khối lượng chưa khớp sẽ bị hủy khi thị trường đóng cửa. Đây là mặc định trên gần như mọi nền tảng dành cho nhà đầu tư cá nhân. Lệnh trong ngày được nhập lúc 10:00 sáng nhưng chưa khớp lúc 4:00 chiều sẽ không còn tồn tại. Lệnh không được chuyển sang ngày mai.

Good-til-canceled (GTC). Lệnh duy trì qua nhiều phiên cho đến khi khớp hoặc bạn hủy lệnh. Các sở giao dịch cổ phiếu Mỹ chủ yếu xử lý theo lệnh trong ngày. Vì vậy, lệnh GTC thường được lưu tại broker và nhập lại vào mỗi buổi sáng. Vị trí trong hàng chờ cũng được thiết lập lại: vị trí của ngày hôm trước tại mức giá đó không còn nữa.

Good-til-date (GTD). GTC với ngày hết hạn do bạn chỉ định. Tùy chọn này hữu ích khi lý do đặt lệnh chỉ có giá trị trong một khoảng thời gian nhất định.

Extended-hours day. Một số nền tảng cung cấp thời hạn để lệnh trong ngày tiếp tục có hiệu lực trong cả phiên trước giờ mở cửa và sau giờ giao dịch, thay vì dừng lúc 4:00 chiều.

Khoảng thời gian hiệu lực của lệnh trong ngày tương ứng với phân bổ khối lượng giao dịch rất không đồng đều. Biểu đồ dưới đây chia khối lượng SPY trong cả tháng theo từng giờ ET, từ 4:00 sáng khi phiên trước giờ mở cửa bắt đầu đến 8:00 tối khi phiên sau giờ giao dịch kết thúc.

Truy vấnKhối lượng cổ phiếu SPY theo giờ ET, tháng 6/2026
Câu lệnh SQL chính xác đằng sau mỗi con số
SELECT
    formatDateTime(toStartOfHour(toTimeZone(window_start, 'America/New_York')), '%H:%i') AS et_time,
    round(100 * sum(volume) / sum(sum(volume)) OVER (), 2)                               AS pct_of_volume
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
  AND window_start >= toDateTime('2026-06-01 08:00:00', 'UTC')
  AND window_start <  toDateTime('2026-07-01 00:00:00', 'UTC')
GROUP BY et_time
ORDER BY et_time
Run this yourself

Trong tháng 6/2026, giờ 04:00 chiếm 0.27% khối lượng cổ phiếu hàng tháng của SPY. Giờ 09:00, bắt đầu cùng tiếng chuông lúc 9:30, chiếm 9.32%. Giờ 16:00 là một khoảng thời gian kết hợp: bao gồm giao dịch khớp trong đấu giá đóng cửa và phần đầu của phiên sau giờ giao dịch, đạt 14.42%. Lệnh trong ngày thông thường có hiệu lực trong phần cao ở giữa biểu đồ, nhưng không có hiệu lực ở hai đầu.

Điều gì xảy ra với lệnh GTC sau khi chia tách hoặc trả cổ tức?

Lệnh GTC có thể tồn tại trong nhiều tuần, nên các sự kiện doanh nghiệp có thời gian tác động đến lệnh. Có hai cách xử lý phổ biến. Một số broker hủy mọi lệnh GTC đang mở đối với cổ phiếu khi cổ phiếu giao dịch không hưởng quyền hoặc khi việc chia tách có hiệu lực. Các broker khác điều chỉnh giá giới hạn và khối lượng đang chờ để phù hợp với số lượng cổ phiếu mới. Cả hai cách đều có cơ sở. Nhưng chúng không giống nhau, và phiếu lệnh không cho biết cách nào áp dụng cho tài khoản của bạn.

Hầu hết broker cũng giới hạn trực tiếp thời hạn của GTC, thường ở mức 60 đến 90 ngày lịch. Sau thời hạn đó, lệnh tự hết hiệu lực. Một lệnh được đặt rồi bỏ quên từ tháng 3 thường đã biến mất vào tháng 6 mà thị trường chưa từng chạm đến mức giá đó.

Trường hợp chia tách là ví dụ rõ nhất. Chia tách ngược theo tỷ lệ 1 đổi 10 biến 100 cổ phiếu thành 10 cổ phiếu và nhân giá tham chiếu lên mười lần vào cùng buổi sáng. Lệnh giới hạn mua ở mức $2 đối với số cổ phiếu cũ không còn ý nghĩa đối với số cổ phiếu mới. Chia tách không phải sự kiện hiếm gặp. Biểu đồ đếm mọi lần chia tách trên thị trường Mỹ theo từng tháng.

Truy vấnSố lần chia tách cổ phiếu Mỹ mỗi tháng, forward và reverse
Câu lệnh SQL chính xác đằng sau mỗi con số
SELECT
    formatDateTime(toStartOfMonth(execution_date), '%Y-%m')            AS month,
    countDistinctIf(id, toFloat64(split_to) > toFloat64(split_from))   AS forward_splits,
    countDistinctIf(id, toFloat64(split_to) < toFloat64(split_from))   AS reverse_splits
FROM global_markets.stocks_splits
WHERE execution_date >= toDate('2025-08-01')
  AND execution_date <  toDate('2026-08-01')
GROUP BY month
ORDER BY month
Run this yourself

Khoảng thời gian kéo dài từ 2025-08 đến 2026-07. Trong 2026-07, dữ liệu thị trường ghi nhận 45 lần chia tách xuôi và 119 lần chia tách ngược. Mỗi ngày đó là một buổi sáng mà lệnh đang chờ đối với mã tương ứng bị hủy hoặc được viết lại. Nhà đầu tư đã đặt lệnh từ nhiều tuần trước chỉ biết điều này sau đó.

IOC và FOK khác nhau thế nào?

Immediate-or-cancel và fill-or-kill cũng là các dạng thời hạn. Thời hạn của chúng chỉ kéo dài trong một thời điểm tức thì.

Immediate-or-cancel (IOC). Khớp ngay lượng có sẵn tại mức giá giới hạn, rồi hủy phần còn lại. Khớp một phần là kết quả thường thấy. Một lệnh IOC mua 5.000 cổ phiếu nhưng chỉ có 800 cổ phiếu sẵn có sẽ khớp 800 cổ phiếu; 4.200 cổ phiếu còn lại bị hủy ngay lập tức.

Fill-or-kill (FOK). Khớp toàn bộ khối lượng ngay lập tức, nếu không thì hủy toàn bộ. Cùng lệnh trên, nếu chỉ có 800 cổ phiếu sẵn có thì sẽ không khớp cổ phiếu nào.

All-or-none (AON). Khớp toàn bộ khối lượng nhưng không cần thực hiện ngay. Lệnh AON chờ đến khi có đủ toàn bộ khối lượng thay vì bị hủy. Vì vậy, lệnh này cần có một thời hạn đi kèm: AON trong ngày hoặc AON good-til-canceled.

Việc fill-or-kill có thực tế hay không phụ thuộc vào quy mô lệnh so với khối lượng mà mã đó thực sự giao dịch. Biểu đồ dưới đây chọn một giờ giữa buổi sáng vào một ngày cố định và đo các giao dịch đã thực hiện.

Truy vấnQuy mô giao dịch của 5 mã, 10:00–11:00 sáng ET ngày 10/06/2026
Câu lệnh SQL chính xác đằng sau mỗi con số
SELECT
    ticker                                          AS symbol,
    round(avg(size), 0)                             AS avg_print_shares,
    round(100 * countIf(size >= 1000) / count(), 2) AS large_print_pct
FROM global_markets.stocks_trades
WHERE ticker IN ('SPY', 'AAPL', 'NVDA', 'MSFT', 'KO')
  AND sip_timestamp >= toDateTime('2026-06-10 14:00:00', 'UTC')
  AND sip_timestamp <  toDateTime('2026-06-10 15:00:00', 'UTC')
  AND size > 0
GROUP BY ticker
ORDER BY large_print_pct DESC
Run this yourself

Trong giờ đó, NVDA có tỷ trọng giao dịch ở mức 1.000 cổ phiếu trở lên lớn nhất, chiếm 0.32% số giao dịch, với quy mô giao dịch trung bình là 38 cổ phiếu. Ở đầu kia trong năm mã, MSFT chỉ có 0.1% số giao dịch nằm trong nhóm đó. Nếu gửi lệnh fill-or-kill mua 5.000 cổ phiếu vào thị trường nơi giao dịch điển hình chỉ vài trăm cổ phiếu, khả năng cao lệnh sẽ bị hủy thay vì được khớp.

Market-on-close và limit-on-close: các chỉ dẫn đấu giá

Hai chỉ dẫn không nêu thời hạn. Chúng nêu một sự kiện.

Market-on-close (MOC) đưa lệnh vào đấu giá đóng cửa và khớp tại giá đóng cửa chính thức. Limit-on-close (LOC) cũng thực hiện như vậy nhưng kèm mức giá trần hoặc sàn. Lệnh chỉ tham gia khi giá đóng cửa bằng hoặc tốt hơn mức giới hạn. Các lệnh tương ứng vào buổi sáng là market-on-open và limit-on-open, được chuyển vào phiên khớp lệnh mở cửa.

Điểm cần lưu ý là thời hạn chốt lệnh. Tại các địa điểm niêm yết chính của Mỹ, thời hạn nhập lệnh MOC và LOC là 3:50 chiều ET. Sau thời điểm đó, lệnh không thể bị hủy hoặc sửa đổi, ngoại trừ việc chỉnh sửa một lỗi thực sự. Các lệnh tương ứng cho phiên mở cửa có thời hạn khoảng 9:28 sáng ET. Trong khoảng thời gian cuối, bạn đã cam kết với mức giá mà phiên khớp lệnh tạo ra. Hướng dẫn về đấu giá đóng cửađấu giá mở cửa giải thích cách tính mỗi phiên khớp lệnh.

Đổi lại việc từ bỏ quyền rút lệnh, nhà giao dịch nhận được giao dịch khớp tại giá đóng cửa chính thức. Biểu đồ đo dữ liệu thị trường từ 3:45 chiều ET đến khi đóng cửa, lấy trung bình trên các phiên SPY trong một tháng.

Truy vấnKhối lượng SPY mỗi phút trước giờ đóng cửa, bình quân phiên tháng 6/2026
Câu lệnh SQL chính xác đằng sau mỗi con số
SELECT
    formatDateTime(toTimeZone(window_start, 'America/New_York'), '%H:%i') AS et_time,
    round(sum(volume) / countDistinct(toDate(toTimeZone(window_start, 'America/New_York'))) / 1e6, 2) AS volume_millions
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
  AND window_start >= toDateTime('2026-06-01 08:00:00', 'UTC')
  AND window_start <  toDateTime('2026-07-01 00:00:00', 'UTC')
  AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
       + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 945 AND 960
GROUP BY et_time
ORDER BY et_time
Run this yourself

Biểu đồ được đọc theo từng phút. Cột 15:45 có khối lượng trung bình 0.22 triệu cổ phiếu SPY mỗi phiên, còn cột 16:00 có khối lượng trung bình 0.39 triệu cổ phiếu. Phiên khớp lệnh không phải là thêm một phút giao dịch liên tục. Đây là một sự kiện khớp lệnh duy nhất tại một mức giá chính thức. Phiếu lệnh MOC hoặc LOC là yêu cầu tham gia sự kiện đó. Thời hạn 3:50 chiều là cái giá phải trả cho yêu cầu này.

Time in force ngoài giờ giao dịch thông thường

Các phiên giao dịch ngoài giờ làm thay đổi quy tắc. Hầu hết địa điểm giao dịch chỉ chấp nhận lệnh giới hạn ngoài khung 9:30 sáng đến 4:00 chiều ET. Lệnh trong ngày được nhập cho phiên thông thường cũng không tự động chuyển sang phiên sau giờ giao dịch. Hướng dẫn về giao dịch sau giờ và trước giờ mở cửa trình bày chi tiết các khung giờ này. Biểu đồ theo giờ ở trên cho thấy thanh khoản thấp mà quy tắc chỉ chấp nhận lệnh giới hạn hướng tới: giờ 19:00 chiếm 0.17% khối lượng SPY trong tháng.

Quyền chọn có thêm một điểm cần lưu ý. Thời điểm cuối cùng một hợp đồng có thể được giao dịch sử dụng múi giờ khác với cổ phiếu cơ sở. Quyền chọn sắp hết hạn có thời hạn chốt cứng mà không thiết lập thời hạn nào có thể kéo dài thêm. Hướng dẫn về thời điểm quyền chọn ngừng giao dịch trình bày các chi tiết cụ thể.

Đọc phiếu lệnh: thời hạn cộng điều kiện

  • Day, không có điều kiện: có hiệu lực đến khi đóng cửa, cho phép khớp một phần. Đây là mặc định thông thường.
  • Day kèm IOC: khớp lượng đang có sẵn ngay lúc đó và hủy phần còn lại. Không có lệnh nào nằm lại trên sổ lệnh.
  • Day kèm FOK: khớp toàn bộ khối lượng ngay lúc đó hoặc không khớp gì. Không có lệnh nào nằm lại trên sổ lệnh.
  • Day kèm AON: chờ đến khi đóng cửa để khớp toàn bộ khối lượng.
  • GTC kèm AON: chờ qua nhiều phiên để khớp toàn bộ khối lượng cho đến khi broker hết hạn lệnh.
  • GTD, không có điều kiện: cho phép khớp một phần và có hiệu lực đến ngày bạn chỉ định.
  • MOC hoặc LOC: không có trường thời hạn. Đấu giá là chỉ dẫn, còn 3:50 chiều ET là thời điểm cuối cùng để thay đổi quyết định.

Tên gọi trên các nền tảng có thể khác nhau. Bộ chỉ dẫn cơ bản không thay đổi. Đối chiếu thuật ngữ trên màn hình với danh sách này thường chỉ mất khoảng một phút.

Câu hỏi thường gặp

Time in force trên một lệnh có nghĩa là gì?

Time in force là chỉ dẫn xác định thời gian lệnh tiếp tục có hiệu lực trước khi tự động bị hủy. Chỉ dẫn này tách biệt với loại lệnh, vốn xác định mức giá. Một phiếu lệnh có cả hai trường.

Lệnh trong ngày và lệnh GTC khác nhau thế nào?

Lệnh trong ngày bị hủy khi phiên giao dịch thông thường kết thúc nếu chưa được khớp. Lệnh good-til-canceled tiếp tục có hiệu lực qua nhiều phiên cho đến khi khớp hoặc bạn hủy. Trong mọi trường hợp, lệnh không tồn tại lâu hơn thời hạn hết hiệu lực do broker quy định.

Lệnh GTC có duy trì vô thời hạn không?

Không. Hầu hết broker giới hạn lệnh GTC ở khoảng 60 đến 90 ngày lịch. Nhiều broker cũng hủy lệnh khi cổ phiếu giao dịch không hưởng quyền hoặc hoàn tất một đợt chia tách. Cách xử lý cụ thể tùy broker và được ghi trong thỏa thuận tài khoản.

IOC và FOK khác nhau thế nào?

Lệnh immediate-or-cancel khớp lượng đang có sẵn ngay lập tức và hủy phần còn lại. Vì vậy, khớp một phần là điều bình thường. Lệnh fill-or-kill yêu cầu khớp toàn bộ khối lượng ngay lập tức; nếu không đủ thì không có giao dịch nào được thực hiện.

Có thể hủy lệnh market-on-close không?

Không thể hủy sau thời hạn chốt lệnh của địa điểm giao dịch. Tại các sở giao dịch niêm yết chính của Mỹ, thời hạn này là 3:50 chiều ET. Trước thời điểm đó, lệnh MOC có thể được nhập hoặc hủy như mọi lệnh khác. Sau đó, chỉ được chấp nhận sửa lỗi thực sự.


Mỗi biểu đồ trong bài này đều đi kèm câu lệnh SQL đã tạo ra biểu đồ. Hãy mở biểu đồ để xem chính xác cách con số được tính. Nếu muốn đo lường diễn biến giao dịch của một mã cụ thể trong những phút cuối phiên, hãy đặt câu hỏi bằng ngôn ngữ tự nhiên trên terminal Strasmore.