Trang chủBlogPhân Tích Kỹ ThuậtMACD đo momentum của xu hướng như thế nào và dễ bị dùng sai ở đâu
MACD đo momentum của xu hướng như thế nào và dễ bị dùng sai ở đâu
Phân Tích Kỹ Thuật

MACD đo momentum của xu hướng như thế nào và dễ bị dùng sai ở đâu

MACD

Ngọc Hải LươngNgọc Hải Lương
5/10/2026
13 phút phút đọc
29 lượt xem

Phần 1. Bối cảnh, khái niệm và cơ chế

MACD là chênh lệch giữa hai EMA, vì vậy về bản chất đo khoảng cách giữa trend nhanh và trend chậm chứ không phải một nguồn thông tin độc lập ngoài giá. Đây là lý do MACD nên được học như một cơ chế, không phải một mẹo. Với MACD, điều nên làm rõ ngay từ đầu là công cụ đang mô tả hành vi nào của thị trường và horizon nào đủ dài để tín hiệu có cơ hội phát huy. Một nhận định kỹ thuật chỉ trở nên hữu ích khi có thể viết thành điều kiện quan sát trước thời điểm giao dịch, thay vì giải thích ngược sau khi giá đã chạy.

MACD line thường là EMA12-EMA26; signal line là EMA9 của MACD; histogram thể hiện khoảng cách hai đường và tốc độ hội tụ/phân kỳ. Nếu cần lượng hóa, mACD=EMA_fast-EMA_slow; Signal=EMA(MACD); Histogram=MACD-Signal. Khi chuyển sang định lượng, nên cố định cách nhận diện swing, cửa sổ, ngưỡng xác nhận và quy tắc xử lý dữ liệu trước khi xem kết quả. Chỉ cần đổi một trong các lựa chọn này sau khi nhìn chart, mức độ tự do của nhà nghiên cứu tăng mạnh và nguy cơ data snooping cũng tăng theo.

8d6c05eb-37a7-45bb-a049-f263acae1930.png

Close nhất quán và đủ warm-up. Ngoài giá điều chỉnh, nên lưu cả raw price, corporate actions, volume, trading halt và trạng thái niêm yết. Khi cần nghiên cứu intraday, session boundary, auction và timezone phải được chuẩn hóa; nếu không, một “gap” hoặc breakout có thể chỉ là lỗi dựng bar. Điểm quan trọng là một tín hiệu kỹ thuật chỉ có giá trị khi người đọc biết nó đang mô tả xu hướng, động lượng, biến động, dòng tiền hay tâm lý; trộn các vai trò này vào một con số duy nhất thường làm mất khả năng giải thích.

Một cách đọc hữu ích đối với MACD là tách “mô tả” khỏi “dự báo”. Công cụ kỹ thuật trước hết mô tả trạng thái của giá, volume, breadth hoặc volatility; từ trạng thái đó mới hình thành giả thuyết về phân phối lợi nhuận tiếp theo. Hai bước này không nên nhập làm một. Chẳng hạn, một breakout có thể xác nhận rằng cung ở vùng giá cũ đã được hấp thụ, nhưng xác suất continuation vẫn phụ thuộc vào volatility, breadth, thanh khoản và mức extension trước tín hiệu. Khi backtest, nên đo conditional forward return sau trạng thái thay vì mặc định mọi tín hiệu đều là lệnh mua bán giống nhau. Cách làm này giúp giữ phần trực quan của CMT nhưng đặt nó vào ngôn ngữ xác suất và kiểm chứng.

MACD cũng nên được đặt cạnh những công cụ đo một chiều khác của thị trường. Trend indicator trả lời hướng; oscillator mô tả vị trí hoặc momentum; breadth cho biết mức độ tham gia; volume/order flow cho biết cường độ giao dịch; volatility cho biết độ lớn biến động. Khi hai công cụ cùng dựa trên giá quá khứ, việc chúng “xác nhận” nhau chưa chắc tạo thông tin mới. Một cách kiểm tra thực dụng là đo correlation giữa signal, incremental IC hoặc incremental P&L khi thêm từng lớp. Nếu lớp mới chỉ làm tín hiệu đẹp mắt nhưng không cải thiện out-of-sample result hoặc risk profile, nên bỏ.

