Cách sử dụng giá trị biến trong cảnh báo
Bạn có thể sử dụng trình đặt chỗ đặc biệt để truy cập các giá trị biến trong thông báo cảnh báo. Ví dụ: bạn có thể tạo cảnh báo đối với NASDAQ: AAPL và nhập vào hộp thông báo:
{{exchange}}:{{ticker}}, price = {{close}}, volume = {{volume}}

Sau khi kích hoạt cảnh báo, bạn sẽ nhận được các giá trị tương ứng:

Sau đây là danh sách các trình đặt chỗ có sẵn:
1. {{ticker}} – mã chứng khoán được sử dụng trong cảnh báo (AAPL, BTCUSD, v.v.).
2. {{exchange}} – sàn giao dịch của mã được sử dụng trong cảnh báo (NASDAQ, NYSE, MOEX, v.v.). Lưu ý rằng đối với các mã giao dịch bị trễ, sàn giao dịch sẽ kết thúc bằng chữ " _DL" hoặc "_DLY". Ví dụ: "NY NYMEX_DL."
3. {{close}}, {{open}}, {{high}}, {{low}}, {{time}}, {{volume}} – các giá trị tương ứng của thanh mà cảnh báo được kích hoạt. Lưu ý rằng cảnh báo về các chỉ số, biểu đồ và hình vẽ không chuẩn phụ thuộc vào độ phân giải, trong khi cảnh báo giá đơn giản (ví dụ: giá vượt qua giá trị nào đó) luôn được tính trên các thanh 1 phút. {{time}} là giờ UTC, được định dạng là yyyy-MM-ddTHH:mm:ssZ. Ví dụ: 2019-08-27T09:56:00Z. Các giá trị khác là các số điểm cố định có dấu thập phân phân tách các phần tích phân và phân số. Ví dụ: 1245,25.
4. {{timenow}} – thời gian kích hoạt hiện tại của cảnh báo, được định dạng giống như {{time}}. Trả về thời gian đến giây gần nhất, bất kể độ phân giải.
5. {{plot_0}}, {{plot_1}}, ... {{plot_19}} – chuỗi đầu ra tương ứng của chỉ báo được sử dụng trong cảnh báo. Lưu ý rằng các lô được đánh số từ 0. ID lô cao nhất là 19 (bạn chỉ có thể truy cập 20 chuỗi đầu ra đầu tiên). Chuỗi đầu ra là các giá trị của chỉ báo bạn có thể thấy trên biểu đồ. Ví dụ: chỉ báo khối lượng tích hợp có hai chuỗi đầu ra: Khối lượng và Khối lượng MA. Bạn có thể tạo một cảnh báo về chuỗi đầu ra rồi gõ vào hộp thông báo như thế này:
Volume: {{plot_0}}, Volume average: {{plot_1}}
6. {{interval}} – trả về khoảng thời gian (tức là khung thời gian/độ phân giải) của biểu đồ mà cảnh báo được tạo. Lưu ý rằng, vì lý do kỹ thuật, trong một số trường hợp, trình giữ chỗ này sẽ trả về "1" thay vì khung thời gian trên biểu đồ. Các cảnh báo dựa trên giá thông thường (với các điều kiện như “AAPL Vượt qua 120” hoặc “AMZN Lớn hơn 3600”) đều dựa trên giá trị cuối cùng của mã giao dịch, vì vậy khung thời gian của biểu đồ không liên quan đến cảnh báo. Do đó, tất cả các cảnh báo dựa trên giá thực sự được tính trên khung thời gian 1 triệu và trình giữ chỗ sẽ luôn trả về "1" tương ứng. Ngoài ra, biểu đồ Phạm vi cũng được tính toán dựa trên 1 triệu dữ liệu, vì vậy trình giữ chỗ {{khoảng}} sẽ luôn trả về “1” trên bất kỳ cảnh báo nào được tạo trên biểu đồ Phạm vi. Với các cảnh báo được tạo trên bản vẽ và chỉ báo, trình giữ chỗ này sẽ hoạt động như mong đợi.
Chỉ có thể sử dụng trình giữ chỗ với tiền tố "strategy" trong cảnh báo chiến lược:
- {{Strateg.poseition_size}} – trả về giá trị của cùng một từ khóa trong Pine, tức là, quy mô của vị thế hiện tại.
- {{Strateg.order.action}} – trả về chuỗi "mua" hay hoặc "bán" cho lệnh đã được khớp lệnh.
- {{Strateg.order.contuces}} – trả về số lượng hợp đồng của lệnh đã khớp lệnh.
- {{Strateg.order.price}} – trả về giá mà lệnh đã khớp lệnh.
- {{Strateg.order.id}} – trả về ID của lệnh đã khớp lệnh (chuỗi được sử dụng làm tham số đầu tiên trong một trong các hàm gọi các lệnh tạo: Strateg.entry, Strateg.exit hoặc Strateg.order).
- {{Strateg.order.comment}} – trả về nhận xét của lệnh đã khớp lệnh (chuỗi được sử dụng trong tham số nhận xét trong một trong các hàm gọi các lệnh tạo: Strateg.entry, Strateg.exit hoặc Strateg.order). Nếu chỉ định không nhận xét nào, thì sẽ sử dụng giá trị của Strateg.order.id.
- {{strategy.order.alert_message}} – trả về giá trị tham số alert_message được sử dụng trong mã Pine của chiến lược khi gọi một trong các hàm để đặt lệnh: strategy.entry, strategy.exit or strategy.order. Tính năng này chỉ được hỗ trợ trong Pine phiên bản v4 trở lên.
- {Strateg.market_position}} – trả về vị thế hiện tại của chiến lược ở dạng chuỗi: Thời gian dài, Thời gian phẳng, hoặc Thời gian ngắn.
- {{Strateg.market_poseition_size}} – trả về quy mô của vị thế hiện tại là một giá trị tuyệt đối, tức là một số không âm.
- {{Strateg.prev_market_poseition}} – trả về vị thế trước đó của chiến lược ở dạng chuỗi: Thời gian dài, Trò chơi phẳng, hoặc Trò chơi ngắn.
- {{Strateg.prev_market_poseition_size}} – trả về quy mô của vị thế trước đó là một giá trị tuyệt đối, tức là một số không âm.
Sau khi cảnh báo được kích hoạt, bạn sẽ thấy các giá trị tương ứng:

