Cách sử dụng chức năng đa khung thời gian (MTF)

Chức năng MTF là tính năng cho phép bạn thay đổi bất kỳ khung thời gian nào của chỉ số chỉ với hai cú nhấp chuột trong phần Đầu vào, sử dụng menu thả xuống Khung thời gian.

Các lập trình viên Pine có thể sử dụng cùng một tham số khung thời gian mà chúng ta sử dụng trong các chỉ báo tích hợp sẵn trong các tập lệnh riêng của họ. Chỉ cần thêm tham số khung thời gian vào tuyên bố chỉ báo của tập lệnh, các lập trình viên giờ đây có một cách dễ dàng để thêm chức năng MTF vào tập lệnh và cho phép người dùng quyết định khung thời gian họ muốn chỉ báo chạy.

 

Sử dụng tham số khung thời gian sẽ tự động thêm trường đầu vào Khung thời gian vào Đầu vào tập lệnh của bạn. Giá trị mặc định của tham số có thể là bất kỳ chuỗi khung thời gian hợp lệ nào. Tuy nhiên, nếu tham số không có trong các lựa chọn có sẵn từ menu thả xuống của trường, biểu tượng Giống như mặc định sẽ xuất hiện dưới dạng giá trị mặc định trong trường. Sử dụng chuỗi trống ("") để thể hiện khung thời gian của biểu đồ.

 

Ví dụ: bạn muốn sử dụng biểu đồ có khung thời gian 5m, nhưng muốn biểu đồ hiển thị Đường Trung bình di động dựa trên khung thời gian 1D. Trước đây, bạn có thể làm như vậy bằng hàm request.security:

//@version=5
indicator(title="Moving Average", shorttitle="MA with security", overlay=true)
len = input.int(9, minval=1, title="Length")
src = input.source(close, title="Source")
out = ta.sma(src, len)
tf = input.timeframe(title="Timeframe", defval="1D")
s1 = request.security(syminfo.tickerid, tf, out, gaps=barmerge.gaps_on)
plot(s1, color=color.red)

Tuy nhiên, bây giờ, bạn sẽ chỉ cần thêm khung thời gian = "D" vào lệnh gọi chỉ báo:

//@version=5
indicator(title="Moving Average", shorttitle="MA with timeframe", overlay=true, timeframe="D", timeframe_gaps=true)
len = input.int(9, minval=1, title="Length")
src = input.source(close, title="Source")
offset = input.int(title="Offset", defval=0, minval=-500, maxval=500)
out = ta.sma(src, len)
plot(out, color=color.blue, title="MA", offset=offset)

Tham số khung thời gian là cách thêm chức năng MTF dễ dàng vào các tập lệnh tương đối đơn giản. Việc thêm timeframe_gaps=true là không bắt buộc và về nguyên tắc tương tự như tham số `gaps` trong hàm `request.security()`. Các tập lệnh Pine phức tạp hơn sẽ vẫn cần request.security để triển khai các tính toán nâng cao bằng cách sử dụng thông tin khung thời gian cao hơn.

Lưu ý rằng giá trị của các biến timeframe.* sẽ biểu thị khung thời gian mà tập lệnh hiện đang chạy như được xác định bởi giá trị của trường Khung thời gian trong Đầu vào của tập lệnh, bất kể khung thời gian của biểu đồ. Ngoài ra, xin lưu ý rằng vì các giá trị khung thời gian cao hơn chứa các khoảng trống khi tham số khung thời gian được sử dụng trong một tập lệnh (trừ khi timeframe_gaps được đặt thành false), nên các biến khung thời gian.* cũng sẽ chứa các giá trị n/a giữa các lần chuyển đổi thời gian. Hành vi này đã được lường trước. Bạn có thể tìm hiểu thêm về nội dung này trong Trung tâm Trợ giúp của chúng tôi.