MACD cross dương dưới zero line có ý nghĩa khác cross dương khi cả hệ thống đang trên zero; bối cảnh trend cần được đưa vào rule Cách đọc đúng là hỏi điều kiện nào làm ví dụ này không còn đúng thay vì tìm thêm ví dụ giống nó. Ví dụ của MACD nên được xem như test case cho pipeline. Ghi lại dữ liệu khả dụng, cách tính, quyết định và điều gì sẽ làm thesis sai; rồi dùng một case đối nghịch để xem rule có phân biệt được hai trạng thái hay chỉ diễn giải sau sự kiện.

Phần 2. Phương pháp, dữ liệu và cách triển khai

Một cách triển khai có thể tái lập là: Phân biệt signal cross, zero-line cross và histogram divergence, kiểm tra từng loại riêng thay vì gộp tất cả thành một chiến lược. Khi đưa MACD vào chiến lược, nên tách bốn lớp: setup, trigger, filter và position management. Setup mô tả bối cảnh; trigger xác định thời điểm hành động; filter loại điều kiện kém chất lượng; position management quyết định size và exit. Cấu trúc này giúp biết lớp nào thực sự tạo giá trị. Nếu thêm filter làm win rate tăng nhưng turnover/capacity xấu đi, P&L sau phí có thể giảm. Báo cáo nên thể hiện contribution từng lớp thay vì chỉ so phiên bản cuối với “không làm gì”.

Trước khi backtest MACD, nên viết một “signal specification” ngắn: universe, timeframe, dữ liệu điều chỉnh, công thức/định nghĩa, thời điểm tín hiệu được biết, entry, exit, stop, sizing và chi phí. Sau đó mới tạo code. Với pattern trực quan, nên cố gắng chuyển thành biến liên tục trước khi ép thành 0/1; ví dụ đo độ sâu retracement, độ dốc trend, volume percentile hoặc khoảng cách tới vùng breakout. Biến liên tục giúp nhìn monotonicity và tránh việc một threshold tùy ý quyết định toàn bộ kết luận. Nếu sau đó cần rule giao dịch, threshold có thể được chọn từ vùng ổn định thay vì điểm tối ưu duy nhất.

Với MACD, tham số nên được xem như cách biểu diễn horizon chứ không phải con số thiêng. Thay vì chỉ thử 14, 20 hay 50 phiên rồi chọn điểm có Sharpe cao nhất, nên kiểm tra một vùng lân cận và chuẩn hóa cửa sổ theo volatility hoặc trading activity khi phù hợp. Nếu signal đảo từ tốt sang xấu chỉ vì dịch một vài phiên, khả năng cao rule đang bám noise. Tốt hơn là tìm monotonic relationship hoặc plateau nơi nhiều cấu hình gần nhau cho cùng kết luận; sau đó chọn cấu hình đơn giản, dễ giải thích và ít turnover hơn.

Một lớp phân tích sâu hơn cho MACD là xây ma trận conditional return thay vì chỉ một đường equity. Có thể chia tín hiệu theo xu hướng lớn, volatility percentile, breadth/liquidity và độ mạnh của chính signal; sau đó đo forward return ở nhiều horizon, hit rate, payoff ratio và tail. Nếu hiệu quả tăng dần khi signal mạnh hơn và giữ cùng dấu ở nhiều bucket, cơ chế đáng tin hơn một cutoff đơn lẻ. Ngược lại, nếu toàn bộ P&L đến từ một bucket hiếm hoặc một vài outlier, cần giảm confidence. Với indicator liên tục, kiểm monotonicity thường cho nhiều thông tin hơn việc tối ưu ngưỡng mua/bán. Đây cũng là cách nhìn xem công cụ bổ sung thông tin hay chỉ tái diễn market regime đã biết.

Baseline cho MACD nên đủ khó để đánh bại. Với signal trend, có thể so với moving-average đơn giản hoặc buy-and-hold cùng risk; với reversal, so với unconditional forward return và một z-score cơ bản. Kết quả cần risk-match trước khi so Sharpe hoặc drawdown. Nếu chiến lược phức tạp hơn chỉ thắng nhờ dùng leverage cao hơn hoặc giữ market beta khác, phần “alpha kỹ thuật” đã bị đánh giá quá mức. Một baseline tốt thường tiết kiệm nhiều tháng tối ưu không cần thiết.

