Mục lục bài viết

Bằng chứng và phạm vi

Đối chiếu định nghĩa Fidelity, công thức Sierra Chart và tài liệu Chaikin Analytics. Các nguồn mô tả công cụ; nhãn accumulation/distribution là cách diễn giải, không phải quan sát dòng tiền tổ chức trực tiếp. [1] [2] [3]

Dữ liệu và thị trườngOHLCV nhất quán theo cùng bar; cần high, low, close và volume. Với tick volume, CMF cũng chỉ là biến thể dùng số cập nhật giá.
Khung thời gian nghiên cứuKhung ngày hoặc intraday phải được thử riêng; các cửa sổ trong bài là cấu hình nghiên cứu, không phải tham số tối ưu.
Chuỗi CMF tổng hợp trên thang −1 đến 1, vượt ngưỡng thử nghiệm 0,05 rồi suy yếu; đây không phải giá hay tiền ròng.Mở hình kích thước đầy đủ
Dữ liệu minh họa tự tạo. Chuỗi CMF tổng hợp trên thang −1 đến 1, vượt ngưỡng thử nghiệm 0,05 rồi suy yếu; đây không phải giá hay tiền ròng.

Quy trình thực hành

Sơ đồ quy trình Chaikin Money Flow: vị trí đóng cửa có trọng số volume
Các bước được mô tả đầy đủ bên dưới. Tại mỗi bước, dữ liệu thiếu hoặc điều kiện sai phải có lý do loại bỏ.
  1. Kiểm tra OHLCVLoại dữ liệu vô lý và xác định nến H=L.
  2. Tính multiplierClose trong range; không dùng dấu close-to-close.
  3. Gia quyền volumeTổng MFV chia tổng V theo cửa sổ đã khóa.
  4. Ghép cấu trúcChờ breakout hoặc divergence nhân quả.
  5. Đo tăng thêmSo với multiplier không volume trên cùng candidate.

CMF khác OBV ở câu hỏi về vị trí

OBV nhìn dấu close so với close trước. CMF nhìn close nằm trong nửa trên hay dưới range của chính nến đó. Khi H>L, multiplier = (2C−H−L)/(H−L), bằng +1 nếu đóng tại high, −1 nếu tại low, và 0 tại trung điểm. [1] Vì thế nến giảm so với hôm qua vẫn có thể đóng gần high hôm nay và đóng góp dương.

CMF dùng tổng multiplier nhân volume chia tổng volume trong cửa sổ. Bài này sử dụng thang −1 đến 1; một số sản phẩm hiển thị nhân 100. Chaikin Analytics mô tả thang ±100. [3] Phải so đúng thang đo trước khi áp threshold 0,05 hoặc 5.

Định nghĩa edge case trước khi chạy

Khi high bằng low, phép chia gốc không xác định. Quy ước nghiên cứu ở đây đặt multiplier bằng 0 nhưng vẫn cộng volume vào mẫu số, thể hiện không có bằng chứng về vị trí đóng trong range. Một nền tảng có thể xử lý khác; ghi rõ version và thử độ nhạy ở thị trường hay gặp nến phẳng.

Nếu high<low, close ngoài range hoặc volume âm thì đánh dấu dữ liệu lỗi. Nếu tổng volume bằng 0 thì CMF=NA, không tự coi là 0 trung tính. Độ dài 21 là cấu hình phổ biến được Fidelity nêu; mọi thử nghiệm 10/20/50 là biến thể phải ghi nhận. [1] [2]

for i in full_window(t, n=21):
    assert L[i] <= C[i] <= H[i] and V[i] >= 0
    multiplier[i] = 0 if H[i] == L[i] else (2*C[i]-H[i]-L[i])/(H[i]-L[i])
denominator = sum(V[i] for i in full_window(t,21))
cmf[t] = NA if denominator == 0 else sum(multiplier[i]*V[i] for i in full_window(t,21))/denominator
filter_ok = cmf[t] > 0.05  # proposed threshold, scale -1..1

Ví dụ ba nến và lỗi gap

Cửa sổ nhỏ để tính tay: nến A H=110, L=100, C=108, V=100 cho multiplier 0,6; B H=112, L=102, C=104, V=200 cho −0,6; C H=L=C=105, V=100 cho 0 theo quy ước bài. CMF=(60−120+0)/400=−0,15. Nếu bỏ nến phẳng khỏi cả mẫu số, kết quả sẽ là −0,20: đó là quy ước khác.

Phản ví dụ gap: close hôm qua 110; hôm nay gap xuống rồi giao dịch H=101, L=99, C=100,8. Multiplier = 0,8 dương, dù close giảm 9,2 so với hôm qua. CMF không tự đo thiệt hại qua gap. Một hệ thống coi CMF dương luôn là bullish có thể mua giữa cú giảm mạnh.

