• 26ºC, Rain
  • Saturday, 14th February, 2026
  • Trang Chủ
  • Bộ Lọc
  • Nhận Định Thị Trường
  • Phân Tích Doanh Nghiệp
  • Amibroker
    • Code AFL
    • Tự học Amibroker
  • Kiến Thức Đầu Tư
    • Chỉ Báo Kỹ Thuật
    • Phân Tích Cơ Bản
    • Phương Pháp Sóng Elliot
    • Phương Pháp Wyckoff/VSA
    • Vĩ Mô Liên Thị Trường
  • Liên hệ
  • Giới Thiệu
Mới Nhất
  • Phân tích VN-Index ngày 11/08
  • Phân tích HAH
  • Bài 46: Trở thành nhà giao dịch chuyên nghiệp
  • Bài 45: GFX Functions – Bảng trạng thái giao dịch Amibroker
  1. Trang chủ
  2. Amibroker
  3. Tự học Amibroker
  4. Bài 24: Flow Control Statements – Param toggle & param list
Bài 24: Flow Control Statements – Param toggle & param list

Xem nhanh:

  • Tối Ưu Hóa Chỉ Báo Với ParamToggle() và ParamList() Trong Amibroker AFL
  • 1. ParamToggle(): Công Tắc Bật/Tắt Linh Hoạt
  • 2. ParamList(): Lựa Chọn Đa Dạng Từ Danh Sách
  • So Sánh ParamToggle() và ParamList()

Tối Ưu Hóa Chỉ Báo Với ParamToggle() và ParamList() Trong Amibroker AFL

Chào các bạn! Trong Amibroker Formula Language (AFL), việc tạo ra các chỉ báo (indicators) và hệ thống giao dịch linh hoạt là điều cực kỳ quan trọng. Để giúp người dùng dễ dàng điều khiển các chức năng của chỉ báo trực tiếp từ biểu đồ mà không cần chỉnh sửa code, Amibroker cung cấp hai hàm điều khiển tham số mạnh mẽ: ParamToggle() và ParamList(). Chúng cho phép bạn biến chỉ báo của mình thành một công cụ tương tác hơn, giảm thiểu việc chỉnh sửa code lặp lại.


1. ParamToggle(): Công Tắc Bật/Tắt Linh Hoạt

ParamToggle() là hàm tạo ra một tùy chọn bật/tắt (On/Off) hoặc có/không (Yes/No) trong cửa sổ Parameters (Tham số) của chỉ báo. Nó lý tưởng khi bạn muốn điều khiển việc hiển thị hoặc kích hoạt một phần code cụ thể bằng một “công tắc” đơn giản.

Cú pháp của ParamToggle():

TenBien = ParamToggle("Ten Tham So Hien Thi", "GiaTri1|GiaTri2|...", GiaTriMacDinh);

Giải thích các thành phần:

  • "Ten Tham So Hien Thi": Đây là chuỗi văn bản sẽ xuất hiện làm tên của tùy chọn trong cửa sổ Parameters.
  • "GiaTri1|GiaTri2|...": Các giá trị mà công tắc có thể nhận. Chúng được phân cách bằng dấu sổ đứng (|). Các giá trị phổ biến là "On|Off", "Yes|No", "True|False".
  • GiaTriMacDinh: Chỉ số của giá trị mặc định (bắt đầu từ 0). Ví dụ, nếu bạn dùng "On|Off", thì 0 là "On", 1 là "Off".
  • TenBien: Một biến sẽ lưu trữ giá trị số tương ứng với tùy chọn được chọn (0 cho giá trị đầu tiên, 1 cho giá trị thứ hai, v.v.).

Ví dụ thực tế với ParamToggle(): Giả sử bạn đã tạo một chỉ báo Central Pivot Range (CPR) và muốn có tùy chọn để bật hoặc tắt nó trực tiếp từ menu Parameters.

// Giả định đã có code tính toán CPR (CPRPivot, R1, S1,...)
// ... (code tính toán CPR của bạn) ...

// Tạo công tắc bật/tắt CPR
// Nếu người dùng chọn "Yes" (giá trị 0), LawCPR = 0
// Nếu người dùng chọn "No" (giá trị 1), LawCPR = 1
LawCPR = ParamToggle("Hien Thi CPR?", "Yes|No", 0); // Mặc định là "Yes" (0)

// Sử dụng If statement để kiểm soát việc vẽ CPR
// Nếu LawCPR là 0 (nghĩa là "Yes" được chọn)
if (LawCPR == 0) // Hoặc đơn giản là if (LawCPR == ParamToggle("Hien Thi CPR?", "Yes|No", 0))
{
    // Plot các đường CPR
    Plot(CPRPivot, "CPR", colorRed, styleLine);
    Plot(R1, "R1", colorGreen, styleLine);
    Plot(S1, "S1", colorRed, styleLine);
    // ... plot thêm các đường khác của CPR
}

Lợi ích của ParamToggle():

  • Tiện lợi: Dễ dàng bật/tắt các thành phần của chỉ báo mà không cần chỉnh sửa code.
  • Tối ưu hiệu suất: Có thể dùng để chỉ chạy các đoạn code phức tạp khi cần, giúp giảm tải tính toán.
  • Giao diện thân thiện: Cung cấp một giao diện người dùng trực quan cho chỉ báo của bạn.

2. ParamList(): Lựa Chọn Đa Dạng Từ Danh Sách

ParamList() là hàm tạo ra một danh sách thả xuống (dropdown list) trong cửa sổ Parameters, cho phép người dùng chọn một trong nhiều tùy chọn được xác định trước. Hàm này trả về một chuỗi ký tự (string) tương ứng với tùy chọn được chọn.

Cú pháp của ParamList():

TenBienString = ParamList("Ten Tham So Hien Thi", "GiaTri1|GiaTri2|...", 0);

Giải thích các thành phần:

  • "Ten Tham So Hien Thi": Tên của danh sách thả xuống trong cửa sổ Parameters.
  • "GiaTri1|GiaTri2|...": Các tùy chọn trong danh sách, phân cách bằng dấu sổ đứng (|). Đây là các chuỗi ký tự mà hàm sẽ trả về.
  • 0: Chỉ số của giá trị mặc định trong danh sách (bắt đầu từ 0).
  • TenBienString: Một biến sẽ lưu trữ chuỗi ký tự tương ứng với tùy chọn được người dùng chọn.

Ví dụ thực tế với ParamList(): Tiếp tục với chỉ báo CPR, bạn muốn người dùng có thể chọn chỉ hiển thị CPR hoặc chỉ Kháng cự (Resistance) hoặc chỉ Hỗ trợ (Support).

// Giả định đã có code tính toán CPR (CPRPivot, R1, S1,...), R2, R3, S2, S3,...
// ... (code tính toán CPR, Resistance, Support) ...

// Tạo danh sách lựa chọn hiển thị
// Hàm sẽ trả về chuỗi "CPR", "Resistance" hoặc "Support"
LoaiHienThi = ParamList("Hien Thi Loai Nao?", "CPR|Resistance|Support", 0); // Mặc định là "CPR"

// Sử dụng If/Else If để kiểm tra chuỗi trả về và điều khiển việc plot
if (LoaiHienThi == "CPR")
{
    // Plot các đường CPR
    Plot(CPRPivot, "CPR", colorRed, styleLine);
    // ... (các đường CPR khác)
}
else if (LoaiHienThi == "Resistance")
{
    // Plot các đường Kháng cự
    Plot(R1, "R1", colorGreen, styleLine);
    Plot(R2, "R2", colorGreen, styleLine);
    // ... (các đường Kháng cự khác)
}
else if (LoaiHienThi == "Support")
{
    // Plot các đường Hỗ trợ
    Plot(S1, "S1", colorBlue, styleLine);
    Plot(S2, "S2", colorBlue, styleLine);
    // ... (các đường Hỗ trợ khác)
}

Lợi ích của ParamList():

  • Linh hoạt cao: Cho phép người dùng chọn giữa nhiều chế độ hoặc tập hợp hiển thị/tính năng.
  • Code gọn gàng: Thay vì viết nhiều code riêng lẻ, bạn có thể nhóm chúng lại dưới các điều kiện của ParamList().
  • Giao diện tùy biến: Tạo ra một trải nghiệm người dùng tùy chỉnh và mạnh mẽ hơn cho chỉ báo của bạn.

So Sánh ParamToggle() và ParamList()

Tính năng ParamToggle() ParamList()
Loại điều khiển Công tắc bật/tắt (On/Off, Yes/No) Danh sách lựa chọn (dropdown)
Giá trị trả về Số (0, 1, 2…) Chuỗi ký tự (string)
Số lượng tùy chọn Thường là 2-3 tùy chọn đơn giản Nhiều tùy chọn hơn, cho phép lựa chọn phức tạp
Ứng dụng Bật/tắt tính năng, chỉ báo Chọn chế độ hoạt động, loại hiển thị, bộ tham số

Việc tích hợp ParamToggle() và ParamList() vào chỉ báo AFL sẽ biến công cụ của bạn trở nên mạnh mẽ, linh hoạt và thân thiện với người dùng hơn rất nhiều. Chúng giúp bạn xây dựng các chỉ báo chuyên nghiệp và dễ dàng quản lý các tùy chọn trực tiếp từ biểu đồ.

  • trancotam
❮ Prev Next ❯
Chia sẻ: Facebook WhatsApp Twitter
Chia sẻ với ứng dụng khác

Tin Xem Nhiều

Bài 1: Chiến Lược Bảo Vệ Vốn Hiệu Quả Khi Đầu Tư (Phần 1)
Chỉ Báo Kỹ Thuật
Bài 1: Chiến Lược Bảo Vệ Vốn Hiệu Quả Khi Đầu Tư…
21 Tháng 5, 2025
Phân tích BFC
Phân Tích Doanh Nghiệp
Phân tích BFC
14 Tháng 7, 2025
Bài 46: Trở thành nhà giao dịch chuyên nghiệp
Tự học Amibroker
Bài 46: Trở thành nhà giao dịch chuyên nghiệp
22 Tháng 6, 2025
Phân tích HAH
Phân Tích Doanh Nghiệp
Phân tích HAH
15 Tháng 7, 2025
Phân tích ANV
Phân Tích Doanh Nghiệp
Phân tích ANV
14 Tháng 7, 2025
Donation
Phóng to ảnh

TADOSO là nền tảng chia sẻ kiến thức và kinh nghiệm đầu tư tài chính, đặc biệt trong lĩnh vực chứng khoán, nhằm kết nối và nâng cao tư duy cho nhà đầu tư cá nhân tại Việt Nam. Với triết lý "Tạo dựng – Đồng hành – Sở hữu", TADOSO hướng đến xây dựng cộng đồng học hỏi minh bạch, trung lập, không bị chi phối bởi tổ chức tài chính nào.

Newsletter

Hãy để lại mail để chúng tôi có thể phục vụ bạn tốt hơn

Donation - Buy me a coffee

Donation

Copyright © All rights reserved | This template is made with by Tran Co Tam

  • Terms of use
  • Privacy Policy
  • Contact
Zalo Messenger
×

Liên hệ