Hai loại chỉ báo: cho cửa sổ chính và cửa sổ phụ
Như bạn đã biết, các chỉ báo trong MetaTrader 5 có thể hiển thị các đường của chúng ở hai vị trí: trong cửa sổ biểu đồ chính trên cùng với các báo giá hoặc trong một cửa sổ riêng biệt được tạo bên dưới biểu đồ giá. Hai chế độ này loại trừ lẫn nhau: mỗi chỉ báo được thiết kế hoặc cho cửa sổ chính hoặc cho cửa sổ phụ, nhưng không thể kết hợp cả hai phương thức.
Có một số giải pháp thay thế cho các trường hợp khi chương trình cần hiển thị dữ liệu ở cả hai cửa sổ. Ví dụ, một dự án có thể được triển khai dưới dạng hai chỉ báo tương tác với nhau (khía cạnh kỹ thuật của sự tương tác vẫn để mở: có thể là tài nguyên, tệp, DBMS, hoặc bộ nhớ chia sẻ được truy cập qua DLL). Một cách tiếp cận khác liên quan đến việc sử dụng các bộ đệm chỉ báo trong một trong các cửa sổ, chẳng hạn như ở bảng dưới cùng, và thực hiện hiển thị trên biểu đồ chính bằng đối tượng đồ họa.
Nhiều chỉ báo có thể được áp dụng cả trong cửa sổ chính và trong cửa sổ phụ. Nếu chỉ báo được thiết kế để hoạt động trong một cửa sổ riêng biệt, thì việc kéo nó bằng chuột từ Navigator vào cửa sổ chính sẽ tự động tạo một cửa sổ mới cho chỉ báo này. Tuy nhiên, nếu cửa sổ đã có một cửa sổ phụ với một chỉ báo khác, thì chỉ báo mới có thể được kéo vào cùng vị trí đó, từ đó căn chỉnh hai hoặc nhiều chỉ báo. Trong trường hợp này, có thể có nhiều chế độ co giãn các chỉ báo trong một cửa sổ. Theo mặc định, các cấu trúc của mỗi chỉ báo được co giãn tự động và độc lập với nhau theo toàn bộ chiều cao của bảng, nhưng điều này có thể được thay đổi (xem ví dụ SubScaler.mq5
trong phần về sự kiện bàn phím).
Cửa sổ hiển thị chỉ báo được chọn bằng một trong hai chỉ thị biên dịch.
#property indicator_chart_window // hiển thị chỉ báo trong cửa sổ biểu đồ
#property indicator_separate_window // hiển thị chỉ báo trong một cửa sổ riêng biệt
2
Nhà phát triển chỉ báo nên chèn một trong số chúng vào đầu mã nguồn. Nếu không có chỉ thị nào được đưa vào, tùy chọn mặc định sẽ xuất nó ra cửa sổ chính, nhưng trình biên dịch sẽ tạo ra một cảnh báo. Chúng ta đã thấy điều này trong phần trước. Trong các ví dụ tiếp theo, chúng ta sẽ chắc chắn chỉ định #property indicator_chart_window
hoặc #property indicator_separate_window
.
Cảnh báo biên dịch thứ hai của IndStub.mq5
liên quan đến việc thiếu cài đặt bộ đệm và biểu đồ. Chúng ta sẽ xử lý chúng trong phần tiếp theo.
Hành động của danh sách thả xuống
Apply to
trong cài đặt chỉ báo phụ thuộc vào cửa sổ mà nó được thiết kế cho.Một chỉ báo cho một cửa sổ riêng lẻ có thể được
Applied
vào chỉ báo trong cửa sổ phụ, nhưng không thể áp dụng cho chỉ báo trong cửa sổ chính.Tuy nhiên, chỉ báo cho cửa sổ chính có thể được
Applied to
bất kỳ chỉ báo nào, cả trong cửa sổ chính lẫn trong cửa sổ phụ.