AFL: Hướng dẫn code Amibroker với các tính năng chính

Khi làm quen với code Amibroker (ngôn ngữ AFL) nhiều bạn không biết sẽ bắt đầu từ đâu. Như việc muốn code một bộ lọc thì phải dùng những hàm gì, code đồ thì thì cần gì…

Những tính năng chính trong code Amibroker
  • Vẽ đồ thị, chữ, biểu tượng
  • Tính năng quét cổ phiếu (scan)
  • Tính năng lọc cổ phiếu (filter)
  • Tính năng backtest
  • Tính năng optimize

Một file code Amibroker AFL có thể chứa code xử lý cho một hay nhiều tính năng tuỳ thuộc vào mục đích của người lập trình. Cách đây không lâu có bạn hỏi tôi rằng muốn lọc dữ liệu cung cầu trong bài trước đó. Do code dữ liệu Stocktrace chỉ vẽ đồ thị thôi, còn muốn làm bộ lọc bạn phải xác định mình cần điều kiện, kết quả của dữ liệu đó như thế nào sau đó xây dựng filter.
Trong code Amibroker còn nhiều tính năng khác như đọc, ghi, xuất file… vì mới bắt đầu nên chỉ cần quan tâm đến những tính năng trên là đủ dùng rồi.


1. Vẽ đồ thị trên Amibroker

Để vẽ đồ thị trong code Amibroker ta dùng hàm Plot (xem thêm: https://chibaodautu.com/ve-do-thi-trong-amibroker)

Cách nhanh nhất là kéo thả từ cửa sổ Charts trong Amibroker. Chọn đồ thị, chỉ báo cần vẽ rồi kéo qua cửa sổ chính.
Tham khảo thêm https://chibaodautu.com/quan-ly-chart-amibroker/

quản lý chart code amibroker

Để chỉnh sửa các thông số của đồ thị ta mở phần coding ra, nếu chưa rõ về các thông số của chart đó ta có thể mở phần help trên phần mềm để tìm hiểu.

Rất nhiều chỉ báo kỹ thuật được Amibroker tính toán và tích hợp sẵn nên bạn chỉ cần điền các tham số vào (nếu như không muốn sử dụng thông số mặc địch).

Để điều chỉ các thông số mặc định của Indicator ngoài màn hình chính ta thay đổi cách khởi tạo biến bằng hàm Param. Ví dụ:

P = Param("Period",20,2,25,1); 
//Chú thích: 
//20: Số mặc định
//2: Số bé nhất có thể chọn
//25: Số lớn nhất có thể chọn
//1: Giá trị tăng giảm của bước chọn

Để chart thêm chuyên nghiệp ta sử dụng hàm PlotText (vẽ chữ) và PlotShapes (vẽ biểu tượng)


2. Quét cổ phiếu (Scan)

Tính năng này dùng để quét điều kiện mua bán. Như vậy điều kiền để thực hiện tính năng này là phải có biến Buy và Sell trong code Amibroker.
Xem thêm: https://chibaodautu.com/xu-ly-mua-ban-va-scan-giao-dich/


3. Lọc cổ phiếu (Explorer Filter)

Để thực hiện chạy Explorer lọc cổ phiếu ta phải viết điều kiện cho biến Filter. Nếu như scan chỉ quét được điều kiện mua và bán thì Filter sẽ cho phép người dùng lọc tất cả các điều kiện đưa ra.

Ví dụ lọc cổ phiếu có giá trị giao dịch trên 5 tỷ:

Filter = C*V>5*10^6;

Xem thêm: https://chibaodautu.com/loc-co-phieu-explorer/


4. Kiểm tra Backtest

Đây là phần tôi sử dụng nhiều nhất trên Amibroker. Để một thuật toán có xác suất cao phải trải qua nhiều lần backtest với dữ liệu nhiều năm, nhiều mã chứng khoán khác nhau.

Tính năng này chỉ yêu cầu code Amibroker có biến Buy và Sell.

Xem thêm: https://chibaodautu.com/backtest-thuat-toan-giao-dich/


5. Tối ưu hoá (optimize)

Tính năng này cũng khá quan trọng vì trong thuật toán xử lý có thể phải sử dụng nhiều chỉ báo indicator phối hợp với nhau, hay ở mỗi thị trường khác nhau thì tham số mặc định cho mỗi chỉ báo cũng phải thay đổi cho phù hợp. Tính năng này sinh ra để hỗ trợ chúng ta có thể lựa chọn những tổ hợp các thông số phù hợp nhất.

Để tối ưu biến nào ta chỉ cần thay đổi cách khởi tạo biến đó bằng hàm Optimize trong Amibroker code

Xem thêm: https://chibaodautu.com/toi-uu-chi-bao-ky-thuat-amibroker/

Tham khảo thêm:

Trả lời