Trong quá trình công nghiệp hóa hiện nay công nghệ thông tin đang ngày càng phát triển mạnh mẽ và tác động đến mọi lĩnh vực của đời sống xã hội và không nằm ngoài sự tác động đó thị trường chứng khoán một lĩnh vực tuy còn khá mới mẻ ở Việt Nam cũng chịu sự tác động khá nhiều của công nghệ thông tin.
Thị trường chứng khoán là môi trường kinh doanh đang thu hút được sự quan tâm của khá nhiều tầng lớp trong xã hội và ngày càng có nhiều người tham gia vào.nhằm tạo điều hỗ trợ cho những người chơi chứng khoán(nhà đầu tư) dễ dàng hơn trong việc theo dõi sự xuất hiện và biến động của mã chứng khoán các công ty để từ đó đưa ra được các quyết định đầu tư đúng đắn hơp lý sở giao dịch đưa ra khái niệm bảng giá chứng khoán trực tuyến.
Trong thời gian thực hiện đồ án tốt nghiệp với đề tài “Nghiên cứu và phát triển tính năng của bảng giá chứng khoán trực tuyên” em hy vọng sẽ có thể hiểu được nhiều hơn về thị trường chứng khoán rồi từ đó sẽ cố gắng tạo ra được bảng giá chứng khoán trực tuyến phục vụ cho nhu cầu của các công ty chứng khoán và các nhà đầu tư chứng khoán .
Nội dung:
Chương 1: giới thiệu chung về thị trường chứng khoán
Chương 2: Bảng giá chứng khoán trực tuyến
Chương 3: Xây dựng ứng dụng (Demo)
76 trang |
Chia sẻ: lvcdongnoi | Lượt xem: 3064 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Nghiên cứu và phát triển tính năng của bảng giá chứng khoán trực tuyến, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
t hợp giữa mô hình “đa cấp” và
“đơn cấp”.
Theo các chuyên gia về công nghệ thông tin, việc xây dựng một Trung tâm
lưu ký độc lập ở Việt Nam sẽ đắt đỏ, tối thiểu chi phí phải cao gấp hơn 3
lần chi phí cần thiết để thành lập một công ty chứng khoán trung bình.
19
Chính vì vậy điều kiện tiên quyết để Việt Nam hay bất kì một quốc gia nào
sỏ hữu một Trung tâm lưu ký “hoàn hảo” là qui mô thị trường rộng lớn, số
lượng các nhà đầu tư cao, khối lượng giao dịch tương đối nhiều; tóm lại đó
phải là một thị trường sôi động. Và điều quan trọng hơn cả là việc tạo lập
một Trung tâm lưu ký là bước đi khởi đầu hướng tới hiện đại và đơn giản
hóa tuyệt đối chu trình giao dịch chứng khoán bằng mô hình “đơn cấp” với
mục tiêu trên hết an toàn, hiệu quả cho các nhà đầu tư.
Mô hình hỗn hợp này có những ưu điểm gì? Một điều dễ nhận thấy là với
cơ cấu đa cấp thì số lượng các tài khoản mà Trung tâm phải quản lý ít hơn
rất rất nhiều, nhưng theo các chuyên gia công nghệ thông tin, đó không
phải là mối lo ngại khi chuyển sang mô hình hỗn hợp. Tài khoản lưu ký
chứng khoán gần giống như tài khoản tiền gửi ở ngân hàng. Hệ thống ngân
hàng tại Việt Nam đang đảm nhận hơn 25 triệu tài khoản, không có gì là
khó khăn khi toàn bộ được quản lý bằng hệ thống máy tính và mạng. Thậm
chí một công ty chứng khoán hoàn toàn tự tin khi họ đóng góp vào sự phát
triển của thị truờng chứng khoán Việt Nam bằng việc giám sát minh bạch
từng tài khoản của các nhà đầu tư.
Thứ hai, áp dụng mô hình hỗn hợp giúp các công ty thành viên giảm
được một lượng đáng kể phí hoạt động chức năng, bởi lẽ khi mỗi nhà đầu
tư đều sở hữu một tài khoản riêng biệt, hệ thống máy tính đa dạng hóa dễ
dàng tùy biến để quản lý, điều chỉnh cho phù hợp với đặc điểm tình hình
của từng tài khoản hơn. Mọi hoạt động đều diễn ra suôn sẻ, “chỉ cần cập
nhật vào hệ thống, hệ thống sẽ tự động xử lý và các phòng ban hỗ trợ hoàn
toàn thảnh thơi”.
Thứ ba, các công ty chứng khoán không sẽ quan tâm đến phí dịch vụ
nhiều, vì Trung tâm lưu ký hoạt động vì mục tiêu phi lợi nhuận, và nhà đầu
tư là người lợi trước tiên. Phí dịch vụ cố định khoảng 0,2% nhưng đa số các
20
công ty thành viên đều không thu phí hoặc giảm phí như một phương thức
để chiêu khách.
Và điều cuối cùng cũng là quan trọng nhất, Chính phủ có thể ưu
thích áp dụng mô hình này như một cách thức để giám sát nhà đầu tư thông
qua việc nắm biết chính xác và đầy đủ tình hình tài khoản chứng khoán của
họ. Bởi lẽ, thật khó để mà đoán xét được thành viên Hội đồng quản trị các
công ty có đang giao dịch chính cổ phiểu của họ không, và những thông tin
nội bộ kiểu như vậy sẽ được giấu nhẹm đi nếu không có sự quản lý chặt
chẽ.
1.2.5. Giới thiệu về Ủy ban chứng khoán nhà nước
Ủy ban Chứng khoán Nhà nước là một cơ quan thuộc Bộ Tài chính
Việt Nam, chịu trách nhiệm trước Bộ trưởng Bộ Tài chính, thực hiện chức
năng quản lý nhà nước về chứng khoán và thị trường chứng khoán; trực
tiếp quản lý, giám sát hoạt động chứng khoán và thị trường chứng khoán;
quản lý các hoạt động dịch vụ công thuộc lĩnh vực chứng khoán và thị
trường chứng khoán theo quy định của pháp luật.
a) Về nhiệm vụ và quyền hạn:
Nhiệm vụ, quyền hạn của UBCKNN theo Quyết định số
161/2004/QĐ-TTg về cơ bản vẫn giữ như Nghị định số 90/2003/NĐ-CP,
cụ thể là:
1. Xây dựng, trình Bộ trưởng Bộ Tài chính các văn bản quy phạm
pháp luật về chứng khoán và thị trường chứng khoán; chiến lược, quy
hoạch, kế hoạch dài hạn, năm năm, hàng năm về chứng khoán, thị trường
chứng khoán;
21
2. Trình Bộ trưởng Bộ Tài chính quyết định theo thẩm quyền hoặc
để Bộ trưởng Bộ Tài chính xem xét, trình Thủ tướng Chính phủ việc thành
lập, đình chỉ hoạt động hoặc giải thể Trung tâm Giao dịch chứng khoán, Sở
Giao dịch chứng khoán, Trung tâm Lưu ký chứng khoán, các tổ chức khác
có liên quan đến hoạt động chứng khoán và giao dịch chứng khoán;
3. Tổ chức thực hiện các văn bản quy phạm pháp luật, chiến lược,
quy hoạch, kế hoạch về chứng khoán, thị trường chứng khoán sau khi được
phê duyệt;
4. Ban hành tiêu chuẩn, quy trình, quy phạm chuyên môn nghiệp vụ,
định mức kinh tế – kỹ thuật để áp dụng trong các tổ chức, đơn vị trực thuộc
theo quy định của pháp luật và của Bộ trưởng Bộ Tài chính;
5. Cấp, gia hạn, đình chỉ hoặc thu hồi giấy chứng nhận đăng ký phát
hành, đăng ký giao dịch, giấy phép niêm yết, giấy phép kinh doanh, chứng
chỉ hành nghề kinh doanh và dịch vụ chứng khoán theo quy định của pháp
luật;
6. Tổ chức, quản lý Trung tâm Giao dịch chứng khoán, Sở Giao
dịch chứng khoán và các thị trường giao dịch chứng khoán có tổ chức,
trung tâm lưu ký, đăng ký, thanh toán bù trừ chứng khoán;
7. Quản lý việc thực hiện các quy định về chứng khoán và thị
trường chứng khoán đối với các tổ chức phát hành chứng khoán ra công
chúng, tổ chức niêm yết chứng khoán, tổ chức kinh doanh chứng khoán và
tổ chức phụ trợ theo quy định của pháp luật;
8. Thanh tra, kiểm tra và giám sát các tổ chức và cá nhân tham gia
hoạt động tại thị trường chứng khoán và xử lý các vi phạm về chứng khoán
và thị trường chứng khoán theo quy định của pháp luật;
22
9. Hướng dẫn, tạo điều kiện cho các tổ chức hiệp hội chứng khoán
thực hiện mục đích, tôn chỉ và Điều lệ hoạt động của hiệp hội; kiểm tra
thực hiện các quy định của Nhà nước, xử lý hoặc kiến nghị cơ quan nhà
nước có thẩm quyền xử lý các vi phạm pháp luật của hiệp hội chứng khoán
theo quy định của pháp luật và phân công của Bộ trưởng Bộ Tài chính;
10. Thực hiện chế độ báo cáo về chứng khoán và thị trường chứng
khoán theo quy định của pháp luật và phân cấp quản lý của Bộ trưởng Bộ
Tài chính;
11. Thực hiện hợp tác quốc tế về chứng khoán và thị trường chứng
khoán theo quy định của pháp luật và phân công của Bộ trưởng Bộ Tài
chính;
12. Thực hiện cải cách hành chính theo mục tiêu và nội dung
chương trình cải cách hành chính của Uỷ ban Chứng khoán Nhà nước được
Bộ trưởng Bộ Tài chính phê duyệt;
13. Tổ chức công tác phân tích dự báo, thông tin, tuyên truyền, phổ
cập kiến thức, đào tạo và bồi dưỡng về chứng khoán và thị trường chứng
khoán cho các tổ chức, cá nhân tham gia hoạt động trên thị trường chứng
khoán;
14. Tổ chức nghiên cứu khoa học về chứng khoán và thị trường
chứng khoán;
15. Tổ chức, quản lý và ứng dụng công nghệ thông tin; hiện đại hoá
công tác quản lý chứng khoán và thị trường chứng khoán theo quy định của
pháp luật và phân cấp quản lý của Bộ trưởng Bộ tài chính;
23
16. Quản lý tổ chức bộ máy, biên chế, cán bộ, công chức, viên chức
thuộc phạm vi quản lý của Uỷ ban Chứng khoán Nhà nước; tổ chức đào
tạo, bồi dưỡng chuyên môn, nghiệp vụ và thực hiện chế độ, chính sách đối
với cán bộ, công chức, viên chức thuộc Uỷ ban Chứng khoán Nhà nước
theo quy định của pháp luật và phân cấp quản lý của Bộ trưởng Bộ Tài
chính;
17. Quản lý tài chính, tài sản được giao theo quy định của pháp luật
và phân cấp quản lý của Bộ trưởng Bộ Tài chính
18. Thực hiện các nhiệm vụ khác do Bộ trưởng Bộ Tài chính giao.
b) Các tổ chức sự nghiệp trực thuộc:
1. Trung tâm Giao dịch chứng khoán Hà Nội;
2. Trung tâm Giao dịch chứng khoán thành phố Hồ Chí Minh;
3. Trung tâm Nghiên cứu khoa học và Đào tạo chứng khoán;
4. Trung tâm Tin học và Thống kê;
5. Tạp chí Chứng khoán;
24
1.2.6. Giới thiệu về các chức năng của công ty chứng khoán
Công ty chứng làm nhiệm vụ trung gian thay mặt cho các nhà đầu tư
tiếp xúc trực tiếp với Sở giao dịch chưng khoán để thực hiện các giao dịch.
Sở giao dịch làm nhiệm vụ trung gian nên cần đảm bảo những chức năng
sau :
Ứng dụng văn phòng (Nhân viên công ty chứng khoán).
Bảo mật
Tiền
Chứng khoán
Kế toán…
Ứng dụng giao dịch trực tuyến. ( Điện thoại (call center), SMS)
Bảo mật.
Tiền ( Chuyển tiền).
Đặt lệnh ( Mua, bán).
Theo dõi thông tin tài khoản ( Tiền, chứng khoán).
Danh mục đầu tư ( Chức năng chơi chứng khoán ảo).
Bảng Giá
25
Mô hình trao đổi thông tin điển hình của công ty chứng khoán:
26
Chương 2
BẢNG GIÁ CHỨNG KHOÁN TRỰC TUYẾN
2.1. MỤC ĐÍCH
Bảng giá chứng khoán là 1 kênh thông tin có tác dụng hiển thị và cung
cấp thông tin cho nhà đầu tư chứng khoán hỗ trợ họ trong việc theo dõi sự
biến động tăng giảm mã cổ phiếu của các công ty đã được niêm yến trên
sàn chứng khoán và sự tham gia mới của những mã chứng khoán của các
công ty mới được niêm yết lên sàn.
Bảng giá sẽ cung cấp các chỉ số VN-Index, các thông tin mua - bán
chứng khoán, chỉ số tăng giảm chứng khoán được niên yết tại Sở giao dịch
chứng khoán Hà Nội và Sài Gòn.
Bên cạnh đó bảng giá cũng sẽ cung cấp thông tin hiển thị cho nhà đầu tư
biết được số lượng cổ phiếu đã được mua bán hay chuyển nhượng sau mỗi
phiên giao dịch…
2.2. KHẢO SÁT HỆ THỐNG BẢNG GIÁ CÔNG TY NAM VIỆT
Quy trình giao dịch chứng khoán niêm yết tại TTGDCK đã được mô
tả theo sơ đồ:
27
Bước l: Nhà đầu tư đến mở tài khoản và đặt lệnh mua hay bán chứng khoán
tại một công ty chứng khoán.
Bước 2: Công ty chuyển lệnh mua hoặc bán chứng khoán cho đại diện của
công ty tại TTGDCK. Người đại diện này sẽ nhập lệnh vào hệ thống của
TTGDCK.
Bước 3: Trung tâm gian dịch chứng khoán thực hiện ghép lệnh và thông
báo kết quả giao dịch cho công ty chứng khoán.
Bước 4: Công ty chứng khoán thông báo kết quả giao dịch cho nhà đầu tư.
Bước 5: Nhà đầu tư nhận được chứng khoán (nếu là người mua) hoặc tiền
(nếu là người bán) trên tài khoản của mình tại công ty chứng khoán sau 3
ngày làm việc kể từ ngày mua bán.
28
2.3. YÊU CẦU CỦA BẢNG GIÁ
Nhằm tạo điều kiện cho các nhà đầu tư có thể theo dõi được sự biến
động của các mã chứng khoán mà nhà đầu tư đó quan tâm nhưng do nhiều
điều kiện khách quan nhà đầu tư không thể đến trực tiếp Sàn giao dịch
chứng khoán để theo dõi sự biến động của cổ phiếu.thay vì đến trực tiếp
Sàn giao dịch thì họ có thể theo dõi những mã chứng khoán mà mình quan
tâm thông qua bảng giá chứng khoán trực tuyến chính vì thế yêu cầu đặt ra
cho bảng giá chứng khoán trực tuyến là:
Hiển thị đầy đủ các mã chứng khoán của các công ty đã được niêm
yết mà nhà đầu tư quan tâm như số lượng cổ phiếu trào bán của công
ty hay số lượng cổ phiếu của mã chứng khoán đó đã được giao dịch
trong phiên giao dịch
Cập nhật thường xuyên nhanh chóng chính xác sự biến động giá của
từng mã cổ phiêu mỗi khi có nhà đầu tư nào đó thực hiện giao dịch
mua (bán) thì sau quá trình thu thập và xử lý giao dịch đó của Trung
tâm giao dịch chứng khoán sẽ tra kết quả về cho các công ty chứng
khoán,các công ty chứng khoán sẽ có nhiệm vụ thông báo thông tin
đó đến các nhà đầu tư biết thông qua sự hiển thị của bảng giá và 1 số
kênh thông tin khác.
Thông tin được hiển thị trên bảng giá phải rõ ràng dễ dàng thuận
tiện cho nhà đầu tư theo dõi thông tin tránh việc đưa thông tin không
rõ ràng tạo ra tâm lý hoang mang cho nhà đầu tư và ảnh hưởng đến
công ty có mã chứng khoán niêm yết trên bảng giá.
29
2.4. PHÂN TÍCH
2.4.1. Mô hình quan hệ của bảng giá
30
2.4.2. Mô tả thành phần bảng giá
Để có thể hiểu rõ hơn về Bảng giá chứng khoán trực tuyến ta đi phân
tích các thành phần được hiển thị ở trong bảng
31
Phần đầu : hiển thị trên bảng hay còn gọi là Header hiển thị logo và tên
của Công ty chứng khoán hay bất kỳ tổ chức nào có Bảng giá
Tiếp đến là những Tab lựa trọn như HoSE,HaSTC,Upcom,Tùy Chọn..nhằm
phục vụ cho nhà đầu tư đưa ra nhiều sự chọn lựa
Kế tiếp đên là các Cột :Ngày GD, TTTT, VN-Index, Số CK
tăng/giảm,Tổng Khối lượng,Tổng giá trị,Giờ máy chủ..
Riêng bảng giá hiển thị của HoSE có thêm dòng hiển thị các phiên giao
dịch của thị trường được chia làm 3 đợt
Còn với HNX (HaSTC) thì giao dịch trong ngày chỉ có 1 phiên duy nhất
Phần thân: được chia làm nhiều cột và dòng hiển thị thông tin của các mã
chứng khoán đã niêm yết
Phần kết: chứa quy ước đơn vị giá của cổ phiếu ,số lượng người truy cập
và địa chỉ liên hệ tên công ty….
32
Ý nghĩa của các mấu sắc được hiển thị trong bảng giá
+ Màu xanh: Biểu tượng cho sự thay đổi tăng giá
+ Màu đỏ : Biểu tượng cho sự thay đổi giảm giá
+ Màu vàng: Biểu tượng cho sự đứng giá (không thay đổi)
+Màu tím : Biểu tượng cho giá tăng kịch trần
+Màu xanh nước biên:Biểu tượng giá giảm kịch sàn
Các thông tin cơ bản được thể hiện trong bảng điện tử:
Chỉ số VN-Index là ký hiệu của chỉ số chứng khoán Việt Nam.VN-
Index xây dựng căn cứ vào giá trị thị trường của tất cả các cổ phiếu được
niêm yết. Với hệ thống chỉ số này, nhà đầu tư có thể đánh giá và phân tích
thị trường một cách tổng quát
Chỉ số VN Index là chỉ số trung bình giá chứng khoán trên thị trường VN.
Tuy từng nhà đầu tư mua một cổ phiếu riêng biệt sẽ chỉ quan tâm đến giá
loại cổ phiếu riêng biêt đó, nhưng chỉ số VN index một cách tổng quan
người ta quan tâm đến nó vì nó phản ánh được một cách trung bình giá trị
của tất cả các cổ phiếu đang được niêm yết. Nhìn nó tăng hay giảm người
ta có thể có được một cái đánh giá là giá cổ phiếu trung bình tăng hay giảm
trong ngày hôm đó.
Ở Việt Nam, trong thời gian đầu chỉ số chứng khoán được tính toán sẽ đại
diện cho tất cả các cổ phiếu được niêm yết và giao dịch trên thị trường
chứng khoán. Chỉ số này được tính theo phương pháp trọng số giá trị thị
trường, tức dựa vào mức độ chi phối của từng giá trị được sử dụng để tính
chỉ số.
33
Công thức tính cơ bản:
VN Index = Tổng giá trị thị trường của các cổ phiếu niêm yết hiện tại /
Tổng giá trị của các cổ phiếu niêm yết cơ sở x 100
- Cột mã chứng khoán(Mã CK): Là mã hiệu (tên viết tắt) của chứng
khoán được đăng ký và niêm yết tại Trung tâm giao dịch chứng khoán
(TTGDCK).
- Cột giá tham chiếu(TC): Là giá đóng cửa của ngày giao dịch trước đó và
là cơ sở để xác định giá trần, giá sàn của ngày giao dịch hiện tại.
- Cột giá trần(Trần): Là mức giá cao nhất mà nhà đầu tư có thể đặt lệnh
mua, bán chứng khoán.
+ Trên TTGDCK TP HCM: Giá trần = Giá tham chiếu + 5% *Giá tham
chiếu
+ Trên TTGDCK Hà Nội: Giá trần = Giá tham chiếu + 10% * Giá tham
chiếu
-Cột giá sàn(Sàn): Là mức giá thấp nhất mà nhà đầu tư có thể đặt lệnh
mua, bán CK.
+ Trên TTGDCK TP HCM: Giá sàn = Giá tham chiếu - 5% * Giá tham
chiếu
+ Trên TTGDCK Hà Nội: Giá sàn = Giá tham chiếu - 10% * Giá tham
chiếu
- Cột giá mở cửa: Là mức giá thực hiện đầu tiên trong ngày giao dịch.
- Cột giá đóng cửa: Là mức giá thực hiện cuối cùng trong ngày giao dịch.
34
- Cột giá khớp lệnh: Là mức giá tại đó khối lượng CK được giao dịch
nhiều nhất.
- Cột khối lượng khớp lệnh: Là khối lượng CK được thực hiện tại mức
giá khớp lệnh.
- Cột chênh lệch (+/-): Là thay đổi của mức giá hiện tại so với giá tham
chiếu trong ngày giao dịch (= giá hiện tại – giá tham chiếu).
- Cột Dư mua: gồm 6 cột biểu thị cho 3 mức giá đặt mua cao nhất tương
ứng với các khối lượng đặt mua tại các mức giá cao nhất đó. Khi kết thúc
phiên giao dịch Bảng điện tử sẽ hiện thị các thông tin về khối lượng CK
tương ứng với các mức giá chưa được khớp lệnh (dư mua).
Cột “Giá 1” và “KL 1”: Biểu thị mức giá đặt mua cao nhất
hiện thời và khối lượng đặt mua tương ứng với mức giá đó.
Những lệnh đặt mua ở mức “Giá 1” luôn được ưu tiên thực
hiện trước so với những lệnh đặt mua khác.
Cột “Giá 2” và “KL 2”: Biểu thị các lệnh đặt mua ở mức
“Giá 2” và “KL 2”. Lệnh đặt mua ở mức “Giá 2” có độ ưu
tiên chỉ sau lệnh đặt mua ở mức “Giá 1”.
Tương tự như vậy, cột “Giá 3” và “KL 3” là cột mà các lệnh
đặt mua ở mức giá này chỉ xếp hàng ưu tiên sau lệnh đặt mua
ở mức “Giá 2”.
- Cột Dư bán: gồm 6 cột biểu thị cho 3 mức giá đặt bán thấp nhất tương
ứng với các khối lượng đặt bán tại các mức giá thấp nhất đó. Khi kết thúc
phiên giao dịch Bảng điện tử sẽ hiện thị các thông tin về khối lượng CK
tương ứng với các mức giá chưa được khớp lệnh (dư bán).
35
Cột “Giá 1” và “KL 1”: Biểu thị mức giá chào bán thấp nhất
hiện thời và khối lượng chào bán tương ứng với mức giá đó.
Những lệnh chào bán ở mức “Giá 1” luôn được ưu tiên thực
hiện trước so với những lệnh chào bán khác
Cột “Giá 2” và “KL 2”: Biểu thị các lệnh chào bán ở mức
“Giá 2” và “KL 2”. Các lệnh chào bán ở mức “Giá 2” có độ
ưu tiên chỉ sau lệnh chào bán ở mức “Giá 1”.
Tương tự như vậy, cột “Giá 3” và “KL 3” là cột mà các lệnh
chào bán ở mức giá này chỉ xếp hàng ưu tiên sau lệnh chào
bán ở mức “Giá 2”.
Hệ thống cột “Giá chào mua tốt nhất”/ “Giá chào bán tốt nhất”
chỉ hiện thị ba mức giá mua/giá bán tốt nhất. Ngoài ba mức giá
mua/giá bán trên thị trường còn có các mức giá mua/giá bán
khác nhưng không tốt bằng ba mức giá thể hiện trên màn hình.
-Khối lượng bán còn lại : số lượng cổ phiếu được đem trào bán còn lại sau
giao dịch tính đến thời điểm hiện tại
-Tổng khối lượng : tổng số cổ phiếu được đem ra giao dịch tính từ khi thị
trường mở của đến thời điểm hiện tại
-Mở Cửa : giá cổ phiếu lúc mở cửa
-Cao nhất : giá cao nhất của cổ phiếu trong phiên giao dịch
-Thấp nhất: giá thấp nhất của cổ phiếu trong phiên giao dịch
-NN mua : khối lượng cổ phiếu người nước ngoài được quyền mua
-NN bán : khối lượng cổ phiếu người nước ngoài được bán
36
2.4.3. Tương tác giữa bảng giá thông minh và người sử dụng.
Tạo danh sách các mã cần theo dõi theo ý muốn: bằng cách
nhấp đúp chuột vào mã muốn đưa vào danh sách, các mã đó sẽ
được đưa lên đầu bảng giá và phân cách với phần còn lại bởi nét
biên đậm. Muốn bỏ một mã nào đó ra khỏi danh sách, nhà đầu tư
cũng chỉ cần nhấp đúp chuột vào mã đó.
Sắp xếp các mã chứng khoán theo ý muốn
Tất cả các cột trong bảng đều có tính năng tương tác, tự động sắp
xếp các mã theo một trật tự nhất định theo nhu cầu nhà đầu tư chỉ
bằng thao tác nhấp chuột vào cột đó.
Nhấp chuột vào cột “Mã CK”: các mã chứng khoán sẽ tự
động sắp xếp theo trình tự Alphabet từ A đến Z hoặc từ Z
đến A bằng cách nhấp chuột thêm một lần nữa
Nhấp chuột vào các cột “Trần”, “Sàn”, “TC”: để sắp xếp
các mã chứng khoán theo các mức giá (trần, sàn, tham
chiếu) từ lớn tới nhỏ và ngược lại.
Nhấp chuột vào cột “giá chào mua tốt nhất”/ “Giá chào bán
tốt nhất”: để sắp xếp các mã theo tổng lượng dư mua/dư
bán tốt nhất từ lớn tới nhỏ và ngược lại, giữ thêm phím
ALT và nhấn để sắp xếp theo tổng giá trị dự mua/dư bán
tốt nhất từ lớn tới nhỏ và ngược lại.
Nhấp chuột vào cột “Kết quả khớp lệnh”: để sắp xếp các
mã theo từng nhóm thay đổi giá: tăng kịch trần – tăng –
đứng giá – giảm – giảm kịch sàn – không có giao dịch
trong phiên.
Ngoài ra nhà đầu tư có thể sắp xếp các mã theo thứ tự từ
lớn nhất đến nhỏ nhất và ngược lại của mức độ thay đổi
giá, giá khớp, khối lượng khớp, tổng khối lượng khớp, các
37
mức giá chào mua, chào bán và khối lượng tương ứng, giá
mở cửa, giá cao nhất, giá thấp nhất, khối lượng mua của
nhà đầu tư nước ngoài bằng các nhấp chuột vào cột tương
ứng.
Hệ thống chỉ sắp xếp với dữ liệu tại thời điểm có yêu cầu sắp
xếp, không tự động sắp xếp khi dữ liệu thay đổi.
Theo dõi các mã cổ phiếu theo tiêu chí mong muốn
Nhà đầu tư nhấp chuột vào menu “Tùy chọn” ở góc phải màn
hình để lựa chọn các mã cổ phiếu theo tiêu chí mong muốn
Chỉ xem chứng khoán ưa thích
Xem tất cả chứng khoán
Xem các mã chứng khoán theo ngành
2.5. THIẾT KẾ CƠ SỞ DỮ LIỆU CHO BẢNG GIÁ
Bảng giá chứng khoán là một khái niệm tiện ích mới được nảy sinh
trong thị trường chứng khoán nhằm đáp ứng những nhu cầu cấp thiết của
nhà đầu tư và thuận tiện cho việc Ủy ban chứng khoán nhà nước quản lý
các công ty chứng khoán.
Chính vì thế nên dữ liệu của bảng giá phải tuân theo nhưng quy định bắt
buộc của sở giao dịch chứng khoán và Ủy ban chứng khoán nhà nước trả
về.
Khi có một nhà đầu tư bất kì (nhà đầu tư A) đến giao dịch tại công ty
chứng khoán (công ty chứng khoán A) yêu cầu mua một số lượng cổ phiếu
nhất định thì đại diện của Công ty chứng khoán A sẽ chuyển yêu cầu của
38
nhà đầu tư A đó về Sở giao dịch chứng khoán.Sở giao dịch chứng khoán sẽ
tiếp nhận và xử lý yêu cầu giao dịch đó,đồng thời Sở giao dịch chứng
khoán đó cũng sẽ gửi thông tin của giao dich đó về cho Ủy ban chứng
khoán nhà nước.sau quá trình xử lý thông tin kết quả sẽ được sở trả về cho
Công ty chứng khoán A tử đó Công ty A sẽ gửi thông báo về giao dịch đó
cho nhà đầu tư A và chuyển dữ liệu vừa nhận được từ Sở trả về đó hiển thị
lên bảng giá chứng khoán cho các nhà đầu tư khác biết được
2.5.1. Các bảng cơ sở dữ liệu
Sau mỗi phiên giao dịch hay sau khi thị trường đóng cửa các thông tin giao
dịch trong ngày của các phiên giao dịch đã diễn ra sẽ được các công ty
chứng khoán hay các trung tâm giao dịch chứng khoán gửi về cho Sở
chứng khoán.từ đó sở sẽ tổng hợp tất cả dữ liệu đó lại và xử lý sau khi xử
lý xong sẽ gửi trả lại cho các công ty chứng khoán.các công ty chứng
khoán sẽ sử dụng các công cụ đọc dữ liệu của riêng mình từ đó sẽ đưa dữ
liệu đã được xử lý hiển thị lên bảng giá cho nhà đầu tu thấy được.
Dữ liệu của bảng giá được Sở trả về dưới dạng các bảng dữ liệu:
Bảng MARKET_INFO : Bảng chứa thông tin chung về thị trường
chứng khoán (Index,Chứng khoán tăng,giảm,…..)
Name Type Length Scale Not null
FLOOR_CODE VARCHAR2 2
DATE_NO NUMBER
TRADING_DATE DATE 7
CURRENT_STATUS NUMBER 2 0
TIME VARCHAR2 12
TOTAL_TRADE NUMBER
39
TOTAL_STOCK NUMBER
TOTAL_QTTY NUMBER
TOTAL_VALUE NUMBER
ADVANCES NUMBER
DECLINES NUMBER
PRIOR_MARKET_INDEX NUMBER
CHG_INDEX NUMBER
PCT_INDEX NUMBER
CURRENT_INDEX NUMBER
MARKET_INDEX NUMBER
SESSION_NO VARCHAR2 20
NOCHANGE NUMBER
MARKET_STATUS VARCHAR2 20
INDUSTRY_NAME VARCHAR2 300
INDUSTRY_CODE VARCHAR2 20
IS_GENERAL VARCHAR2 10
Bảng SECURITY.DAT: Chứa thông tin về giá, khối lượng giao dịch
của tất cả chứng khóan niêm yết.
Trường Dữ Liệu Kiểu Độ
Dài
Mô Tả Cập Nhật
StockNo Integer 2
bytes
Mã chứng khoán
dạng số
Ghi chồng
StockSymbol String 8 Mã chứng khoán
dạng chuỗi
…
40
StockType String 1 Lọai chứng khóan
+ S: Cổ phiếu
+ D: Trái phiếu +
U: Chứng chỉ quỹ
…
Ceiling Long 4 Giá trần …
Floor Long 4 Giá sàn …
BigLotValue Double 8 - …
SecurityName String 25 Tên đây đủ của
chứng khoán
…
SectorNo String 1 - …
Designated String 1 - …
Suspension String 1 CK bị tạm ngưng
giao dịch
+ Null: Giao dịch
bình thường
+ S: Bị tạm
ngưng
…
Delist String 1 CK bị hủy niêm
yết
+ Null: Giao dịch
bình thường
+ D: Bị hủy niêm
yết
…
HaltResumeFlag String 1 CK bị ngưng hoặc
giao dịch trơ lại
trong phiên giao
dịch
…
41
+ Null: Giao dịch
bình thường
+ H: Bị ngưng
giao dịch trong
phiên
+ R: Giao dịch trở
lại trong phiên
Split String 1 CK thực hiện tách
cổ phiếu
+ Null: Không
thực hiện
+ S: Thực hiện
…
Benefit String 1 CK thực hiện
quyền và chia cổ
tức
+ Null: Không
thực hiện
+ A: Phát hành
thêm & Cổ tức
+ D: Chia cổ tức
+ R: Thực hiện
quyền
…
Meeting String 1 TCNY tổ chức
đại hội cổ đông
…
+ Null: Không
+ M: Tổ chức đại hội cổ đông
42
Notice String 1 TCNY bị yêu cầu cung cấp
thong tin quan trong trong
phiên giao dịch
+ Null: Không
+ P: Chờ thong tin cần cung
cấp
+ R: Đã nhận thong tin cung
cấp
...
ClientIDRequest String 1 - …
CouponRate Integer 2 - …
IssueDate String 6 Ngày phát hành …
MatureDate String 6 - …
AvrPrice Long 4 Giá bình quân gia quyền của
các mức giá khớp
…
ParValue Integer 2 Mệnh giá phát hành …
SDCFlag String 1 - …
PriorClosePrice Long 4 Giá đóng cửa gần nhất …
PriorCloseDate String 6 Ngày giao dịch gần nhất …
ProjectOpen Long 4 Giá tạm khớp trong đợt KL
định kỳ
…
OpenPrice Long 4 Giá khớp mớ cửa …
Last Long 4 Giá khớp …
LastVol Long 4 Tổng khối lượng khớp …
LastVal Double 8 Tổng giá trị khớp …
Highest Long 4 Giá khớp cao nhất …
Lowest Long 4 Giá Khớp thấp nhất …
Totalshare Double 8 - …
43
TotalValue Double 8 - …
AccumulateDeal Integer 2 - …
BigDeal Integer 2 - …
BigVol Long 4 - …
BigVal Double 8 - …
OddDeal Integer 2 - …
OddVol Long 4 - …
OddVal Double 8 - …
Best1Bid Long 4 Giá đặt mua tốt nhất 1 …
Best1BidVolume Long 4 Khối lượng tương ứng giá
đặt mua 1
…
Best2Bid Long 4 Giá đặt mua tốt nhất 2 …
Best2BidVolume Long 4 Khối lượng tương ứng giá
đặt mua 2
…
Best3Bid Long 4 Giá đặt mua tốt nhất 3 …
Best3BidVolume Long 4 Khối lượng tương ứng giá
đặt mua 3
…
Best1Offer Long 4 Giá đặt bán tốt nhất 1 …
Best1OfferVolume Long 4 Khối lượng tương ứng giá
đặt bán 1
…
Best2Offer Long 4 Giá đặt bán tốt nhất 2 …
Best2OfferVolume Long 4 Khối lượng tương ứng giá
đặt bán 2
…
Best3Offer Long 4 Giá đặt bán tốt nhất 3 …
Best3OfferVolume Long 4 Khối lượng tương ứng giá
đặt bán 3
…
44
BoardLost Integer 2 -
Tổng độ dài (Byte) 221
Bảng TOTALMKT.DAT: Thông tin tổng hợp thị trường như VN-
Index, tổng khối lượng, tổng giá trị của MainBoard và BigLotBoard.
Trường Dữ Liệu Kiểu Độ
Dài
Mô Tả Cập Nhật
VNIndex Long 4
bytes
Chỉ số chứng
khóan
Ghi thêm
TotalTrade Long 4 Tổng số lệnh
được khớp
…
TotalShares Double 8 Tổng khối
lượng
…
TotalValues Double 8 Tổng giá trị …
UpVolume Double 8 Tồng KL của
các CK tăng
giá
…
NoChangeVolume Double 8 Tổng KL của
các CK đứng
giá
…
DownVolume Double 8 Tổng KL của
các CK giảm
giá
…
Advances Integer 2 Tổng số CK
tăng giá
…
Declines Integer 2 Tổng số CK …
45
giảm giá
NoChange Integer 2 Tổng số CK
đứng giá
…
VN50Index Long 4 - …
MarketID String 1 - …
Filter String 1 - …
Time Long 4 Thời gian của
máy chủ giao
dịch
…
Tổng độ dài (Byte) 64
Bảng PUT_AD.DAT: Thông tin về các quảng cáo giao dịch thỏa
thuận của trái phiếu và cổ phiếu trên BigLotBoard.
Trường Dữ Liệu Kiểu Độ
Dài
Mô Tả Cập Nhật
TradeID Integer 2
bytes
Số hiệu giao dịch do
mát chủ cấp
Ghi thêm
StockNo Integer 2 Mã chứng khoán
dạng số
…
Vol Long 4 Khối lượng …
Price Double 8 Giá …
FirmNo Long 4 Sô hiệu Broker đăng
quảng cáo
…
Side String 1 Đăng mua/bán …
Board String 1 Bảng giao dịch
+ B: BigLotBoard.
…
46
Time Long 4 Thời gian đăng
quảng cáo
…
Flag String 1 Tình trang của tin
đăng quảng cáo
+ A: Quảng cáo
được đăng
+ C: Quảng cáo bị
hủy
…
Tổng độ dài (Byte) 27
Bảng PUT_EXEC.DAT: Thông tin về lệnh giao dịch thỏa thuận được
khớp.
Trường Dữ Liệu Kiểu Độ
Dài
Mô Tả Cập Nhật
ConfirmNo Long 4
bytes
Số hiệu giao dịch do
máy chủ cấp
Ghi thêm
StockNo Integer 2 Mã chứng khoán
dạng số
…
Vol Long 4 Khối lượng …
Price Long 4 Giá …
Board String 1 Bảng giao dịch
+ B: BigLotBoard.
…
Tổng độ dài (Byte) 15
47
Bảng PUT_DC.DAT: Thông tin về lệnh khớp giao dịch thỏa thuận bị
hủy.
Trường Dữ Liệu Kiểu Độ
Dài
Mô Tả Cập Nhật
ConfirmNo Long 4
bytes
Số hiệu giao dịch
do máy chủ cấp
Ghi thêm
StockNo Integer 2 Mã chứng khoán
dạng số
…
Vol Long 4 Khối lượng …
Price Long 4 Giá …
Board String 1 Bảng giao dịch
+ B: BigLotBoard.
…
Tổng độ dài (Byte) 15
Bảng LE.DAT: Thông tin giá khớp, khối lượng khớp, thời gian khớp
trên MainBoard
Trường Dữ Liệu Kiểu Độ
Dài
Mô Tả Cập Nhật
StockNo Long 4 Mã chứng khoán
dạng số
Ghi thêm
Price Long 4 Giá khớp …
AccumulatedVol Long 4 Tổng khối lượng …
AccumulatedVal Double 8 Tổng giá trị …
Highest Long 4 Giá khớp cao nhất …
48
Lowest Long 4 Giá khớp thấp nhất …
Time Long 4 Thời gian khớp …
Tổng độ dài (Byte) 32
Bảng MARKET_STAT: Thông tin về trạng thái thị trường
Trường Dữ Liệu Kiểu Độ
Dài
Mô Tả Cập Nhật
ControlCode String 1 Trạng thái
+ C: Đóng cửa
MainBoard
+ F: Kết thúc nghỉ
giữa đợt
+ H: Ngưng giao
dịch tất cả CK
+ I: Bắt đầu nghỉ
giữa đợt
+ A: Bắt đầu đợt KL
định kỳ đóng cửa
+ K: Kết thúc đợt
Runn-off
+ N: Giao dịch trở
lại của CK cụ thể
+ O: Bắt đầu đợt KL
lien tục
+ P: Bắt đầu đợt KL
định kỳ mở cửa
+ R: Giao dịch trở
Ghi thêm
49
lại tất cả CK
Time Long 4 Thời gian của máy
chủ
…
Tổng độ dài (Byte) 5
Bảng DELIST.DAT: Thông tin về chứng khóan bị hủy niêm yết
Trường Dữ Liệu Kiểu Độ
Dài
Mô Tả Cập Nhật
StockNo Integer 2 Mã chứng khoán dạng
số
Ghi thêm
StockSymbol String 8 Mã chứng khóan dạng
chuỗi
…
StockType String 1 Lọai chứng khoán
+ S: Cổ phiếu
+ D: Trái Phiếu
+ U: Chứng chỉ quỹ
StockName String 25 Tên đầy đủ của chứng
khóan
…
SectorNo Integer 2 - …
Tổng độ dài (Byte) 38
50
Bảng FROOM.DAT: bảng nhà đầu tư nước ngoài
Trường Dữ Liệu Kiểu Độ
Dài
Mô Tả Cập Nhật
StockNo Long 4 Ghi thêm
TotalRoom Double 8 Tổng room
NĐTNN được
phép mua
…
CurrentRoom Double 8 Room còn lại
NĐTNN được
phép mua
-
Tổng độ dài (Byte) 20
sau khi nhận được các bảng dữ liệu do sở cung cấp việc mà các công ty
chứng khoán cần làm là đông bộ dữ liệu đó và hiển thị lên bảng giá để nhà
đâu tư có thể nắm bắt được thông tin.
Ví dụ Sơ đồ cập nhập dữ liệu trả về của sàn giao dịch HOSE
Bảng thời gian giao dịch
Cổ phiếu, chứng chỉ quỹ
51
Trái phiếu
Sơ đồ cập nhật dữ liệu
Khớp lệnh định kỳ ( 3 đợt )
52
Ghi Chú:
S1: Đợt 1
B1: Nghỉ giữ đợt 1
S2: Đợt 2
B2: Nghỉ giữa đợt 2
R: Run-off
C: Đóng của thi trường
Khớp lệnh liên tục ( 1 đợt )
53
Ghi Chú:
T1: Xác định giá mở cửa
T1: Khớp lệnh liên tục
T2: Xác định giá đóng cửa
T4: Run-off
T5: Đóng cửa thị trường
54
Biểu đồ luồng dữ liệu
55
Chương 3
XÂY DỰNG ỨNG DỤNG
3.1. HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ORACLE
Oracle là một hệ CSDL quan hệ mạnh nhất và được sử dụng nhiều
nhất trong các hệ thống lớn hiện nay.
Oracle bao gồm một tập hợp hoàn thiện các sản phẩm xây dựng ứng dụng
và người dùng cuối được trang bị các giải pháp kỹ thuật thông tin hoàn hảo.
Các ứng dụng Oracle tương thích với hầu hết các hệ điều hành từ các máy
tính cá nhân đến các hệ thống xử lý song song lớn.
Oracle cung cấp một hệ quản trị cơ sở dữ liệu (Database Management
System - DBMS) uyển chuyển: Oracle Server để lưu giữ và quản lý các
thông tin dùng trong các ứng dụng. Phiên bản Oracle 7 quản lý cơ sở dữ
liệu với tất cả các ưu điểm của cấu trúc CSDL quan hệ cộng thêm khả năng
lưu giữ và thực thi các đối tượng CSDL như các procedure và các trigger.
Oracle bao gồm một tập hợp hoàn thiện các sản phẩm xây dựng ứng dụng
và người dùng cuối được trang bị các giải pháp kỹ thuật thông tin hoàn hảo.
Các ứng dụng Oracle tương thích với hầu hết các hệ điều hành từ các máy
tính cá nhân đến các hệ thống xử lý song song lớn.
3.1.1. Vài nét về lịch sử Oracle:
Năm 1977, Larry Ellison, Bob Miner, và Ed Oates thành lập công ty
Relational Software Incorporated (RSI). Công ty này xây dựng một hệ quản
trị CSDL là Oracle và nó được phát triển bằng C và giao tiếp SQL. Ngay
sau đó, họ đưa ra phiên bản 1 như một nguyên mẫu.
56
Năm 1979 hệ quản trị CSDL Oracle phiên bản 2 được ra đời, lam việc
trên Digital PDP-11 chạy hệ điều hành RSX-11 và ngay sau đó chuyển
sang hệ thống DEC VAX.
Năm 1983 phiên bản 3 được giới thiệu và những thay đổi trong ngôn
ngữ SQL, mở rộng hiệu suất và các cải tiến khác. Oracle phiên bản 3 được
viết hoàn toàn bằng C, lúc này RSI được đổi tên thành Oracle Corporation.
Năm 1984 Oracle phiên bản 4 được phát hành, nó hỗ trợ cả hệ thống
VAX lẫn hệ điều hành IBM VM. Oracle 4 là phiên bản đầu tiên hợp nhất
tính nhất quán đọc dữ liệu.
Năm 1985 Oracle 5 được giới thiệu, nó là một mốc lịch sử vì nó đưa ra
công nghệ khách/chủ (client/server) vào thị trương với việc sử dụng
SQL*Net.
Năm 1988 Oracle đưa ra phiên bản 6, giới thiệu khoá ở mức thấp, cũng
như nhiều cải tiến về hiệu suất và mở rộng chức năng, bao gồm việc tạo ra
các số tuần tự và các thao tác ghi trễ. Lúc này, Oracle đã chạy được trên
nhiều nền và hệ điều hành khác nhau. Năm 1991 tuỳ chọn Oracle Parallel
Server đưa ra phiên bản 6.1 chạy trên môi trường DEC VAX, ít lâu sau
cũng được vào các môi trường khác.
Năm 1992 Oracle 7 được phát hành bao gồm các thay đổi kiến trúc về
bộ nhớ, CPU và tiện ích xuất/nhập. Oracle 7 là hệ quản trị CSDL quan hệ
đầy đủ chức năng nhất, và nó có nhiều ưu điểm nhờ tính năng dễ sử dụng,
công cụ SQL*DBA và ccác tiện ích khác.
Năm 1997 Oracle 8 được giới thiệu, thêm phần mở rộng đối tượng,
nhiều tính năng và công cụ quản trị mới. Tiếp theo là phiên bản Oracle
8.1.5 với tên gọi Oracle 8i hỗ trợ nhiều tính năng mới đặc biệt là các ứng
dụng CSDL internet.
57
Năm 2001 Phiên bản Oracle9i Release 1 (9.0.1) được đưa ra thị trường
và được cải tiến, bổ sung thêm một số chức năng, đặc điểm mới. Các đặc
điểm này đã làm cho việc quản lý database trở nên mềm dẻo, linh hoạt và
hiệu quả hơn. Và gần đây nhất là phiên bản Oracle 10g.
3.1.2. Các công cụ quản trị cơ sở dữ liệu Oracle
Oracle hiện tại đã cung cấp rất nhiều công cụ cho phép quản trị cơ sở
dữ liệu. Có thể kể ra sau đây một số công cụ cơ bản sau:
Công cụ Diễn giải
Server Manager
Line Mode
Công cụ quản trị cơ sở dữ liệu Oracle theo chế độ dòng
lệnh như start (khởi động), shutdown (dừng) database,...
SQL*Plus Line
Mode
Đây là một tiện ích sử dụng cho việc công quản trị như
starting up, shutting down, hoặc phục hồi database.
Oracle Enterprise
Manager
Là công cụ có giao diện đồ họa để thực hiện việc quản
trị, điều khiển và thay đổi một hoặc nhiều database.
SQL*Loader Tiện ích sử dụng để nạp các file bên ngoài vào trong các
bảng của Oracle .
Công cụ Export và
Import
Tiện ích sử dụng để exporting hoặc importing dữ liệu
theo khuôn dạng của Oracle.
Password File Tiện ích sử dụng để tạo file mật khẩu trong database.
58
3.2. CẤU TRÚC CƠ SỞ DỮ LIỆU
CSDL Oracle có một lớp vật lý và một lớp logic. Lớp vật lý bao gồm
tất cả các tập tin nằm trên đĩa, các thành phần của lớp logic ánh xạ dữ liệu
đến những phần của lớp logic.
Hình: Cấu trúc của Oracle
3.2.1. Tablespaces & Data files:
Một CSDL Oracle được lưu giữ trong một hoặc nhiều đơn vị nhớ
logic gọi là tablespace.
Mỗi tablespace được lưu giữ thành một hoặc nhiều file vật lý gọi là Data
file.
3.2.2. Schema Objects (đối tượng CSDL):
Schema Objects là cấu trúc logic lưu trữ dữ liệu. Schema Objects bao gồm
tables, views, sequences, synonyms, indexes, clusters, database links,
procedures, packages.
-Tables:
59
Là đơn vị nhỏ nhất của việc lưu trữ dữ liệu trong một CSDL Oracle.
Dữ liệu được lưu thành dòng và cột. Mỗi table được định nghĩa bằng 1
table name và tập các cột. Mỗi cột (field) có một tên cột, kiểu, và độ lớn.
Mỗi dòng là tập hợp những thông tin của các cột gọi là 1 record.
-Views:
View tương tự như Window mà qua đó dữ liệu trong table có thể được
xem hoặc biến đổi. Một view chỉ được lưu giữ dưới dạng câu lệnh
SELECT. View là một dạng table ảo nghĩa là table không thực sự tồn tại
mà chỉ xuất hiện để user xem. Một view tự nó không có dữ liệu mà sẽ
tương tác dữ liệu dựa vào các table cơ sở.
View giới hạn việc xâm nhập dữ liệu, cho phép các users nhập các câu truy
vấn đơn giản để lấy kết quả từ các câu truy vấn phức tạp thông qua 1 view,
cung cấp dữ liệu độc lập cho nhiều người sử dụng hay các chương trình
ứng dụng.
View được chia thành 2 loại: view đơn và view phức. View đơn là view chỉ
truy xuất dữ liệu từ 1 table và không chứa bất kỳ hàm hay GROUP dữ liệu
nào, ngược lại gọi là view phức.
-Synonyms:
Synonym là một bí danh của một table, view, sequence, procedure,
function hay một package. Synonym được sử dụng cho việc bảo mật và
tiện lợi trong truy xuất dữ liệu. Có 2 loại synonym: Public và Private.
-Index (chỉ mục):
Index của Bảng được tạo ra nhằm tăng tốc độ truy xuất, tăng hiệu quả
của tính duy nhất trên một hoặc một tập của cột.
60
Chỉ mục của Oracle có 2 mục đích chính là: tăng tốc độ lấy dữ liệu thông
qua khóa đặc thù (particular key), bắt buộc giá trị duy nhất trên cột, thường
là khóa chính.
3.2.3. Các kiểu dữ liệu
Oracle có các kiểu dữ liệu sau đây:
-CHAR(n): Kiểu ký tự có chiều dài cố định là n.
-VARCHAR2(n): Ký tự có chiều dài thay đổi đến n ký tự.
-NUMBER: số dấu chấm động với 38 ký số.
-NUMBER(n): số nguyên có n ký số.
-NUMBER(n,m): số thập phân có n ký số và m số lẻ.
-DATE: Kiểu ngày.
-LONG: Ký tự có chiều dài thay đổi tối đa 231-1, chỉ có 1 cột kiểu LONG
trong 1 table.
-RAW: tương đương VARCHAR2, nhưng dùng để lưu dữ liệu dạng byte
hay nhị phân như hình ảnh, âm thanh.
-LONGRAW: tương đương LONG, nhưng dùng để lưu dữ liệu dạng byte
hay nhị phân như hình ảnh, âm thanh.
61
3.2.4. Data Integrity (ràng buộc dữ liệu)
Dữ liệu phải thỏa mãn tập các luật được định nghĩa trước bởi người
quản trị CSDL.
Oracle cho phép định nghĩa các ràng buộc toàn vẹn cho các cột trong table
hay giữa các table với nhau để buộc chúng tuân theo một quy luật nào đó
nhằm mục đích: Kiểm tra ràng buộc toàn vẹn dữ liệu khi thêm vào, cập
nhật hay xóa dữ liệu; ngăn cản việc xóa 1 table khi có sự phụ thuộc của
table này vào các table khác. Oracle có các kiểu ràng buộc sau:
-NOT NULL: cột không được rỗng.
-UNIQUE: đánh dấu một cột hoặc một tập các cột như một khóa duy nhất,
không thể có 2 dòng trong table chứa cùng giá trị cho khóa này.
-PRIMARY KEY: tương tự như khóa đơn nhất, một khóa chính bắt buộc
sự duy nhất của một cột hay một tổ hợp các cột.
-FOREIGN KEY: Khóa ngoại cung cấp các luật ràng buộc tham khảo toàn
vẹn không những bên trong 1 table mà còn giữa các table.
-CHECK: ràng buộc này định nghĩa một điều kiện mà mỗi dòng phải thỏa
trong 1 table khi đưa 1 giá trị vào 1 cột đã được định nghĩa.
3.2.5. Từ điển dữ liệu
Từ điển dữ liệu là một trong những phần quan trọng nhất của Oracle
DBMS. Từ điển dữ liệu bao gồm một tập hợp các table và view cung cấp
các hướng dẫn tham khảo chỉ đọc về CSDL. Từ điển dữ liệu chứa đựng:
-Tên username của người sử dụng Oracle
62
-Các quyền và tập quyền được cấp.
-Tên của các đối tượng CSDL (table, view, index, synonym,…)
-Các ràng buộc được cấp cho table.
-Các thông tin cập nhật.
Từ điển dữ liệu được tạo ra khi ta tạo 1 CSDL. Từ đó bất cứ lúc nào CSDL
đang hoạt động thì từ điển dữ liệu cũng luôn được Oracle RDBMS cập
nhật.
Từ điển dữ liệu là một tham khảo đến toàn bộ CSDL người dùng. Đây là
một tài nguyên có giá trị đối với người dùng cuối, người thiết kế ứng dụng
và người quản trị CSDL. Các hoạt động của RDBMS cũng dựa trên từ điển
dữ liệu để lưu và kiểm tra các thông tin về CSDL.
3.3. DATA ACCESS
3.3.1. SQL & PL/SQL
63
SQL:
Một hệ quản trị CSDL cần có một ngôn ngữ cho phép các người sử
dụng truy xuất dữ liệu. Ngôn ngữ truy vấn có cấu trúc (SQL) là ngôn ngữ
được dùng trong hầu hết các hệ CSDL quan hệ.
-SQL là 1 ngôn ngữ tựa tiếng Anh.
-SQL là 1 ngôn ngữ phi thủ tục: bạn chỉ rõ thông tin gì bạn cần mà không
cần chỉ ra cách thực hiện như thế nào. Nói cách khác, SQL không yêu cầu
bạn chỉ phương pháp truy xuất dữ liệu.
-SQL xử lý các tập hợp mẫu tin hơn là một mẫu tin đơn lẻ ở 1 thời điểm.
Dạng chung nhất của tập các mẫu tin là một bảng.
-SQL có thể được dùng bởi nhiều người sử dụng bao gồm người quản trị
dữ liệu, các người lập trình ứng dụng, người quản lý, người dùng cuối.
-SQL cung cấp nhiều lệnh cho nhiều công việc khác nhau:
+truy vấn dữ liệu
+thêm vào, cập nhật và hủy bỏ các hàng của bảng
+tạo lập, thay đổi và hủy bỏ các đối tượng CSDL
+kiểm soát truy xuất đến CSDL và các đối tượng CSDL
+bảo đảm tính nhất quán dữ liệu.
PL/SQL: (Procedure Language)
64
PL/SQL là một mở rộng của SQL, kết hợp vào trong đó rất nhiều đặc tính
của các ngôn ngữ lập trình gần đây. Nó cho phép các thao tác dữ liệu và
các câu lệnh query SQL bao gồm các đoạn mã có cấu trúc khối và tính thủ
tục, làm cho PL/SQL thành một ngôn ngữ xử lý giao dịch mạnh mẽ.
Các ưu điểm của PL/SQL:
-Cấu trúc khối: chương trình có thể chia thành các khối luận lý.
-Điều khiển theo luồng: dùng các câu lệnh có điều kiện, lặp vòng, rẽ nhánh
để điều khiển luồng thủ tục của chương trình, quyết định khi nào SQL hoặc
tác vụ khác được thi hành.
-Tính cơ động: chương trình có thể chuyển đổi đến bất kỳ môi trường nào
mà Oracle và PL/SQL đã được hỗ trợ.
-Tính thống nhất
-Hiệu quả.
3.3.2. Transaction (giao dịch)
Giao dịch là một tác vụ thao tác CSDL bao gồm một loạt các thay đổi
trên một hay nhiều table.
Có 2 lớp: DML & DDL transaction
-DML transaction: gồm có một số lệnh DML mà Oracle xem như một thực
thể đơn hoặc một đơn vị công việc luận lý.
-DDL transaction: chỉ có thể chứa 1 lệnh DDL.
Đối với một giao dịch, hoặc là nó thay đổi CSDL một cách hoàn chỉnh
hoặc là không thực hiện bất kỳ sự thay đổi CSDL nào. Một giao dịch bắt
65
đầu khi thực hiện lệnh DML và DDL đầu tiên và kết thúc khi xảy ra 1 trong
các trường hợp sau:
+COMMIT / ROLLBACK
+Lệnh DDL được đưa ra
+Lỗi bên trong
+Thoát khỏi chương trình SQL * Plus
3.4. PROGRAMMATIC CONSTRUCTS
3.4.1. Procedures & Packages
Oracle cho phép truy xuất và xử lý thông tin CSDL bằng cách sử dụng
các đối tượng CSDL thủ tục, gọi là các đơn vị chương trình PL/SQL. Ví dụ
như ta có:Procedure, Function, Package.
-Oracle có thể thực hiện procedure và function giống như thực hiện một
câu lệnh SQL riêng lẻ. Procedure hoặc function là một đối tượng dữ liệu,
gồm tập hợp các câu lệnh, được lưu trong CSDL, được thực thi như một
unit để giải quyết một vấn đề nào đó hoặc thực hiện một số công việc có
liên quan.
-Procedure và function rất giống nhau, chỉ khác là function thì luôn luôn trả
về giá trị cho chương trình gọi nó, còn procedure thì không. Thông thường
người ta gọi chung procedure và function là "procedure".
-Procedure cung cấp một số thuận lợi trong các mặt sau:
+Security: bảo mật dữ liệu
+Perfomance:
66
+Memory allocation: sử dụng share memory
+Productivity: thuận tiện cho việc thiết kế application
+Integrity: bảo đảm được những ràng buộc và tính trong suốt
Package cung cấp phương pháp tập hợp các procedure, function như một
unit trong CSDL.
Package cung cấp một số thuận lợi trong các mặt sau:
+Nhóm các procedure và các variable
+phân biệt định nghĩa package và thân package
+khai báo các procedure, variable, constant và cursor
3.4.2. Database Triggers
Oracle cho phép định nghĩa các procedure, được tự động thực thi khi
có một câu lệnh INSERT, UPDATE hoặc DELETE được thực hiện vào
bảng. Các procedure này được gọi là các database trigger.
-Trigger tương tự như procedure, có thể chứa một số câu lệnh SQL và
PL/SQL, được thực thi như một unit và có thể gọi các procedure khác. Tuy
nhiên procedure và trigger khác nhau ở cách chúng được gọi. Trong khi
procedure được gọi bởi user hoặc application thì trigger được thực thi trực
tiếp bởi Oracle khi có 1 lệnh INSERT, UPDATE hoặc DELETE (đã có
trigger) được thực hiện, không phân biệt user nào đang nối kết hay
application nào đang thực thi.
-Một trigger có 3 phần chính:
67
+Triggering event hoặc statement: câu lệnh SQL, xác định khi nào
trigger được thực hiện (INSERT, UPDATE, DELETE).
+Trigger restriction: là một biểu thức logic, nếu có giá trị TRUE thì
trigger action sẽ được thực hiện, nếu có giá trị FALSE thì không thực hiện.
+Trigger action: gồm một số câu lệnh SQL và PL/SQL.
-Một trigger có thể có một trong 2 dạng: enabled hoặc disabled.
3.5. KHÔNG GIAN BẢNG (TABLESPACE) VÀ CÁC TẬP TIN DỮ
LIỆU
Cơ sở dữ liệu được chia thành một hay nhiều mẩu logic gọi là không
gian bảng (tablespace). Một không gian bảng sẽ bao gồm một hay nhiều tập
tin dữ liệu vật lý, nhưng một tập tin dữ liệu luôn luôn chỉ kết hợp với một
không gian bảng.
Hình: Các file dữ liệu và tablespace
Một tablespace được dùng để nhóm dữ liệu với nhau về mặt logic.
Việc phân đoạn các nhóm vào các tablespace khác nhau sẽ đảm bảo tính
bảo mật, hiệu quả và sự quản trị.
68
Trong quá trình tạo CSDL Oracle tự động tạo ra tablespace SYSTEM.
Tablespace SYSTEM là nơi chứa từ điển dữ liệu của toàn bộ CSDL. Từ
điển dữ liệu chứa thông tin về table, index, cluter…Tablespace SYSTEM là
vị trí mặc định của tất cả các đối tượng khi một CSDL được tạo ra. Mặc dù
CSDL nhỏ có thể gói gọn trong một tablespace SYSTEM, Oracle khuyên
rằng ít nhất nên tạo một tablespace riêng cho dữ liệu user. Điều này giúp ta
linh động hơn trong các tác vụ quản trị CSDL khác nhau và giảm sự tranh
chấp giữa các đối tượng từ điển và các đối tượng schema trên cùng một tập
tin dữ liệu.
Thông thường ta tạo ra nhiều tablespace để phân hoá các phần khác nhau
của CSDL. Để mở rộng một CSDL có thể thêm một tablespace mới, hoặc
thêm một tập tin dữ liệu vào một tablespace, hoặc tăng kích thước một tập
tin dữ liệu z. Khi thêm một tập tin dữ liệu khác vào một tablespace đã tồn
tại, ta tăng lượng không gian đĩa định vị cho tablespace tương ứng, ta cũng
có thể tạo một tablespace mới.
Kích thước của tablespace là kích thước của tập tin dữ liệu tạo nên
tablespace, kích thước của CSDL là kích thước tổng của các tablesapce tạo
nên CSDL.
69
3.6. QUÁ TRÌNH EXPORT VÀ IMPORT DỮ LIỆU BẢNG GIÁ
Bằng cách sử dụng các công cụ mà công ty chứng khoán sẽ Export
được dữ liệu của sở giao dịch chứng khoán trả về sau nhóm kỹ thuật chịu
trách nhiệm về cơ sở dữ liệu sẽ Import vào cơ sở dữ liệu của công ty và
hiển thị lên bảng giá
Cụ thể ở đây công ty Nam Việt đã sử dụng phần mềm chuyên dụng
QuestToadNavigator8.6 để Export dữ liệu trả về từ Sở và Import vào cơ
sở dữ liệu của công ty chứng khoán
Export dữ liệu:
“ Connected to: Oracle Database 10g Enterprise Edition Release
10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
Export done in AL32UTF8 character set and AL16UTF16 NCHAR
character set
About to export specified users ...
. exporting pre-schema procedural objects and actions
. exporting foreign function library names for user QUOTESTSC
. exporting PUBLIC type synonyms
. exporting private type synonyms
. exporting object type definitions for user QUOTESTSC
About to export QUOTESTSC's objects ...
70
. exporting database links
. exporting sequence numbers
. exporting cluster definitions
. about to export QUOTESTSC's tables via Conventional Path ...
. . exporting table FO_MATCH_ORDERS
98285 rows exported
. . exporting table FROOM_H
279 rows exported
. . exporting table MARKET_INFO
5 rows exported
. . exporting table MARKET_INFO_CHANGE
0 rows exported
. . exporting table MARKET_INFO_HIST
11 rows exported
. . exporting table MARKET_INFO_HIST_DETAILS
0 rows exported
. . exporting table PUT_AD
3 rows exported
71
. . exporting table PUT_AD_HIST
27 rows exported
. . exporting table PUT_EXEC
32 rows exported
. . exporting table PUT_EXEC_HIST
28 rows exported
. . exporting table SECURITIES_NAME
2104 rows exported
. . exporting table SEC_INFO
510 rows exported
. . exporting table SEC_INFO_CHANGE
. . exporting table SEC_INFO_HIST
979 rows exported
. . exporting table SYSVAR
52 rows exported
Export terminated successfully “
Import dữ liệu
72
“ Connected to: Oracle Database 10g Enterprise Edition
Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
Export file created by EXPORT:V10.02.01 via conventional
path
import done in AL32UTF8 character set and AL16UTF16
NCHAR character set
IMP-00025: for DBA export files, FROMUSER must be
specified with TOUSER option
IMP-00000: Import terminated unsuccessfully ”
Ví dụ: Import dữ liệu cho bảng Market_Info
“” INSERT INTO market_info
(FLOOR_CODE,DATE_NO,TRADING_DATE,CURRENT_
STATUS,TIME,TOTAL_TRADE,TOTAL_STOCK,TOTAL_
QTTY,TOTAL_VALUE,ADVANCES,DECLINES,PRIOR_
MARKET_INDEX,CHG_INDEX,PCT_INDEX,CURRENT_
INDEX,MARKET_INDEX,SESSION_NO,NOCHANGE,MA
RKET_STATUS)
VALUES
('10',NULL,'3-JUL-
2008',NULL,'09:00:04',3513,NULL,3071810,84517,111,15,41
929,9510,0.0468494421522912,42880,42880,'1',19,'O')
73
/
INSERT INTO market_info
(FLOOR_CODE,DATE_NO,TRADING_DATE,CURRENT_
STATUS,TIME,TOTAL_TRADE,TOTAL_STOCK,TOTAL_
QTTY,TOTAL_VALUE,ADVANCES,DECLINES,PRIOR_
MARKET_INDEX,CHG_INDEX,PCT_INDEX,CURRENT_
INDEX,MARKET_INDEX,SESSION_NO,NOCHANGE,MA
RKET_STATUS)
VALUES
('10',NULL,'3-JUL-
2008',NULL,'10:14:05',8659,NULL,8173550,217800,142,8,41
929,10630,0.0495837503967188,42992,42992,'2',7,'O')
/
INSERT INTO market_info
(FLOOR_CODE,DATE_NO,TRADING_DATE,CURRENT_
STATUS,TIME,TOTAL_TRADE,TOTAL_STOCK,TOTAL_
QTTY,TOTAL_VALUE,ADVANCES,DECLINES,PRIOR_
MARKET_INDEX,CHG_INDEX,PCT_INDEX,CURRENT_
INDEX,MARKET_INDEX,SESSION_NO,NOCHANGE,MA
RKET_STATUS)
VALUES
74
('10',NULL,'3-JUL-
2008',NULL,'10:59:05',9330,NULL,10776570,307236,146,6,4
1929,1076,0.0256624293448449,43005,43005,'3',5,'K')
/
INSERT INTO market_info
(FLOOR_CODE,DATE_NO,TRADING_DATE,CURRENT_
STATUS,TIME,TOTAL_TRADE,TOTAL_STOCK,TOTAL_
QTTY,TOTAL_VALUE,ADVANCES,DECLINES,PRIOR_
MARKET_INDEX,CHG_INDEX,PCT_INDEX,CURRENT_
INDEX,MARKET_INDEX,SESSION_NO,NOCHANGE,MA
RKET_STATUS)
VALUES
('02',653,'3-JUL-
2008',1,'11:00:25',3776,136,3537300,82934200000,126,9,118.
78,0,0,121.53,122.07,NULL,15,NULL)
/
commit
/
75
3.7. XÂY DỰNG BẢNG GIÁ
76
LỜI CAM ĐOAN
Đồ án tốt nghiệp “ Nghiên cứu và phát triển tính năng của bảng giá
chứng khoán trực tuyến” là do công sức của em cùng với sự chỉ bảo tận
tình của giáo viên hướng dẫn cũng như sự hợp tác, giúp đỡ nhiệt tình của
các anh chị phụ trách công ty cổ phần dịch vụ tư vấn và giải pháp phần
mềm Nam Việt, vì vậy em xin cam đoan một số điều sau:
+ Nội dung cơ bản của đồ án không hề sao chép từ các sản phẩm hay
bất kỳ đồ án nào khác.
+ Quy trình khảo sát diễn ra một cách thực tế tại công ty với sự giúp
đỡ nhiệt tình của lãnh đạo công ty
+ Các quy trình của hệ thống em xây dựng bám sát với quy trình thực
tế tại công ty
+ Nội dung của đồ án được hoàn thành từ công sức và những kiến
thức được trang bị cũng như tự tìm hiểu của em
Người cam đoan
Nguyễn Đức Minh
Các file đính kèm theo tài liệu này:
- NGHIÊN CỨU VÀ PHÁT TRIỂN TÍNH NĂNG CỦA BẢNG GIÁ CHỨNG KHOÁN TRỰC TUYẾN.pdf