Trong vận hành, nên theo dõi Cross frequency, delay, histogram slope, turnover và conditional return. Với MACD, metric nên có ba lớp: chất lượng tín hiệu, khả năng triển khai và rủi ro đường đi. Hãy theo dõi rolling distribution thay vì chỉ full-sample average, đặc biệt worst-case và tail. Nếu một chỉ số xấu đi, dashboard phải giúp truy về data, model hay execution thay vì chỉ phát cảnh báo chung. Technical Analysis hữu ích nhất khi biến một quan sát trực quan thành rule có timestamp, horizon và điều kiện thoát rõ. Khi không thể viết rule, rất khó phân biệt insight với hindsight.

Độ bền của MACD nên được xem qua nhiều regime, universe và parameter neighborhood. Cần đặc biệt thử delayed fill, spread/fee stress và data vintage khác. Nếu kết luận vẫn giữ được cơ chế dù hiệu suất giảm, đó là dấu hiệu tốt hơn việc giữ nguyên con số P&L. Điểm quan trọng là một tín hiệu kỹ thuật chỉ có giá trị khi người đọc biết nó đang mô tả xu hướng, động lượng, biến động, dòng tiền hay tâm lý; trộn các vai trò này vào một con số duy nhất thường làm mất khả năng giải thích.

Sau khi live, MACD nên được theo dõi bằng signal count, hit rate theo horizon, average payoff, turnover, slippage và conditional performance theo regime. Quan trọng là đo cả “coverage”: nếu signal ngày càng hiếm vì universe thay đổi, Sharpe có thể giữ nhưng capacity giảm. Nên lưu chart hoặc state snapshot tại decision time để review không bị hindsight. Khi decay xuất hiện, trước tiên kiểm data và implementation, sau đó mới kết luận thị trường đã thay đổi.

Một cách thử MACD ở quy mô nhỏ là chọn universe có thanh khoản rõ, tính signal sau khi phiên đóng và chỉ cho phép giao dịch ở phiên kế tiếp để tránh look-ahead. Giới hạn trọng số mỗi mã, đặt turnover cap và ghi lại trạng thái signal tại thời điểm quyết định. Sau vài chục đến vài trăm tín hiệu, phân nhóm kết quả theo trend/sideway, volatility và liquidity. Cách thử này không nhằm tối đa hóa lợi nhuận ngay, mà để biết công cụ thực sự tạo thông tin ở đâu và phần nào của P&L đến từ market beta hoặc timing may mắn.

Ứng dụng MACD nên bắt đầu từ câu hỏi “nó thay đổi quyết định nào?”. Nếu chỉ làm người phân tích tự tin hơn nhưng không thay forecast, size, stop hay hedge, công cụ chưa có vai trò vận hành rõ. Khi vai trò được xác định, việc đánh giá hiệu quả cũng trở nên cụ thể hơn. Technical Analysis hữu ích nhất khi biến một quan sát trực quan thành rule có timestamp, horizon và điều kiện thoát rõ. Khi không thể viết rule, rất khó phân biệt insight với hindsight.

Phần 3. Rủi ro, kiểm soát và cách áp dụng

MACD dùng nhiều EMA của cùng một dữ liệu nên có tính trễ và autocorrelation; thêm nhiều MA filter có thể chỉ lặp thông tin. Ba lỗi thường gặp với MACD là định nghĩa mơ hồ, chọn ví dụ sau sự kiện và dùng nhiều xác nhận có cùng nguồn dữ liệu. Lỗi đầu làm hai người “cùng chiến lược” nhưng backtest khác nhau; lỗi thứ hai tạo hindsight; lỗi thứ ba tạo cảm giác chắc chắn giả. Cách kiểm soát là viết rule đủ chi tiết để người khác tái tạo, dùng full universe thay vì vài chart minh họa và đo incremental information của từng filter. Nếu rule cần quá nhiều ngoại lệ bằng lời, đó là dấu hiệu nên giảm độ phức tạp.

