• 24ºC, Clouds
  • 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 Mở Đầu: Cấu trúc code AFL
Bài Mở Đầu: Cấu trúc code AFL

Xem nhanh:

  • Bắt Đầu Với Amibroker Formula Language (AFL): Các Yếu Tố Cấu Thành & Quy Tắc Viết Code “Sạch”
  • 1. AFL: Ngôn Ngữ Của Amibroker
  • a. Tokens (Từ khóa/Đơn vị ngôn ngữ)
  • b. Whitespace (Khoảng trắng)
  • c. Comments (Chú thích)
  • 2. Cấu Trúc Cơ Bản Của Một File AFL “Sạch”
  • 3. Quy Tắc Thêm: Dấu Chấm Phẩy (Semicolon)

Bắt Đầu Với Amibroker Formula Language (AFL): Các Yếu Tố Cấu Thành & Quy Tắc Viết Code “Sạch”

Chào các bạn! Để có thể khai thác tối đa sức mạnh của Amibroker trong việc xây dựng các chiến lược giao dịch và phân tích thị trường, điều cốt lõi bạn cần nắm vững chính là Amibroker Formula Language (AFL). Amibroker chỉ “hiểu” duy nhất ngôn ngữ này, vì vậy, việc học AFL là bắt buộc nếu bạn muốn “giao tiếp” với phần mềm.


1. AFL: Ngôn Ngữ Của Amibroker

Tương tự như việc bạn cần học tiếng Anh để hiểu khóa học này, bạn cần học AFL để có thể đưa ra các chỉ dẫn cho Amibroker. AFL không phải là một ngôn ngữ phức tạp đến mức khó học. Thực chất, nó được thiết kế để trực quan và dễ tiếp cận đối với các nhà giao dịch.

Để bắt đầu, chúng ta cần hiểu các yếu tố cơ bản cấu thành nên một đoạn code AFL. Một ngôn ngữ lập trình, bao gồm cả AFL, về cơ bản được xây dựng từ ba yếu tố chính: Tokens, Whitespace và Comments.

a. Tokens (Từ khóa/Đơn vị ngôn ngữ)

  • Tokens là những đơn vị từ vựng nhỏ nhất mà trình biên dịch của AFL có thể nhận dạng. Chúng là các “từ” có ý nghĩa trong ngôn ngữ AFL.
  • Ví dụ:
    • Các từ khóa (keywords): if, else, while, for, Plot, SetChartOptions, v.v.
    • Tên biến (variables): Price, MA20, RSIValue.
    • Hằng số (constants): 10, 100, True, False.
    • Toán tử (operators): +, -, *, /, =, >, <, ==.
    • Tên hàm (function names): EMA(), RSI(), Cross().
  • Khi bạn viết MA = EMA(Close, 20);, mỗi phần tử như MA, =, EMA, (, Close, ,, 20, ) và ; đều là một token.

b. Whitespace (Khoảng trắng)

  • Whitespace là thuật ngữ chung chỉ các khoảng trống, tab, hoặc ký tự xuống dòng mà bạn sử dụng trong code.
  • Vai trò: Mặc dù Amibroker thường không yêu cầu khoảng trắng ở mọi nơi để code chạy được (ví dụ: MA=EMA(Close,20); vẫn hợp lệ), nhưng chúng đóng vai trò cực kỳ quan trọng trong việc giúp code dễ đọc và dễ hiểu hơn cho con người.
  • Ví dụ: So sánh MA=EMA(Close,20); với MA = EMA( Close, 20 );. Phiên bản sau rõ ràng hơn rất nhiều.
  • Quy tắc: Luôn sử dụng khoảng trắng một cách hợp lý để định dạng code của bạn. Điều này đặc biệt quan trọng khi bạn chia sẻ code với người khác hoặc cần xem lại code của chính mình sau này.

c. Comments (Chú thích)

  • Comments là các đoạn văn bản trong code mà trình biên dịch AFL sẽ bỏ qua hoàn toàn. Chúng không ảnh hưởng đến hiệu suất hoặc chức năng của chương trình.
  • Vai trò: Cực kỳ quan trọng cho việc tài liệu hóa code (documenting program). Comments giúp bạn ghi chú, giải thích logic, mục đích của từng phần code.
  • Cú pháp:
    • Dòng đơn: Bắt đầu bằng hai dấu gạch chéo // (ví dụ: // Đây là chú thích cho một dòng). Mọi thứ sau // trên cùng dòng sẽ là comment.
    • Khối comment: Bắt đầu bằng /* và kết thúc bằng */ (ví dụ: /* Đây là một khối chú thích dài, có thể trải dài nhiều dòng */).
  • Lợi ích: Khi bạn chia sẻ code với người khác, hoặc khi bạn xem lại code của mình sau một thời gian dài, comments sẽ giúp bạn (và người khác) nhanh chóng hiểu được code đang làm gì và tại sao lại làm như vậy.

2. Cấu Trúc Cơ Bản Của Một File AFL “Sạch”

Để viết code AFL có tổ chức và dễ quản lý, bạn nên tuân thủ một cấu trúc cơ bản. Amibroker khuyến khích sử dụng các phần (sections) để phân chia code:

//_SECTION_BEGIN("Tên Phần Của Bạn")
//
// Đây là nơi bạn viết code AFL của mình.
// Hãy đặt các biến, chỉ báo, chiến lược vào đây.
//
//_SECTION_END()
  • //_SECTION_BEGIN("Tên Phần Của Bạn"): Đánh dấu sự bắt đầu của một phần code. Bạn có thể đặt bất kỳ tên nào cho phần này trong dấu ngoặc kép. Dấu gạch dưới _ ở đầu SECTION là quy ước của Amibroker.
  • //_SECTION_END(): Đánh dấu sự kết thúc của phần đó.

Lợi ích của việc sử dụng sections:

  • Tổ chức code: Giúp code của bạn được phân chia thành các khối logic, dễ dàng cuộn (scroll) và tìm kiếm.
  • Dễ đọc: Tạo ra một cấu trúc rõ ràng, giúp người đọc (hoặc chính bạn sau này) dễ dàng theo dõi logic của chương trình.
  • Gọn gàng: Tránh tình trạng code bị “cụm” lại thành một khối lớn khó nhìn.

3. Quy Tắc Thêm: Dấu Chấm Phẩy (Semicolon)

  • Trong AFL, mỗi câu lệnh (statement) cần được kết thúc bằng dấu chấm phẩy ;. Điều này báo hiệu cho Amibroker biết rằng một câu lệnh đã kết thúc và câu lệnh tiếp theo sẽ bắt đầu.
  • Ví dụ:
    MyMA = EMA( Close, 20 ); // Định nghĩa một biến MyMA là EMA của giá Close trong 20 kỳ
    Plot( MyMA, "My Moving Average", colorBlue ); // Vẽ đường MyMA lên biểu đồ
    

Việc nắm vững các thành phần cơ bản của AFL (Tokens, Whitespace, Comments) và tuân thủ các quy tắc viết code “sạch” (sử dụng sections, khoảng trắng, comment và dấu chấm phẩy) sẽ là nền tảng vững chắc để bạn tiến xa hơn trong hành trình lập trình các chiến lược giao dịch phức tạp trên Amibroker. Hãy coi việc lập trình như một cuộc trò chuyện giữa bạn và máy tính – càng rõ ràng, càng dễ hiể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
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ệ