Từ khóa var để khai báo biến trong Pine Script rất quan trọng
🎯 Mục tiêu bài học:
-
Hiểu cách mã nguồn Pine Script được thực thi trong các chế độ khác nhau
-
Nắm rõ vòng đời của biến trong Pine Script
-
Hiểu được vai trò và ứng dụng của từ khóa
var
-
Biết cách sử dụng biến hiệu quả trong chiến lược và chỉ báo
🔁 1. Cách mã Pine Script hoạt động theo thời gian
Trong chế độ Backtest
-
Mỗi bar (cây nến) được chạy toàn bộ mã Pine Script một lần duy nhất, từ trên xuống dưới.
-
Đây là quá trình giúp mô phỏng hành vi bot với dữ liệu quá khứ.
-
Mỗi dòng lệnh đều được tính lại, trừ khi bạn kiểm soát giá trị bằng
var
.
Trong chế độ Alert
-
Mã được chạy tại thời điểm xảy ra cảnh báo, không phải từng cây nến.
-
Một số hàm như
strategy.opentrades
có thể trả về 0 vì không có trạng thái vị thế thực tế trong cảnh báo. -
Kết quả phụ thuộc vào khung thời gian bạn chọn khi tạo alert.
🔄 2. Vòng đời giá trị của biến
Biến trong Pine Script có thể:
-
Duy trì giá trị từ bar này sang bar khác
-
Hoặc được tính lại mỗi lần mã chạy
Tất cả tùy thuộc vào cách bạn khai báo.
❗ Nếu bạn KHÔNG dùng var
:
Biến sẽ bị tính lại mỗi lần, không lưu trạng thái.
✅ Nếu bạn DÙNG var
:
Biến sẽ chỉ được khởi tạo một lần duy nhất, sau đó giữ nguyên giá trị cho đến khi bạn thay đổi nó bằng lệnh gán.
🧠 Đây là yếu tố tối quan trọng khi bạn cần:
-
Ghi nhớ trạng thái bot (đã mở lệnh chưa?)
-
Đếm số lượng lệnh đã thực hiện
-
Theo dõi base price, thời điểm bắt đầu deal,…
🧭 3. Khu vực hoạt động của biến (Variable Scope)
Pine Script tuân theo mô hình stack (ngăn xếp):
-
Biến được khai báo ở cấp cao có thể được đọc ở cấp thấp hơn (bên trong điều kiện, vòng lặp hoặc hàm).
-
Không thể gán lại giá trị cho biến trong một hàm nếu biến đó được khai báo ngoài hàm. (Trừ khi là biến kiểu mảng.)
✅ Biến mảng (
array
) là ngoại lệ duy nhất: bạn có thể thay đổi nội dung của mảng dù đang ở trong hàm.
🔗 Video bài học: Cách hoạt động của biến và var
trong Pine Script
🚀 Bạn muốn học sâu hơn?
Kỹ năng kiểm soát biến bằng var
là nền tảng để xây dựng các chiến lược tự động có tính trạng thái — như DCA, GRID, theo dõi deal, đặt điều kiện dừng lỗ hoặc take profit.
👉 Hãy tham gia khóa học lập trình Pine Script 6 nâng cao để:
-
Làm chủ biến, mảng, chiến lược và bot cảnh báo,
-
Kiểm soát từng dòng lệnh và biến trạng thái của bot một cách chính xác.