Xem MACD là biểu diễn momentum-trend; chỉ giữ nó nếu tạo incremental value so với moving-average baseline đơn giản. Một rule ứng dụng MACD nên trả lời bốn câu hỏi trước lệnh: trạng thái nào đủ điều kiện, điều gì kích hoạt, khi nào thesis bị vô hiệu và size bao nhiêu khi sai. Việc đặt invalidation trước giúp phân biệt “tín hiệu chưa đúng” với “thesis đã sai”. Nếu market đi ngược nhưng chưa chạm invalidation, không nên tự động nới stop chỉ vì muốn giữ vị thế. Ngược lại, khi state thay đổi, việc cố chờ giá về vốn là anchoring chứ không còn là technical analysis.

Không nên dùng MACD như lý do duy nhất để giao dịch khi dữ liệu quá mỏng, spread lớn, corporate action chưa xử lý hoặc thị trường đang ở trạng thái mà tín hiệu chưa từng được kiểm định. Cũng không nên “ép” tín hiệu vào mọi tài sản. Một pattern có thể hợp với liquid index nhưng không có ý nghĩa ở mã ít giao dịch. Việc chỉ định universe và liquidity floor là một phần của strategy definition, không phải bước lọc sau cùng.

Một cách quản trị MACD thực dụng là dùng versioned specification cùng change log. Mỗi thay đổi phải chỉ ra input/logic nào đổi, vì sao đổi và metric nào được kỳ vọng cải thiện. Review sau đó so expected với realized. Cách này tránh tình trạng model bị chỉnh nhiều lần nhưng không ai còn biết performance hiện tại thuộc về hypothesis ban đầu hay chuỗi patch sau này. Trong thực tế, cùng một hình thái giá có thể mang ý nghĩa khác nhau nếu thanh khoản, volatility và vị trí trong xu hướng khác nhau. Vì thế bối cảnh phải được xem là một biến của mô hình, không phải phần chú thích đặt sau biểu đồ.

Trước khi tăng capital cho MACD, nên có bằng chứng ở bốn lớp: research có thể tái lập, robustness đủ rộng, cost/capacity còn biên an toàn và control vận hành đã được test. Nếu thiếu một lớp, cách hợp lý là giữ ở research hoặc shadow thay vì bù bằng niềm tin vào backtest. Một nhà phân tích có kỷ luật không hỏi “mẫu hình có đúng không” theo nghĩa tuyệt đối, mà hỏi xác suất, payoff và điều kiện vô hiệu của mẫu hình thay đổi ra sao giữa các trạng thái thị trường.

Chu kỳ review của MACD không nên chỉ dựa vào P&L tháng. Nên xem signal frequency, payoff distribution, regime mix và cost theo rolling window; đồng thời lấy ngẫu nhiên một số decision snapshot để kiểm rule có được thực thi đúng không. Nếu tín hiệu giảm chất lượng, tách ba khả năng: market state đổi, implementation lệch hoặc definition đã mất ý nghĩa. Chỉ sau bước phân rã này mới quyết định retune, giảm size hay retire tín hiệu.

Trong một quy trình đầu tư hoàn chỉnh, MACD nên đứng ở đúng vị trí của nó. Nếu đây là công cụ trend, nó có thể định hướng bias và trailing exit; nếu là oscillator, nó phù hợp hơn với timing hoặc state; nếu là breadth/sentiment, nó có thể đóng vai trò filter hoặc risk overlay. Việc xác định vai trò trước giúp tránh cộng nhiều indicator chỉ vì chúng cùng cho tín hiệu mua. Cách thực dụng là đo phần đóng góp tăng thêm của MACD vào forecast, drawdown, turnover hoặc timing; nếu không có incremental value, nên đơn giản hóa hệ thống.

Tóm lại, MACD có giá trị khi được dùng như một ngôn ngữ mô tả trạng thái thị trường rồi chuyển thành rule xác suất, không phải lời tiên tri. Một quy trình tốt đi từ định nghĩa → dữ liệu đúng thời điểm → baseline → signal test → portfolio rule → cost → forward monitoring. Nếu bỏ một mắt xích, chart đẹp rất dễ lấn át bằng chứng. Khi giữ đủ các lớp này, CMT và quant không đối lập nhau: CMT cung cấp giả thuyết về hành vi giá, còn quant buộc giả thuyết phải chịu kiểm định.