• 25ºC, Clear
  • Wednesday, 21st January, 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 39: Alerts – Alert if function
Bài 39: Alerts – Alert if function

Xem nhanh:

  • Hàm AlertIf() Trong Amibroker AFL: Tùy Biến Cảnh Báo Giao Dịch Chuyên Sâu
  • 1. Hàm AlertIf() Là Gì?
  • a. Boolean_Expression (Mảng Boolean):
  • b. Command (Chuỗi lệnh):
  • c. Text (Chuỗi văn bản):
  • d. Type (Kiểu cảnh báo):
  • e. Flags (Cờ tùy chọn):
  • f. LookBack (Số thanh nến nhìn lại):
  • 2. Ví Dụ Ứng Dụng Hàm AlertIf() Trong AFL Code
  • 3. Lưu Ý Quan Trọng Khi Sử Dụng Hàm AlertIf()

Tuyệt vời! Bài viết này giới thiệu chi tiết về hàm AlertIf() trong Amibroker AFL, một công cụ mạnh mẽ để tạo ra các cảnh báo phức tạp và tùy chỉnh. Đây là bước tiến quan trọng so với “Easy Alerts” thông thường. Dưới đây là bài viết chuẩn SEO và các từ khóa liên quan.

Hàm AlertIf() Trong Amibroker AFL: Tùy Biến Cảnh Báo Giao Dịch Chuyên Sâu

Chào các bạn! Trong bài viết trước, chúng ta đã tìm hiểu về Easy Alerts – một công cụ đơn giản để tạo cảnh báo trong Amibroker. Hôm nay, chúng ta sẽ đi sâu vào một hàm mạnh mẽ hơn: hàm AlertIf() trong Amibroker Formula Language (AFL). Với AlertIf(), bạn có thể tạo ra các cảnh báo linh hoạt và chi tiết hơn, tích hợp trực tiếp vào logic hệ thống giao dịch của mình.

1. Hàm AlertIf() Là Gì?

Hàm AlertIf() là trái tim của hệ thống cảnh báo tùy chỉnh trong Amibroker. Nó cho phép bạn kích hoạt nhiều loại cảnh báo khác nhau (âm thanh, email, lưu file, v.v.) khi một điều kiện cụ thể trong code AFL được thỏa mãn.

Cú pháp cơ bản của hàm AlertIf():

AlertIf( Boolean_Expression, Command, Text, Type, Flags, LookBack )

Hãy cùng phân tích từng tham số:

a. Boolean_Expression (Mảng Boolean):

  • Đây là điều kiện để kích hoạt cảnh báo, phải là một giá trị TRUE hoặc FALSE.
  • Nếu Boolean_Expression trả về TRUE (tương đương 1), cảnh báo sẽ được kích hoạt.
  • Nếu FALSE (tương đương 0), không có gì xảy ra.
  • Ví dụ: Close > MA(Close, 20) (giá đóng cửa vượt qua đường trung bình động 20 kỳ).

b. Command (Chuỗi lệnh):

  • Xác định hành động cụ thể khi cảnh báo được kích hoạt. Bạn cần đặt chuỗi lệnh trong dấu ngoặc kép (").
  • Để phát âm thanh: "Sound(\"Đường dẫn đến file âm thanh của bạn.wav\")"
    • Ví dụ: "Sound(\"C:\\Windows\\Media\\notify.wav\")"
  • Để gửi email: "Email(\"Địa chỉ Email nhận\", \"Tiêu đề Email\")"
    • Lưu ý: Cần cấu hình cài đặt Email trong Amibroker (Tools -> Preferences -> Alerts).
  • Để lưu vào file/URL: "Exec(\"Đường dẫn đến chương trình/file cần chạy hoặc URL\")"
    • Ví dụ: "Exec(\"notepad.exe C:\\MyAlerts\\alert.txt\")"

c. Text (Chuỗi văn bản):

  • Đây là nội dung tin nhắn bạn muốn hiển thị hoặc gửi đi khi cảnh báo được kích hoạt.
  • Bạn có thể sử dụng các hàm AFL để chèn giá trị động vào văn bản.
  • Ví dụ: "Tín hiệu MUA cho " + Name() + " tại giá: " + Close + ". Stop Loss: " + (Close * 0.98)
    • Name(): Tên mã chứng khoán.
    • Close: Giá đóng cửa hiện tại.

d. Type (Kiểu cảnh báo):

  • Đây là số nguyên xác định loại tín hiệu. Nó giúp Amibroker phân biệt các cảnh báo khác nhau, đặc biệt hữu ích khi xử lý cảnh báo lặp lại.
  • Mặc định: Nếu không chỉ định, giá trị mặc định là 0.
  • Các loại phổ biến:
    • 1: Mua (Buy)
    • 2: Bán (Sell)
    • 3: Bán khống (Short)
    • 4: Mua lại (Cover)
  • Ví dụ: 1 (nếu là tín hiệu mua).

e. Flags (Cờ tùy chọn):

  • Là một giá trị số nguyên kiểm soát cách hiển thị và xử lý cảnh báo. Có thể kết hợp nhiều cờ bằng phép cộng.
  • Giá trị mặc định: 1 + 2 + 4 + 8 = 15.
  • Ý nghĩa của các cờ:
    • 1: Hiển thị văn bản cảnh báo trong cửa sổ Output Window.
    • 2: Phát tiếng bíp (beep) đơn giản qua loa máy tính.
    • 4: Không hiển thị cảnh báo lặp lại có cùng Type và Text nếu chúng xuất hiện liên tục trong cùng một thanh nến. (Quan trọng để tránh spam cảnh báo)
    • 8: Không hiển thị cảnh báo lặp lại có cùng Type và Text trong cùng một ngày. (Quan trọng để tránh spam cảnh báo hàng ngày)
  • Điều chỉnh Flags:
    • Khi giao dịch thực tế, bạn thường muốn Flags mặc định (15) để tránh cảnh báo lặp lại không cần thiết.
    • Khi thử nghiệm hoặc debug, bạn có thể xóa 4 và 8 (ví dụ: Flags = 1 + 2 = 3) để nhận tất cả các cảnh báo lặp lại và xem chúng hoạt động như thế nào.

f. LookBack (Số thanh nến nhìn lại):

  • Là số lượng thanh nến trước đó mà cảnh báo vẫn được coi là hợp lệ hoặc được hiển thị lại.
  • Giá trị mặc định: 1. Điều này có nghĩa là cảnh báo chỉ được kích hoạt hoặc hiển thị trên thanh nến mà điều kiện là TRUE.
  • Ví dụ: Nếu bạn muốn cảnh báo hiển thị trong 5 thanh nến liên tiếp sau khi điều kiện ban đầu là TRUE, bạn có thể đặt LookBack = 5. Thường thì không cần thay đổi giá trị này, trừ khi có mục đích đặc biệt.

2. Ví Dụ Ứng Dụng Hàm AlertIf() Trong AFL Code

//_SECTION_BEGIN("Custom Alert Example");

// 1. Định nghĩa điều kiện giao dịch (ví dụ: Tín hiệu mua đơn giản)
BuySignal = Cross(Close, MA(Close, 20)); // Giá đóng cửa cắt lên đường MA 20
SellSignal = Cross(MA(Close, 20), Close); // Giá đóng cửa cắt xuống đường MA 20

// 2. Định nghĩa nội dung cảnh báo tùy chỉnh
BuyAlertText = "Tín hieu MUA cho " + Name() + " tai gia: " + Close + ". Khung thoi gian: " + Interval(1);
SellAlertText = "Tín hieu BAN cho " + Name() + " tai gia: " + Close + ". Khung thoi gian: " + Interval(1);

// 3. Sử dụng hàm Alert()
// Cảnh báo MUA: Phát âm thanh, gửi email, hiển thị trong Output
AlertIf(BuySignal, "Sound(\"C:\\Windows\\Media\\notify.wav\"); Email(\"your_email@example.com\", \"AMIBROKER BUY ALERT: \" + Name())", BuyAlertText, 1, 1 + 2 + 4 + 8); // Type 1 cho Buy, Flags 15 (mặc định)

// Cảnh báo BÁN: Phát âm thanh, hiển thị trong Output
AlertIf(SellSignal, "Sound(\"C:\\Windows\\Media\\Windows Ding.wav\")", SellAlertText, 2, 1 + 2 + 4 + 8); // Type 2 cho Sell, Flags 15 (mặc định)

// Lọc tín hiệu để hệ thống giao dịch hoạt động (nếu đây là một phần của hệ thống giao dịch đầy đủ)
Buy = BuySignal;
Sell = SellSignal;

Buy = ExRem(Buy, Sell);
Sell = ExRem(Sell, Buy);

// Vẽ biểu đồ và tín hiệu (tùy chọn)
Plot(Close, "Close", colorBlack, styleCandle);
Plot(MA(Close, 20), "MA 20", colorBlue, styleLine);
PlotShapes(IIf(Buy, shapeUpArrow, shapeNone), colorGreen, 0, Low, -10);
PlotShapes(IIf(Sell, shapeDownArrow, shapeNone), colorRed, 0, High, -10);

//_SECTION_END();
Ví dụ

Ví dụ

3. Lưu Ý Quan Trọng Khi Sử Dụng Hàm AlertIf()

  • Dữ liệu thời gian thực: Giống như Easy Alerts, hàm AlertIf() chỉ hoạt động với dữ liệu thời gian thực. Nếu không có dữ liệu thời gian thực, các cảnh báo sẽ không được kích hoạt.
  • Cấu hình Email: Đảm bảo bạn đã cấu hình chính xác tài khoản email trong Amibroker (Tools -> Preferences -> Alerts -> Email) để tính năng gửi email hoạt động.
  • Đường dẫn file âm thanh/chương trình: Khi sử dụng Sound() hoặc Exec(), hãy đảm bảo đường dẫn đến file âm thanh hoặc chương trình là chính xác trên máy tính của bạn.
  • Tùy biến cao: Khả năng tùy biến Text và Command cho phép bạn tạo ra các thông báo rất chi tiết và tự động hóa các hành động khác (như chạy một script) khi điều kiện thỏa mãn.

Hàm AlertIf() trong Amibroker AFL là một công cụ mạnh mẽ, cung cấp khả năng kiểm soát hoàn toàn việc tạo và quản lý cảnh báo. Việc thành thạo hàm này sẽ giúp bạn xây dựng các hệ thống giao dịch linh hoạt và hiệu quả hơn, đảm bảo bạn luôn được thông báo về các cơ hội quan trọng trên thị trường.

  • 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
Bảng công cụ phân tích thị trường
Chưa phân loại
Bảng công cụ phân tích thị trường
13 Tháng 5, 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ệ