Xây dựng ứng dụng “giao dịch chứng khoán” chạy trên điện thoại hệ điều hành Android
Trang 1MỤC LỤ
MỤC LỤC 1
Chương 1 MỞ ĐẦU 4
1.1 Lý do và mục đích chọn đề tài 4
1.2 Phạm vi nghiên cứu của đề tài 4
Chương 2 TỔNG QUAN 6
Chương 3 GIỚI THIỆU HỆ ĐIỀU HÀNH ANDROID 8
3.1 Giới thiệu về hệ điều hành Android 8
3.1.1 Android là gì? 8
3.1.2 Các tính năng Android cung cấp 8
3.2 Các thành phần cơ bản của một ứng dụng android 9
3.2.1 Activities 9
3.2.2 Service 11
3.2.3 Content Provider 12
3.2.4 Broadcast receiver 12
3.2.5 Intent 12
3.3 Các đối tượng được sử dụng trong ứng dụng 13
Chương 4 NGHIỆP VỤ CHỨNG KHOÁN 14
4.1 Thị trường chứng khoán 14
4.1.1 Khái niệm 14
4.1.2 Chức năng của thị trường chứng khoán 14
4.1.2.1 Huy động vốn đầu tư cho nền kinh tế 14
4.1.2.2 Cung cấp môi trường đầu tư cho công chúng 15
Trang 24.1.2.3 Tạo tính thanh khoản cho các chứng khoán 15
4.1.2.4 Đánh giá hoạt động của doanh nghiệp 15
4.1.3 Các thành phần tham gia thị trường chứng khoán 15
4.1.3.1 Nhà phát hành 15
4.1.3.2 Nhà đầu tư 16
4.1.3.3 Các công ty chứng khoán 16
4.1.3.4 Các tổ chức liên quan đến thị trường chứng khoán 16
4.2 Chứng khoán 17
4.2.1 Khái niệm 17
4.2.2 Các đặc tính của hàng hóa chứng khoán 17
4.2.2.1 Tính thanh khoản 17
4.2.2.2 Tính rủi ro 17
4.2.2.3 Tính sinh lời 18
4.3 Giao dịch chứng khoán 18
4.3.1 Quy định chung trong giao dịch 18
4.3.2 Quy định giao dịch tại Sở Giao Dịch Chứng Khoán TP.HCM(HSX) 19
4.3.2.1 Thời gian giao dịch: 19
4.3.2.2 Phương thức khớp lệnh: 20
4.3.2.3 Nguyên tắc khớp lệnh: 20
4.3.2.4 Đơn vị giao dịch và đơn vị yết giá: 21
4.3.2.5 Biên độ giao động giá: 21
4.3.2.6 Lệnh giao dịch: 23
4.3.2.7 Hủy lệnh giao dịch: 24
4.3.2.8 Thời gian thanh toán: 24
4.3.2.9 Giao dịch của nhà đầu tư nước ngoài: 24
Trang 34.3.3 Quy định giao dịch tại Sở Giao Dịch Chứng Khoán Hà Nội(HNX) 25
4.3.3.1 Thời gian giao dịch: 25
4.3.3.2 Phương thức khớp lệnh: 25
4.3.3.3 Nguyên tắc khớp lệnh: 26
4.3.3.4 Đơn vị giao dịch và đơn vị yết giá: 26
4.3.3.5 Giá tham chiếu và biên độ giao động giá: 27
4.3.3.6 Hủy sửa lệnh giao dịch: 28
4.4 Giao dịch chứng khoán 29
Chương 5 ỨNG DỤNG 30
5.1 Sơ lược cách gửi và nhận dữ liệu 30
5.2 Lưu dữ liệu trong Android 36
5.3 Vận hành chương trình 39
Chương 6 CÀI ĐẶT MÔI TRƯỜNG LẬP TRÌNH ANDROID 52
6.1 Download Android SDK 52
6.2 Tích hợp ADT vào Eclipse 53
6.3 Tạo emulator 60
Chương 7 KẾT LUẬN 66
6.1 Kết quả đạt được của đề tài 66
6.2 Hạn chế và hướng phát triển của đề tài 66
6.2.1 Hạn chế 66
6.2.2 Hướng phát triển 67
DANH MỤC TÀI LIỆU THAM KHẢO 68
Trang 4Chương 1 MỞ ĐẦU
1.1 Lý do và mục đích chọn đề tài
Ngày nay, sự phát triển công nghệ thông tin gắn liền với sự phát triển nềnkinh tế toàn cầu Trong nền kinh tế thị trường chứng khoán, nó là công cụ hỗ trợđắc lực cho các nhà đầu tư và doanh nghiệp Các nhà đầu tư cần biết thông tinhiện tại của mã chứng khoán mà họ quan tâm Các doanh nghiệp có mã chứngkhoán được niêm yết trên thị trường chứng khoán phải cập nhật liên tục tình hìnhdoanh nghiệp cho các nhà đầu tư Các nhà đầu tư sẽ theo dõi thông tin chứngkhoán mọi lúc mọi nơi thông qua phương tiện truyền thông
Càng ngày càng có nhiều người theo dõi thông tin chứng khoán trên các thiết
bị di động Smartphone ngày càng rẻ và trở nên phổ biến giúp người dùng đọcthông tin trên điện thoại tiện lợi và nhanh chóng hơn Khi ở chỗ làm họ vào cáctrang web chứng khoán bằng desktop hay laptop, chỉ khi đang di chuyển trênđường hay lúc không làm việc mới dùng điện thoại để truy cập
Một ứng dụng xem thông tin chứng khoán và đặt lệnh nhanh trên điện thoại
là điều cần thiết
1.2 Phạm vi nghiên cứu của đề tài
Đề tài được tập trung vào ba nội dung chính:
1 Tìm hiểu lập trình Android
2 Tìm hiểu về đôi nét về thị trường chứng khoán
3 Xây dựng ứng dụng “giao dịch chứng khoán” chạy trên điện thoại hệ điều hành Android
Trong nội dung thứ 1, em tìm hiểu về các khái niệm, nền tảng( hay còn gọi
là các APIs) để xây dựng các ứng dụng trên hệ điều hành android dành cho điệnthoại Thiết lập môi trường để có thể lập trình ngay trên hệ điều hành windows
Trang 5Nội dung thứ 2 là tìm hiểu về khái niệm thị trường chứng khoán, cách thứcgiao dịch, sự ra đời cũng như ý nghĩa của nó trong nền kinh tế hiện đại.
Nội dung thứ 3, xây dựng một ứng dụng giao dịch chứng khoán trên điệnthoại chạy hệ điều hành Android
Trang 6Chương 2 TỔNG QUAN
Hiện nay trên thị trường xuất hiện nhiều trang web, phần mềm giúp nhà đầu tưtheo dõi chứng khoán, đặt lệnh, giao dịch trực tuyến nhanh chóng và tiện lợi Cùngvới sự phát triển của công nghệ trong những năm gần đây, mà điển hình là sự ra đờicủa chiếc điện thoại thông minh( smartphone) thì những phần mềm về chứng khoánchạy trên smartphone xuất hiện nhiều hơn Sự bảo mật, mức độ an toàn và tốc độtruy cập ngày càng được cải thiện Vấn đề lưu dữ liệu ngay trên smartphone để phục
vụ cho việc đánh giá, phân tích tình hình thị trường, mức độ giao dịch của mãchứng khoán,… cũng được chú ý đến
Có nhiều hệ điều hành cho smartphone như Android, iOS, Windows Phone.Đối với đề tài thực tập tốt nghiệp này em chọn xây dựng ứng dụng giao dịch chứngkhoán trên nền tảng Android Một số mảng mà đề tài sẽ tập trung nghiên cứu như:
1 Cách thức xây dựng một ứng dụng chạy trên Android
2 Tổ chức lưu trữ dữ liệu trên Android bằng cơ sở dữ liệu SQLite
3 Cách gọi web service sử dụng bộ thư viện mã nguồn mở Ksoap2
Vì mảng đề tài liên quan đến chứng khoán, nên dữ liệu phải là dữ liệu thật,được lấy từ sở giao dịch chứng khoán về Để lấy được dữ liệu này về thiết bịandroid, cần phải xây dựng một Web Service để chương trình có thể kết nối đến lấy
dữ liệu Tất cả phương diện này, em được bên Công Ty OTS hổ trợ, bao gồm WebService, cơ sở dữ liệu, nghiệp vụ chứng khoán
Mô hình sau sẽ giải thích rõ quá trình lấy dữ liệu từ sở giao dịch chứng khoánđưa lên điện thoại android
Trang 7Sở giao dịch
Database
Hình 1 Mô hình lấy dữ liệuMỗi công ty chứng khoán hoạt động sẽ đăng ký với sở giao dịch chứng khoán
để lấy tập tin dữ liệu Tập tin dữ liệu này sẽ được định dạng theo một chuẩn chung.Cần phải có một chương trình Updater để có thể đọc được tập tin dữ liệu đó đưa vào
cơ sở dữ liệu của công ty Sau đó xây dựng một Web Service đọc dữ liệu trả về chocác ứng dụng khác
Trang 8Chương 3 GIỚI THIỆU HỆ ĐIỀU HÀNH ANDROID
3.1 Giới thiệu về hệ điều hành Android
3.1.1 Android là gì?
Android là hệ điều hành dành cho các thiết bị di động cầm tay như điệnthoại, máy tính bảng Nó được thiết kế trên nhân linux 2.6 dành cho các dịch vụ hệthống cốt lõi như bảo mật, quản lý bộ nhớ, quản lý tiến trình, ngăn xếp mạng và môhình điều khiển Lập trình viên muốn xây dựng ứng dụng trên nền tảng Android thìphải sử dụng bộ Android SDK Android SDK cung cấp các công cụ và APIs để giúplập trình viên xây dựng ứng dụng trên nền tảng Android dùng ngôn ngữ lập trìnhjava
3.1.2 Các tính năng Android cung cấp
Cho phép tái sử dụng và thay thế các thành phần có sẳn như cácframework
Tối ưu hóa vùng nhớ trên thiết bị di động
Tích hợp trình duyệt ngay trên thiết bị di động
Tối ưu hóa đồ họa bởi thư viện đồ họa 2D tùy chọn, đồ họa 3D dựa trênđặc điểm kỹ thuật OpenGL ES 1.0
Có cơ sở dữ liệu SQLite để phục vụ việc lưu trữ dữ liệu có cấu trúc
Hỗ trợ một số định dạng thông dụng của âm thanh, video và hình ảnh(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)
Hỗ trợ các kiểu kết nối mạng thông dụng như Bluetooth, EDGE, 3G, vàWifi
Camera, định vị GPS…
Hỗ trợ đầy đủ cho môi trường lập trình tốt nhất bao gồm một bộ giả lậpEmulator, các công cụ debug, quản lý hiệu suất và bộ nhớ Cách tích hợptất cả vào Eclipse IDE để lập trình
Trang 93.2 Các thành phần cơ bản của một ứng dụng android
3.2.1 Activities
Activities là một giao diện màn hình tương tác với người sử dụng Tại mộtthời điểm thì chỉ có duy nhất một Activity được tương tác với người sử dụng Ví dụmột ứng dụng email có những Activity riêng như Activity hiển thị danh sách cácemail mới, một Activity soạn email, một Activity để đọc email… Mặc dù cácActivity này cùng gắn kết với nhau tạo nên một ứng dụng email, nhưng nó hoạtđộng độc lập với nhau Vì thế, các ứng dụng khác cũng có thể truy xuất đến cácActivity này nếu ứng dụng email cho phép Ví dụ như một ứng dụng chụp ảnh cóthể mượn một Activity trong ứng dụng email để soạn email gửi hình ảnh
Hệ điều hành Android quản lý Activity theo dạng ngăn xếp( Task) Khi mộtActivity mới được khởi tạo nó sẽ được xếp lên đầu của ngăn xếp, và đưa Activity
đó ở trạng thái đang hoạt động Các Activity trước đó sẽ bị tạm dừng và chỉ đượchoạt động trở lại nếu Activity mới được giải phóng
Một Activity bao gồm 3 trạng thái:
Active: Activity đang hiển thị trên màn hình, có thể tương tác với người
sử dụng
Pause: Activity vẫn hiển thị nhưng không thể tương tác Ví dụ mộtActivity mới xuất hiện có giao diện đè lên giao diện của Activity cũ.Nhưng giao diện mới này nhỏ hơn giao diện của Activity cũ, vì thế tavẫn có thể thấy một phần giao diện của Activity cũ, nhưng không thểtương tác với Activity cũ
Stop: Một Activity sẽ bị stop nếu có một Activity mới thay thế hoàntoàn Activity này
Khi hệ thống bị thiếu bộ nhớ, buộc nó phải giải phóng các tiến trình theonguyên tắc ưu tiên Các Activity đang ở trạng thái Stop hoặc Pause có thể sẽ bị giải
Trang 10phóng Vì thế, khi các Activity này hiển thị lại, nó sẽ được khởi động lại hoàn toàn
và phục hồi lại trạng thái trước đó
Mỗi một Activity sẽ có một vòng đời sống, tất cả được quản lý bởi một sốphương thức sau:
onCreate(): Gọi khi một Activity lần đầu tiên được khởi tạo
onStart(): Gọi trước khi một Activity hiển thị
onRestart(): Được gọi khi một Activity đang dừng, ngay trước khi nóđược bắt đầu lại
onResume(): Được gọi trước khi một Activity sẳn sàng tương tác vớingười sử dụng
onPause(): Được gọi khi một Activity khác chen ngang
onStop(): Được gọi khi một Activity không còn hiển thị
onDestroy(): Được gọi khi cần hủy một Activity
Hình sau thể hiện vòng đời của một Activity:
Trang 11Hình 2 Mô hình vòng đời Activity
3.2.2 Service
Service là một thành phần chạy dưới nền, có thời gian thực hiện lâu hoặc làthực hiện các công việc từ xa Service không cung cấp giao diện người dùng Ví dụ,
Trang 12một service có thể chạy ngầm ở dưới nền để chơi nhạc trong khi người dùng thì mởcác ứng dụng khác để làm việc, hoặc nó có thể lấy dữ liệu từ network về mà khôngcần ngăn chặn các tương tác của người dùng với các Activity khác
3.2.3 Content Provider
Một Content Provider là một bộ chia sẻ dữ liệu giữa các ứng dụng Chúng ta
có thể lưu trữ dữ liệu vào tập tin hệ thống, lưu vào cơ sở dữ liệu SQLite, lưu trênweb hay bất cứ nơi nào mà ứng dụng có thể truy xuất được Thông qua ContentProvider, các ứng dụng khác có thể truy vấn hoặc thậm chí chỉnh sửa dữ liệu( nếuContent Provider cho phép) Ví dụ, hệ điều hành Android cung cấp một ContentProvider để quản lý thông tin liên lạc của người dùng Như vậy, bất kỳ ứng dụngnào có những quyền được cấp phát thích hợp, nó có thể truy vấn để đọc và chỉnhsửa thông tin của một người sử dụng
3.2.4 Broadcast receiver
Broadcast receiver là một thành phần thu phát các tín hiệu để thông báo đếntoàn bộ hệ thống Có nhiều tín hiệu thu phát từ hệ thống như tín hiệu màn hình đãtắt, pin yếu, chụp ảnh… Các ứng dụng cũng có thể thu phát các tín hiệu, ví dụ nhưmột tiến trình tải dữ liệu về thiết bị, sau khi tải xong, nó sẽ gửi tín hiệu đến các ứngdụng liên quan rằng dữ liệu đã sẳn sàng sử dụng Broadcast service sẽ không hiểnthị lên màn hình, nhưng ta có thể tạo ra một thanh trạng thái để thông báo đến ngườidùng đang có sự kiện thu phát tín hiệu
3.2.5 Intent
Intent là một nền tảng để tạo các thông báo Intent được sử dụng nhằm để gửi
đi các thông báo tạo một Activity hay một Service Có thể truyền tải dữ liệu giữacác Activity thông qua Intent này
Trang 133.3 Các đối tượng được sử dụng trong ứng dụng
Trong ứng dụng android sử dụng Activity để hiển thị giao diện Một Activitychứa các View theo dạng cấu trúc cây Có thể nhóm nhiều View với nhau tạo thànhmột GroupView
Có thể kế đến một vài View/GroupView hay sử dụng trong ứng dụng xembảng giá chứng khoán như sau:
TextView: Dùng để hiển thị câu thông báo, tiêu đề, hay một đoạn chữnhỏ
Button: Dành cho người sử dụng gửi đi một lệnh yêu cầu một tác vụ gì
đó bằng cách click vào đối tượng này
CheckBox: Dùng để thay đổi thuộc tính của một đối tượng có miền giátrị là True hoặc là False
Spinner: Giống như
SeekBar: Dùng để hiển thị trạng thái của một tiến trình
AutocompleteTextView: Dùng để hiển thị những từ gợi ý khi ngườidùng gõ từng ký tự vào đối tượng này
LinearLayout: là một Layout có thể chứa các Layout con, các View,hoặc GroupView khác
TableLayout Là một lưới Table, hiển thị các dòng và cột Mỗi dòng vàcột có thể chứa các View khác
TableRow Là một phần của TableLayout
RelativeLayout: Là một đối tượng cực kỳ đặc biệt, nó sắp xếp vị trí chotừng Layout, View hoặc GroupView
ListView: Là một đối tượng dùng để hiển thị danh sách các item theokiểu liệt kê
Và còn nhiều đối tượng khác
Trang 14Chương 4 NGHIỆP VỤ CHỨNG KHOÁN
4.1 Thị trường chứng khoán
4.1.1 Khái niệm
Thị trường chứng khoán là một bộ phận của thị trường vốn dài hạn, thực hiện
cơ chế chuyển vốn trực tiếp từ nhà đầu tư sang nhà phát hành, qua đó thực hiệnchức năng của thị trường tài chính là cung ứng nguồn vốn trung và dài hạn cho nềnkinh tế
Thị trường chứng khoán chia làm 2 loại, thị trường chứng khoán tập trung vàthị trường chứng khoán phi tập trung
Tính tập trung ở đây là muốn nói đến việc các giao dịch được tổ chức tậptrung theo một địa điểm vật chất Hình thái điển hình của thị trường chứng khoántập trung là Sở giao dịch chứng khoán ( Stock exchange) Tại Sở giao dịch chứngkhoán (SGDCK), các giao dịch được tập trung tại một địa điểm, các lệnh đượcchuyển tới sàn giao dịch và tham gia vào quá trình ghép lệnh để hình thành nên giágiao dịch
Thị trường chứng khoán phi tập trung còn gọi là thị trường OTC (over thecounter) Trên thị trường OTC, các giao dịch được tiến hành qua mạng lưới cáccông ty chứng khoán phân tán trên khắp quốc gia và được nối với nhau bằng mạngđiện tử Giá trên thị trường này được hình thành theo phương thức thoả thuận
4.1.2 Chức năng của thị trường chứng khoán
4.1.2.1 Huy động vốn đầu tư cho nền kinh tế
Khi các nhà đầu tư mua chứng khoán do các công ty phát hành, số tiền nhànrỗi của họ được đưa vào hoạt động sản xuất kinh doanh và qua đó góp phần mởrộng sản xuất xã hội Thông qua TTCK, Chính phủ và chính quyền ở các địa
Trang 15phương cũng huy động được các nguồn vốn cho mục đích sử dụng và đầu tư pháttriển hạ tầng kinh tế, phục vụ các nhu cầu chung của xã hội
4.1.2.2 Cung cấp môi trường đầu tư cho công chúng
Thị trường chứng khoán cung cấp cho công chúng một môi trường đầu tư lànhmạnh với các cơ hội lựa chọn phong phú Các loại chứng khoán trên thị trường rấtkhác nhau về tính chất, thời hạn và độ rủi ro, cho phép các nhà đầu tư có thể lựachọn loại hàng hoá phù hợp với khả năng, mục tiêu và sở thích của mình
4.1.2.3 Tạo tính thanh khoản cho các chứng khoán
Nhờ có thị trường chứng khoán các nhà đầu tư có thể chuyển đổi các chứngkhoán họ sở hữu thành tiền mặt hoặc các loại chứng khoán khác khi họ muốn Khảnăng thanh khoản là một trong những đặc tính hấp dẫn của chứng khoán đối vớingười đầu tư Đây là yếu tố cho thấy tính linh hoạt, an toàn của vốn đầu tư Thịtrường chứng khoán hoạt động càng năng động và có hiệu quả thì tính thanh khoảncủa các chứng khoán giao dịch trên thị trường càng cao
4.1.2.4 Đánh giá hoạt động của doanh nghiệp
Thông qua chứng khoán, hoạt động của các doanh nghiệp được phản ánh mộtcách tổng hợp và chính xác, giúp cho việc đánh giá và so sánh hoạt động của doanhnghiệp được nhanh chóng và thuận tiện, từ đó cũng tạo ra một môi trường cạnhtranh lành mạnh nhằm nâng cao hiệu quả sử dụng vốn, kích thích áp dụng côngnghệ mới, cải tiến sản phẩm
4.1.3 Các thành phần tham gia thị trường chứng khoán
4.1.3.1 Nhà phát hành
Là các tổ chức thực hiện huy động vốn thông qua thị trường chứng khoán dướihình thức phát hành các chứng khoán
Trang 164.1.3.3 Các công ty chứng khoán
Là những công ty hoạt động trong lĩnh vực chứng khoán, có thể đảm nhận mộthoặc nhiều trong số các nghiệp vụ chính là môi giới, quản lý quỹ đầu tư, bảo lãnhphát hành, tư vấn đầu tư chứng khoán và tự doanh
4.1.3.4 Các tổ chức liên quan đến thị trường chứng khoán
Uỷ ban chứng khoán Nhà nước: là cơ quan thuộc Chính phủ thực hiện chứcnăng quản lý nhà nước đối với thị trường chứng khoán ở Việt nam
Sở giao dịch chứng khoán: là cơ quan thực hiện vận hành thị trường và banhành những quyết định điều chỉnh các hoạt động giao dịch chứng khoán trên
Sở phù hợp với các quy định của luật pháp và Ủy ban chứng khoán
Công ty dịch vụ máy tính chứng khoán: là tổ chức phụ trợ, phục vụ các giaodịch chứng khoán
Công ty đánh giá hệ số tín nhiệm: là công ty chuyên cung cấp dịch vụ đánhgiá năng lực thanh toán các khoản vốn gốc và lãi đúng thời hạn và theonhững điều khoản đã cam kết của công ty phát hành đối với một đợt pháthành cụ thể
Trang 174.2 Chứng khoán
4.2.1 Khái niệm
Chứng khoán: là hàng hoá trên thị trường chứng khoán bao gồm: cổ phiếu,trái phiếu và một số loại khác như quyền mua cổ phiếu mới, hợp đổng tươnglai, hợp đổng quyền lựa chọn, chứng chỉ quỹ đầu tư
Cổ phiếu: Cổ phiếu là chứng từ xác nhận quyền sở hữu và lợi ích hợp phápcủa người sở hữu cổ phiếu đối với tài sản hoặc vốn của công ty cổ phần Khi
sở hữu cổ phiếu, bạn sẽ trở thành cổ đông của công ty đó
4.2.2 Các đặc tính của hàng hóa chứng khoán
4.2.2.1 Tính thanh khoản
Tính thanh khoản của một loại chứng khoán cũng như của một tài sản là khảnăng chuyển chúng thành tiền mặt và khôngbị sụt giảm về giá trị tiền tệ của chúng Việc chuyển đổi phải nhanh chóng và phí chuyển đổi ở đây phải thấp Nhưvậy nếu chứng khoán nào có thể dễ dàng đổi thành tiền mặt nhanh chóng và phíchuyển đổi thấp thì sẽ có tính thanh khoản cao và ngược lại
Tính thanh khoản của một chứng khoán biến đổi theo sự ổn định giá của nótrênthị trường Vì vật ta có thể nói tính thanh khoản của trái phiếu kho bạc cao hơn
cổ phiếu của một công ty vì trái phiếu kho bạc rất dễ dàng đổi ra tiền mặt với mứcphí tổn thấp
Trang 18 Rủi ro thị trường: Là rủi ro liên quan đến sự biến động giá của thị trường.Giá của các loại cổ phiếu trái phiếu trên thị trường có thể tăng giảm phụthuộc vào nhiều nhân tố như lạm phát, tình hình kinh doanh công ty, các sựkiện bất thường
4.2.2.3 Tính sinh lời
Ðối với các chứng khoán ngắn hạn, lãi suất được tính bằng số tiền kiếm được
từ tài sản này chia cho số tiền bỏ ra mua nó Thường lãi suất được tính trên cơ sởhàng năm và được gọi là hoa lợi hiện hành
Ðối với chứng khoán dài hạn, người ta áp dụng một loại hoa lợi khác gọi là lờikhi đáo hạn Khái nệm này đề cập đến các khoản hay lỗ trên vốn được thực hiện vàolúc chứng khoán đó đáo hạn, cũng chính là lúc mệnh giá của chứng khoán này đượchoàn trả
4.3 Giao dịch chứng khoán
4.3.1 Quy định chung trong giao dịch
Nhà đầu tư được thực hiện các giao dịch ngược chiều( mua, bán) cùng mộtloại chứng khoán trong cùng một ngày giao dịch trên cùng một tài khoản giao dịch
mở tại một công ty chứng khoán Nhà đầu tư có thể sử dụng tài khoản mở tại công
ty chứng khoán A để thực hiện giao dịch ( mua và bán cùng loại chứng khoán )trong ngày giao dịch và ngày hôm sau sử dụng tài khoản mở tại công ty chứngkhoán B để thực hiện lệnh mua bán trong ngày Hoặc cùng một ngày giao dịch cóthể sử dụng nhiều tài khoản khác nhau mở tại các công ty chứng khoán khác nhau
để giao dịch từng loại chứng khoán
Nhà đầu tư không được phép thực hiện giao dịch mà không dẫn đến thay đổiquyền sở hữu chứng khoán Cụ thể:
Nhà đầu tư khi đặt lệnh mua, bán cùng một loại chứng khoán trongngày giao dịch không được dẫn đến trường hợp các lệnh đối ứng ngượcchiều cho cùng loại chứng khoán đó khớp với nhau( điều đó có nghĩa là
Trang 19nhà đầu tư đã mua và bán với chính mình, không dẫn đến việc thay đổiquyền sở hữu số chứng khoán đã đặt lệnh)
Trong từng đợt khớp lệnh định kỳ xác định giá đóng/mở cửa tạiSGDCK TP HCM, việc cùng một lúc đặt lệnh mua và bán ngược chiềucùng một loại chứng khoán là không được phép
Trong đợt khớp lệnh liên tục tại SGDCK Tp HCM hoặc giao dịch tạiSGDCK Hà Nội, việc đặt lệnh mua bán cùng phiên cùng một loạichứng khoán chỉ được thực hiện nếu lệnh mua/bán chứng khoán lần đầu
đã khớp hoặc hủy phần chưa khớp
Nhà đầu tư không được sử dụng các tài khoản khác nhau của mình mởtại các công ty chứng khoán để mua, bán cùng loại chứng khoán trongngày giao dịch( vì có thể dẫn đến các tài khoản khác nhau khớp lệnhvới nhau nhưng do một nhà khách hàng đứng tên sở hữu các tài khoản
đó hoặc được khách hàng ủy quyền cho người khác giao dịch, nên dẫnđến không thực sự chuyển quyền sở hữu), ngoại trừ trường hợp giảichấp trên tài khoản của nhà đầu tư được thực hiện theo thỏa thuận trước
đó giữa công ty chứng khoán và nhà đầu tư
4.3.2 Quy định giao dịch tại Sở Giao Dịch Chứng Khoán TP.HCM(HSX) 4.3.2.1 Thời gian giao dịch:
Phương thức giao dịch Giờ giao dịch
Cổ phiếu, chứng chỉ quỹ đầu tư
Trang 20Giao dịch thỏa thuận 13h00’ đến 14h15’
Trái phiếu
Giao dịch thỏa thuận 9h00’ đến 11h30’
Nghỉ giữa phiên 11h30’ đến 13h00’
Giao dịch thỏa thuận 13h00’ đến 14h15’
Lệnh có giá trị trong suốt thời gian giao dịch, không hết hạn trong thời giannghỉ giữa phiên
4.3.2.2 Phương thức khớp lệnh:
Khớp lệnh định kỳ là phương thức giao dịch được thực hiện trên cơ sở so khớpcác lệnh mua và lệnh bán chứng khoán tại một thời điểm xác định Nguyên tắc xácđịnh giá thực hiện như sau:
Là mức giá thực hiện đạt khối lượng giao dịch lớn nhất
Nếu có nhiều mức giá thỏa mãn điều kiện ở trên thì mức giá trùng hoặcgần nhất với giá thực hiện của lần khớp lệnh gần nhất sẽ được chọn Khớp lệnh liên tục là phương thức giao dịch được thực hiện trên cơ sở so khớpcác lệnh mua và lệnh bán chứng khoán ngay khi lệnh được nhập vào hệ thống giaodịch
4.3.2.3 Nguyên tắc khớp lệnh:
Ưu tiên về giá:
Lệnh mua với mức giá cao hơn được ưu tiên thực hiện trước
Lệnh bán với mức giá thấp hơn được ưu tiên thực hiện trước
Ưu tiên về thời gian:
Trường hợp các lệnh mua hoặc lệnh bán có cùng mức giá thì lệnh nhậpvào hệ thống giao dịch trước được ưu tiên thực hiện trước
Trang 214.3.2.4 Đơn vị giao dịch và đơn vị yết giá:
Đơn vị giao dịch:
Đơn vị giao dịch khớp lệnh lô chẵn: 10 cố phiếu, chứng chỉ quỹ đầu tư
Khối lượng giao dịch thỏa thuận: từ 20.000 cổ phiếu, chứng chỉ quỹ trởlên
Không quy định đơn vị giao dịch đối với giao dịch thỏa thuận
Giao dịch cổ phiếu có khối lượng từ 01 đến 09 cổ phiếu (lô lẻ) đượcthực hiện trực tiếp giữa người đầu tư với công ty chứng khoán, giá thựchiện được xác định bằng 90% giá tham chiếu của ngày ký kết Hợpđồng
Không quy định đơn vị yết giá đối với giao dịch thỏa thuận trái phiếu, còn đốivới phương thức khớp lệnh thì đơn vị yết giá như sau:
Giá cổ phiếu (Đ) Đơn vị yết giá(Đ)
Từ 100.000 trở lên 1.000
4.3.2.5 Biên độ giao động giá:
Biên độ dao động giá quy định trong ngày đối với giao dịch cổ phiếu vàchứng chỉ quỹ đầu tư là ± 5%
Không áp dụng biên độ giao động giá đối với giao dịch trái phiếu
Giá:
o Giá trần = Giá tham chiếu x (100% + Biên độ dao động)
o Giá sàn = Giá tham chiếu x (100% - Biên độ dao động)
Đối với cổ phiếu, chứng chỉ quỹ có mức giá trần-sàn sau khi điều chỉnhbiên độ dao động ± 5% nhưng giá trần/ sàn vẫn bằng mức giá thamchiếu sẽ điều chỉnh như sau:
Trang 22o Giá trần điều chỉnh = Giá tham chiếu + một đơn vị yết giá
o Giá sàn điều chỉnh = Giá tham chiếu - một đơn vị yết giá
Trường hợp giá trần và sàn của cổ phiếu, chứng chỉ quỹ sau khi điềuchỉnh theo cách trên bằng không (0), giá trần và sàn sẽ được điều chỉnhnhư sau:
o Giá trần điều chỉnh = Giá tham chiếu + một đơn vị yết giá
o Giá sàn điều chỉnh = Giá tham chiếu
Đối với cổ phiếu, chứng chỉ quỹ mới niêm yết, trong ngày giao dịchđầu tiên, giá giao dịch được biến động trong +/-20% giá giao dịch dựkiến Tổ chức niêm yết và công ty chứng khoán làm tư vấn niêm yết(nếu có) phải đưa ra mức giá giao dịch dự kiến để tính giá tham chiếucho cổ phiếu, chứng chỉ quỹ trong ngày giao dịch đầu tiên Nếu trong
03 ngày giao dịch đầu tiên, cổ phiếu, chứng chỉ quỹ mới niêm yết vẫnchưa có giá đóng cửa, tổ chức niêm yết phải được xác định giá giaodịch dự kiến
Đối với cổ phiếu, chứng chỉ quỹ được giao dịch trở lại sau khi tạmdừng giao dịch trên 90 ngày, biên độ dao động giá trong ngày giao dịchđầu tiên sẽ được HSX xác đinh sau khi có sự chấp thuận của SSC
Giá đóng cửa trong ngày giao dịch đầu tiên sau khi được giao dịch trởlại sẽ là giá tham chiếu cho ngày giao dịch kế tiếp Biên độ dao độnggiá 5% được áp dung cho ngày giao dịch kế tiếp
Nếu trong 03 ngày đầu tiên sau khi giao dịch trở lại, cổ phiếu, chứngchỉ quỹ được giao dịch trở lại vẫn chưa có giá đóng cửa, HSX sẽ xemxét điều chỉnh biên độ dao động giá của cổ phiếu, chứng chỉ quỹ saukhi có sự chấp thuận của SSC
4.3.2.6 Lệnh giao dịch:
Lệnh giao dịch tại mức giá khớp lệnh xác định giá mở cửa (Viết tắt ATO):
Là lệnh đặt mua hoặc đặt bán chứng khoán tại mức giá mở cửa
Trang 23 Lệnh ATO được ưu tiên trước lệnh giới hạn trong khi so khớp lệnh
Lệnh ATO được nhập vào hệ thống giao dịch trong thời gian khớp lệnhđịnh kỳ để xác định giá mở cửa và sẽ tự động tự hủy bỏ sau thời điểmxác định giá mở cửa nếu lệnh không được thực hiện hoặc không đượcthực hiện hết
Lệnh giới hạn là lệnh mua hoặc bán chứng khoán tại một mức giá xác địnhhoặc giá tốt hơn Lệnh có hiệu lực kể từ khi được nhập vào hệ thống giao dịch chođến hết ngày giao dịch hoặc cho đến khi lệnh bị hủy bỏ
Lệnh giao dịch tại mức giá khớp lệnh xác định giá đóng cửa (Viết tắt là ATC)tương tự như lệnh ATO nhưng được áp dụng trong thời gian khớp lệnh định kỳ xácđịnh giá đóng cửa
Giá khớp: 99
Khối lượng khớp: 5,000 Trong đó: C-B:4,000
Lệnh ATO (ATC) được ưu tiên trước so với lệnh giới hạn trong sokhớp lệnh
4.3.2.7 Hủy lệnh giao dịch:
Trong thời gian khớp lệnh định kỳ:
Khách hàng không được hủy lệnh giao dịch đã đặt trong đợt khớp lệnhđịnh kỳ
Trang 24Trong thời gian khớp lệnh liên tục:
Khách hàng có thể yêu cầu nhân viên môi giới hủy lệnh nếu lệnh hoặcphần còn lại của lệnh chưa được thực hiện, kể cả các lệnh hoặc phầncòn lại của lệnh chưa được thực hiện ở lần khớp lệnh định kỳ hoặc liêntục trước đó
4.3.2.8 Thời gian thanh toán:
Loại giao dịch Thời gian thanh toán
Cổ phiếu, chứng chỉ quỹ đầu tư
Thỏa thuận T + 3
4.3.2.9 Giao dịch của nhà đầu tư nước ngoài:
Trong thời gian giao dịch khớp lệnh:
Khối lượng cổ phiếu, chứng chỉ quỹ đầu tư mua của nhà đầu tư nướcngoài được trừ vào khối lượng được phép mua ngay sau khi lệnh muađược thực hiện; khối lượng cổ phiếu, chứng chỉ quỹ đầu tư bán của nhàđầu tư nước ngoài được cộng vào khối lượng cổ phiếu, chứng chỉ quỹđầu tư được phép mua ngay sau khi kết thúc việc thanh toán giao dịch(T+3)
Lệnh mua hoặc một phần lệnh mua của nhà đầu tư nước ngoài chưađược thực hiện sẽ tự động bị hủy nếu khối lượng cổ phiếu, chứng chỉquỹ được phép mua đã hết hoặc không được thực hiện ngay khi nhậpvào hệ thống giao dịch
Trong thời gian giao dịch thỏa thuận:
Trang 25 Khối lượng chứng khoán được phép mua của nhà đầu tư nước ngoài sẽkhông thay đổi nếu giao dịch thỏa thuận được thực hiện giữa hai nhàđầu tư nước ngoài với nhau
4.3.3 Quy định giao dịch tại Sở Giao Dịch Chứng Khoán Hà Nội(HNX) 4.3.3.1 Thời gian giao dịch:
Phương thức giao dịch Giờ giao dịch
Khớp lệnh liên tục và thỏa thuận 9h00’ đến 11h30’
Nghỉ giữa phiên 11h30’ đến 13h00’
Khớp lệnh liên tục và thỏa thuận 13h00’ đến 14h15’
Lệnh có giá trị trong suốt thời gian giao dịch, không hết hạn trong thời giannghỉ giữa phiên
4.3.3.2 Phương thức khớp lệnh:
Các loại lệnh giao dịch:
Lệnh giao dịch báo giá là lệnh giới hạn (LO) được nhập vào hệ thốnggiao dịch của Sở giao dịch Chứng khoán Hà Nội có hiệu lực cho đếnhết phiên giao dịch hoặc sẽ hết hiệu lực khi khách hàng có yêu cầu hủylệnh
Phương thức giao dịch: Khớp lệnh liên tục và giao dịch thỏa thuận
Khớp lệnh liên tục là phương thức giao dịch được thực hiện trên cơ sở
so khớp các lệnh mua và lệnh bán chứng khoán ngay khi lệnh đượcnhập vào hệ thống giao dịch
Giao dịch thỏa thuận:
o Nếu khách hàng đã xác định được đối tác trước thì lệnh sẽ đượcthực hiện theo yêu cầu của khách hàng
o Nếu chưa xác định được đối tác thì lệnh sẽ được gởi lên toàn bộthị trường Khi có thông tin Mua/Bán thỏa thuận tương ứng,
Trang 26công ty sẽ thông báo cho khách hàng, nếu khách hàng chấp nhậnthì lệnh sẽ được thực hiện.
o Trong ngày giao dịch đầu tiên của cổ phiếu mới đăng ký giaodịch hoặc ngày đầu tiên giao dịch trở lại của cổ phiếu không cógiao dịch trên 25 phiên liên tiếp, các lệnh mua/bán chứng khoántheo phương thức giao dịch thỏa thuận không được thực hiệncho đến khi có giá tham chiếu được xác lập từ kết quả củaphương thức khớp lệnh liên tục
4.3.3.3 Nguyên tắc khớp lệnh:
Ưu tiên về giá:
Các lệnh có mức giá tốt nhất được ưu tiên thực hiện trước
Ưu tiên về thời gian:
Lệnh mua hoặc bán có cùng mức giá thì lệnh giao dịch được nhập trướcvào hệ thống được ưu tiên thực hiện trước
Nếu lệnh mua và bán thỏa mãn về giá (Giá mua ≥ Giá bán) thì mức giákhớp là mức giá của lệnh nhập vào hệ thống trước
4.3.3.4 Đơn vị giao dịch và đơn vị yết giá:
Đơn vị giao dịch:
Đối với cổ phiếu:
o Đơn vị giao dịch (lô chẵn) đối với giao dịch khớp lệnh là 100 cổphiếu
o Không quy định đơn vị giao dịch đối với giao dịch thoả thuận cổphiếu Áp dụng khối lượng giao dịch tối thiểu đối với giao dịch thỏathuận là 5,000 cổ phiếu
o Giao dịch cổ phiếu có khối lượng từ 01 đến 99 cổ phiếu (lô lẻ) đượcthực hiện trực tiếp giữa người đầu tư với công ty chứng khoán, giáthực hiện được xác định bằng giá sàn của ngày ký kết hợp đồng
Trang 27 Đối với trái phiếu:
o Đơn vị giao dịch (lô chẵn) đối với giao dịch khớp lệnh trái phiếu là
100 trái phiếu
o Không quy định đơn vị giao dịch đối với giao dịch thoả thuận tráiphiếu Khối lượng giao dịch tối thiểu đối với giao dịch thoả thuậntrái phiếu là 100,000,000 đồng tính theo mệnh giá
Đơn vị yết giá:
Hình thức giao dịch Cổ phiếu Trái phiếu
Giao dịch báo giá 100 đồng Không quy định
Giao dịch thỏa thuận Không quy định Không qui định
4.3.3.5 Giá tham chiếu và biên độ giao động giá:
Giá tham chiếu:
Giá tham chiếu của cổ phiếu là bình quân gia quyền của các giá thựchiện theo phương thức khớp lệnh liên tục của ngày có giao dịch gầnnhất trước đó
Việc xác định giá tham chiếu của cổ phiếu mới đăng ký giao dịch trongngày giao dịch đầu tiên do tổ chức niêm yết hoặc tổ chức tư vấn niêmyết (nếu có) đề xuất và được SGDCKHN phê duyệt Nếu trong 3 ngàygiao dịch liên tục kể từ ngày giao dịch đầu tiên chưa xác định đượcmức giá bình quân gia quyền để sử dụng làm giá tham chiếu cho ngàygiao dịch kế tiếp, tổ chức niêm yết và tổ chức tư vấn niêm yết (nếu có)
sẽ phải xác định lại giá tham chiếu
Đơn vị giao dịch (lô chẵn) đối với giao dịch khớp lệnh là 100 cổ phiếu
Không quy định đơn vị giao dịch đối với giao dịch thoả thuận cổ phiếu
Áp dụng khối lượng giao dịch tối thiểu đối với giao dịch thỏa thuận là5,000 cổ phiếu
Trang 28 Giao dịch cổ phiếu có khối lượng từ 01 đến 99 cổ phiếu (lô lẻ) đượcthực hiện trực tiếp giữa người đầu tư với công ty chứng khoán, giá thựchiện được xác định bằng giá sàn của ngày ký kết Hợp đồng.
Trường hợp chứng khoán bị tạm ngừng giao dịch trên 25 phiên, khiđược giao dịch trở lại, giá tham chiếu do Sở GDCK Hà Nội quyết địnhsau khi được UBCKNN chấp thuận
Biên độ giao động giá:
Biên độ dao động: Là tỷ lệ % dao động giá mua và bán chứng khoántrong ngày giao dịch do UBCKNN quy định Biên độ dao động giá của
Trang 29 Giá mở cửa: là giá chứng khoán thực hiện tại lần khớp lệnh đầu tiên trongngày giao dịch
Giá tham chiếu: là mức giá làm cơ sở cho việc tính giới hạn giao động giáchứng khoán trong phiên giao dịch Tại Việt Nam, giá tham chiếu tại mộtphiên giao dịch là giá đóng cửa của phiên giao dịch trước
Giá trần: là mức giá cao nhất mà một loại chứng khoán có thể được thực hiệntrong phiên giao dịch
o Giá trần = Giá tham chiếu + (Giá tham chiếu × biên độ giao động giá)
Giá sàn: là mức thấp nhất mà một loại chứng khoán có thể được thực hiệntrong phiên giao dịch
o Giá sàn = Giá tham chiếu - (Giá tham chiếu × biên độ giao động giá)
Trang 30Chương 5 ỨNG DỤNG
Chương trình giao dịch chứng khoán trên nền tảng điện thoại Android đã cungứng được một số chức năng về xem giá chứng khoán, tra cứu thông tin thị trường,đặt lệnh mua bán, xem trạng thái lệnh
5.1 Sơ lược cách gửi và nhận dữ liệu
Như đã nói ở phần trên, chương trình gửi nhận dữ liệu thông qua một WebService, Web Service này kết nối và lấy dữ liệu trong Database Về mảng dữ liệu,
đề tài được Công Ty OTS cung cấp về Web Service, Database Ta sẽ lược sơ quamột số API của Service mà chương trình sử dụng
GetListCompany : phương thức lấy danh sách các công ty được giao dịch trênsàn chứng khoán Tham số truyền vào là 1 biến kiểu integer Dữ liệu trả về làchuỗi Json chứa danh sách các công ty Tham số truyền vào hàm được thểhiện trong bảng sau:
marketID
0 Lấy danh sách công ty của 3 sàn
1 Chỉ lấy danh sách công ty của sàn Hose
2 Chỉ lấy danh sách công ty của sàn Hnx
3 Chỉ lấy danh sách công ty của sàn Upcom
GetListStockInfos : phương thức này trả về danh sách thông tin các mã chứngkhoán Tham số truyền vào là danh sách các mã chứng khoán và languageId
Ví dụ muốn lấy thông tin của 2 mã chứng khoán ABT và AAM thì tham sốtruyền vào sẽ là “ABT,AAM” Hai mã này cách nhau bởi một dấu phẩy Kếtquả trả về là chuỗi Json chứa danh sách thông tin các mã chứng khoán gửilên
Trang 31 GetMarketInfo : Phương thức lấy thông tin thị trường Tham số truyền vào làmarketID
Login : phương thức đăng nhập Tham số truyền vào là các thông tin tàikhoản, mật khẩu, và kiểu xác thực Dữ liệu trả về là chuỗi Json chứa thôngtin xác nhận đăng nhập và thông tin của tài khoản(nếu đăng nhập thànhcông) Tham số truyền vào hàm được thể hiện trong bảng sau:
Trang 32Side S Bán
GetCashBalance : phương thức lấy số dư tiền Tham số truyền vào là cácthông tin mã tài khoản và kiểu xác thực Dữ liệu trả về là chuỗi Json chứa số
dư tiền của tài khoản Tham số truyền vào hàm được thể hiện trong bảng sau:
MarketID
Trang 33SecSymbol ACC Mã chứng khoán
UpdateOrder : phương thức sửa lệnh Tham số truyền vào là các thông tin mãtài khoản, mã pin, kiểu xác thực, id lệnh sửa, giá mới Dữ liệu trả về là chuỗiJson chứa kết quả sửa lệnh Tham số truyền vào hàm được thể hiện trongbảng sau: