CopyIndicatorBuffer
Lấy dữ liệu của bộ đệm chỉ báo được chỉ định với số lượng xác định vào một vector.
Dữ liệu sẽ được sao chép vào vector với phần tử lâu đời nhất nằm ở đầu bộ nhớ vật lý được cấp phát cho vector. Có ba tùy chọn hàm.
Truy cập theo vị trí ban đầu và số lượng phần tử yêu cầu
bool vector::CopyIndicatorBuffer(
long indicator_handle, // tay cầm chỉ báo
ulong buffer_index, // số thứ tự bộ đệm chỉ báo
ulong start_pos, // vị trí bắt đầu sao chép
ulong count // số lượng phần tử cần sao chép
);
2
3
4
5
6
Truy cập theo ngày bắt đầu và số lượng phần tử yêu cầu
bool vector::CopyIndicatorBuffer(
long indicator_handle, // tay cầm chỉ báo
ulong buffer_index, // số thứ tự bộ đệm chỉ báo
datetime start_time, // từ ngày nào để sao chép
ulong count // số lượng phần tử cần sao chép
);
2
3
4
5
6
Truy cập theo ngày bắt đầu và ngày kết thúc của khoảng thời gian yêu cầu
bool vector::CopyIndicatorBuffer(
long indicator_handle, // tay cầm chỉ báo
ulong buffer_index, // số thứ tự bộ đệm chỉ báo
datetime start_time, // từ ngày nào để sao chép
datetime stop_time // đến ngày nào để sao chép
);
2
3
4
5
6
Tham số
indicator_handle
[in] Tay cầm chỉ báo thu được từ hàm chỉ báo tương ứng.
buffer_index
[in] Số thứ tự của bộ đệm chỉ báo.
start_pos
[in] Chỉ số của phần tử đầu tiên được sao chép.
count
[in] Số lượng phần tử được sao chép.
start_time
[in] Thời gian thanh tương ứng với phần tử đầu tiên.
stop_time
[in] Thời gian thanh tương ứng với phần tử cuối cùng.
Giá trị trả về
Hàm trả về true
nếu thành công hoặc false
nếu xảy ra lỗi.
Ghi chú
Các phần tử của dữ liệu được sao chép (bộ đệm chỉ báo với chỉ số buffer_index
) được đếm ngược từ hiện tại về quá khứ, do đó vị trí bắt đầu bằng 0 có nghĩa là thanh hiện tại (giá trị chỉ báo cho thanh hiện tại).
Khi sao chép một lượng dữ liệu không xác định, bạn nên khai báo một vector mà không chỉ định kích thước (không cấp phát bộ nhớ cho dữ liệu), vì hàm CopyBuffer()
cố gắng điều chỉnh kích thước của vector nhận theo kích thước của dữ liệu được sao chép.
Khi cần sao chép một phần giá trị chỉ báo, bạn nên sử dụng một vector trung gian để sao chép số lượng yêu cầu. Từ vector trung gian này, bạn có thể sao chép từng thành viên số lượng giá trị cần thiết vào các vị trí mong muốn của vector nhận.
Nếu bạn sao chép một lượng dữ liệu đã xác định trước, nên khai báo trước vector và chỉ định kích thước của nó để tránh việc cấp phát lại bộ nhớ không cần thiết.
Khi yêu cầu dữ liệu từ một chỉ báo, hàm ngay lập tức trả về false
nếu chuỗi thời gian được yêu cầu chưa được xây dựng hoặc cần tải xuống từ máy chủ, đồng thời nó khởi tạo quá trình tải/xây dựng.
Khi yêu cầu dữ liệu từ một EA hoặc script, tải xuống từ máy chủ được khởi tạo nếu terminal không có dữ liệu phù hợp cục bộ, hoặc quá trình xây dựng chuỗi thời gian cần thiết bắt đầu nếu dữ liệu có thể được xây dựng từ lịch sử cục bộ nhưng các khung thời gian yêu cầu chưa sẵn sàng. Hàm trả về số lượng sẽ sẵn sàng khi hết thời gian chờ.
Xem thêm