Xác nhận breakout và phép thử persistence

Khóa kháng cự từ cửa sổ hoặc pivot đã xác nhận. Khi close phá lên, thử hai filter riêng: CMF hiện tại >0; hoặc trong 5 nến gần nhất có ít nhất 4 nến CMF>0. Điều kiện thứ hai đo tính kéo dài thay vì một điểm; 5 và 4 là ngưỡng nghiên cứu, không được gán là quy tắc gốc.

Vào ở sự kiện kế tiếp sau close; stop dưới mức vô hiệu cấu trúc đã biết. Nếu target 2R và time-stop 20 nến là baseline, giữ chúng giống nhánh không CMF. Không đổi stop sang một mức xa hơn chỉ vì CMF vẫn dương. Nếu filter báo dương nhưng cấu trúc phá xuống, detector giá phải hủy candidate theo quy tắc ban đầu.

Divergence cần ghép timestamp

Một phiên bản bullish divergence lấy hai đáy giá đã xác nhận; giá đáy sau thấp hơn nhưng CMF tại mốc đó cao hơn. Không chọn đỉnh/đáy CMF độc lập mà không định khoảng ghép. Chỉ phát candidate từ lúc đáy sau được xác nhận và yêu cầu trigger giá riêng.

Vì CMF là rolling sum, một nến volume lớn rời cửa sổ có thể làm CMF đổi dấu dù nến hiện tại bình thường. Lưu đóng góp của nến vào và nến ra để giải thích tín hiệu. Đây là hiệu ứng cơ học, không nhất thiết một dòng tiền mới xuất hiện.

Thiết kế đối chứng có ý nghĩa

So CMF với trung bình multiplier không volume trên cùng candidate. Điều này trực tiếp hỏi liệu gia quyền volume có giá trị hơn chỉ nhìn vị trí close. Sau đó mới thử CMF cùng RVOL; tránh coi hai biến cùng gốc volume là hai xác nhận độc lập.

Báo kết quả riêng ngày gap và không gap, nến phẳng và không phẳng, nhóm volume tập trung và phân tán. Khóa cửa sổ/threshold, tính phí, kiểm tra ngoài mẫu theo thời gian. Không kết luận có lãi chỉ từ ví dụ divergence hoặc vùng màu xanh kéo dài của một cổ phiếu thắng.

Sai lầm thường gặp

CMF dương sau gap giảm

CMF nhìn range hiện tại nên có thể trái hướng close-to-close.

Ngưỡng sai thang

0,05 và 5 tương đương chỉ khi thang hiển thị khác 100 lần.

Nhầm với Chaikin Oscillator

Oscillator lấy chênh EMA của ADL; CMF là tỷ số rolling sum.

Checklist trước khi dùng phương pháp

Tự đánh dấu khi đã kiểm tra trên dữ liệu của bạn. Trạng thái lưu trong trình duyệt này; đây không phải chứng nhận chiến lược có lãi.

0/7 mục

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

CMF có phải tiền ròng không?

Không. Đây là proxy từ OHLCV, không phải báo cáo dòng tiền hay nhận diện tài khoản.

CMF và OBV trái nhau có lỗi không?

Chưa chắc. Hai chỉ báo gán dấu bằng hai quy tắc khác nhau; gap là một ví dụ dễ tạo khác biệt.

Nguồn nghiên cứu

Các nguồn dưới đây hỗ trợ phần định nghĩa hoặc bằng chứng được ghi bên cạnh. Mã giả, ví dụ minh họa và tham số đề xuất trong bài cần được kiểm định riêng.

  1. Chaikin Money FlowFidelity. Định nghĩa, công thức, kỳ 21 và diễn giải thông dụng. Đối chiếu: .
  2. Chaikin Money Flow — Studies ReferenceSierra Chart. Công thức triển khai CMF trong nền tảng. Đối chiếu: .
  3. Chaikin Money FlowChaikin Analytics. Tài liệu từ nhà cung cấp mang tên tác giả, thang ±100 và giới hạn suy luận từ giá/volume. Đối chiếu: .

Đọc tiếp theo phương pháp

Lưu ý rủi ro

Nội dung phục vụ giáo dục và thiết kế nghiên cứu, không phải lời khuyên tài chính. Backtest là mô phỏng lịch sử, không bảo đảm hiệu quả tương lai và không đặt lệnh giao dịch thật. Các phương pháp trong thư viện không mặc nhiên là tính năng đã có trong ứng dụng. Xem phương pháp tính và trung tâm học.

Kiểm tra quy tắc trước khi dùng vốn thật

Đối chiếu khả năng hỗ trợ của ứng dụng, dữ liệu và từng giao dịch mô phỏng; các detector nâng cao có thể cần triển khai riêng.

Tải Backtest trên App Store