Các hàm biểu đồ từ các tập lệnh được viết bằng Pine:
- plot;
- plotshape;
- plotchar;
- plotarrow;
- plotbar;
- plotcandle.
ngoài việc sử dụng các trình giữ chỗ {{plot_0}}, {{plot_1}}, ... {{plot_19}}, bạn có thể nhận dạng chúng theo tên. Để thực hiện việc này, hãy sử dụng trình giữ chỗ {{plot("Name")}}, trong đó Name là tên của chuỗi. Ví dụ, đối với hàm plotarrow:
indicator('My script')
plotarrow(close, colorup=color.new(color.teal,40), colordown=color.new(color.orange, 40) , title = 'arrow')
Hãy bổ sung {{plot("series")}} trong tin nhắn cảnh báo.


Đối với các hàm plotcandle và plotbar, việc truy cập vào một chuỗi theo tên không được hỗ trợ vì mỗi hàm hiển thị 4 chuỗi (mở, cao, thấp và đóng). Đối với mỗi chuỗi, bạn có thể sử dụng trình giữ chỗ có số hiệu thích hợp.

Bạn cũng có thể chỉ định trình đặt chỗ mới trong đối số thông báo của chức năng cảnh báo. Ví dụ, với chỉ báo khối lượng: Khối lượng: {{plot("Volume")}}, Khối lượng trung bình: {{plot("Volume MA")}}

Nếu có nhiều chỉ báo được sử dụng trong cảnh báo, chỉ giá trị của chỉ báo đầu tiên sẽ được thay thế vào chỗ giữ chỗ {{plot}}:

Đối với ví dụ trên, các giá trị của chuỗi từ chỉ báo “My script1” sẽ được thay thế vào các chỗ giữ chỗ. Để hiển thị các giá trị của chỉ báo “My script2”, hãy chọn trong menu thả xuống đầu tiên.
Chỗ giữ chỗ cũng có thể được chỉ định trong đối số message của hàm alertcondition. Khi tạo cảnh báo, giá trị của đối số này sẽ tự động được kéo vào hộp nhập văn bản cảnh báo.
indicator("alertcondition", overlay=true)
alertcondition(close >= open, title='Alert', message='"price {{ticker}} = {{close}}"!')

Xin lưu ý rằng khi tạo cảnh báo với điều kiện từ hàm alertcondition, việc thay thế giá trị sẽ chỉ hoạt động đối với tập lệnh v4 trở lên.
Giá trị từ các cảnh báo được kích hoạt có thể được sử dụng cùng với webhook bằng cách gửi các giá trị biến từ một tin nhắn đến các địa chỉ mong muốn. Hoặc bằng cách sử dụng các ứng dụng bên thứ 3 bên ngoài như TradingView Alerts đến MT4/MT5, đã sử dụng giá trị động. Bạn có thể tham khảo một số trường hợp sử dụng cú pháp trong tập lệnh ví dụ này, từ đó giúp mở ra nhiều khả năng hơn nữa cho những người dùng sử dụng cảnh báo như bạn.