Phòng quản trị rủi ro đo độ biến động giá đóng cửa của từng mã bằng độ lệch chuẩn tổng thể trên toàn bộ các phiên có dữ liệu:
do_lech_chuan = SQRT( trung bình của (close_price - gia_tb)^2 ), trong đó gia_tb là giá đóng cửa trung bình của mã.
Với mỗi mã hãy xuất:
so_phien — số phiên;gia_tb — giá đóng cửa trung bình, làm tròn 2 chữ số, DECIMAL(18,2);do_lech_chuan — làm tròn 2 chữ số, DECIMAL(18,2).Sắp xếp theo do_lech_chuan giảm dần, đồng giá trị thì theo symbol.
Chú ý kiểu dữ liệu: POWER trên DECIMAL của SQL Server giữ nguyên số chữ số thập phân của đối số nên có thể cắt mất phần lẻ. Hãy nhân với 1.0e0 (số thực) trước khi bình phương: POWER((close_price - tb) * 1.0e0, 2). Gợi ý: tính gia_tb từng dòng bằng AVG(...) OVER (PARTITION BY symbol) ở truy vấn con (hoặc dùng truy vấn con tương quan), rồi GROUP BY symbol ở truy vấn ngoài.
Bảng MarketPrices(symbol, close_price).
symbol, so_phien, gia_tb, do_lech_chuan (TAB); sắp xếp theo do_lech_chuan giảm dần, symbol.
Ví dụ:
Đầu vào:
Đầu ra:
FPT 10 121440.00 3026.28
PVI 10 54288.00 1727.78
VCB 10 92368.00 1604.07
VNM 10 68136.00 1452.08
VCS 10 56880.00 1440.00
IDC 10 51950.00 1293.25
MBS 10 24816.00 1063.61
PVS 10 37202.00 906.44
CEO 10 20306.00 811.62
SHS 10 15376.00 498.06
HPG 10 27027.00 426.05
NVB 10 9320.00 218.17
Giải thích:
Đang tải editor...