Không chỉ vì cổ phiếu ngân hàng có mức độ an toàn cao mà còn vì cổ phiếu ngân hàngluôn có vị trí hàng đầu trên thị trường chứng khoán Việt Nam xét trên nhiều khía cạnh.Sự biến động của n
NGÂN HÀNG NHÀ NƯỚC VIỆT NAM BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NGÂN HÀNG THÀNH PHỐ HỒ CHÍ MINH - ĐỒ ÁN MÔN: LẬP TRÌNH PYTHON CHO PHÂN TÍCH DỮ LIỆU NGUYỄN THỊ BẢO VY 050609211752 NGUYỄN NHẬT NAM 050609210797 BÙI HỮU NHÂN 050609212086 NGUYỄN THỊ THANH NGÂN 050609210847 ĐÀO PHÚC NGÂN 050609210858 Lớp học phần: DAT708_222_9_L15 Khóa học: Khóa 9 GVHD: PHẠM THANH AN Thành phố Hồ Chí Minh, tháng 3 năm 2023 LỜI MỞ ĐẦU Ở thời điểm hiện tại, có lẽ khi nhắc đến cổ phiếu Ngân hàng trên thị trường chứng khoán Việt Nam thì chắc hẳn sẽ có không ít nhà đầu tư “ngán ngẩm” mà hồi tưởng lại một thời làm mưa làm gió của nhóm cổ phiếu này Thời mà cổ phiếu ngân hàng được coi là “cổ phiếu vua” trên thị trường Nhưng như vậy không có nghĩa là hiện tại nhóm cổ phiếu này phải nhận sự thờ ơ của nhà đầu tư Mà ngược lại, nhóm cổ phiếu này vẫn luôn nhận được nhiều sự quan tâm từ phía các nhà đầu tư, tổ chức cũng như cá nhân Không chỉ vì cổ phiếu ngân hàng có mức độ an toàn cao mà còn vì cổ phiếu ngân hàng luôn có vị trí hàng đầu trên thị trường chứng khoán Việt Nam xét trên nhiều khía cạnh Sự biến động của nhóm cổ phiếu ngân hàng sẽ quyết định rất lớn đến xu hướng của thị trường, ít nhất là biến động của chỉ số chung Hơn nữa, do vai trò quan trọng của ngành ngân hàng đối với sự phát triển của nền kinh tế nên sự biến động của cổ phiếu ngân hàng cũng gây ra những tác động gián tiếp tới các nhóm ngành khác Thực tế lịch sử cho thấy, nhóm cổ phiếu ngân hàng luôn tăng đầu tiên khi thị trường bắt đầu có dấu hiệu bước vào một chu kỳ tăng điểm Hay nói cách khác, lịch sử khởi đầu một con sóng tăng điểm của thị trường thường là sự bật dậy trước tiên của cổ phiếu ngân hàng Và diễn biến thị trường thời gian qua là một minh chứng rõ nét cho điều này Điều đó thể hiện mức độ ưu thế của nhóm cổ phiếu ngành này so với các nhóm ngành còn lại trong nền kinh tế Tóm lại, với những cơ sở phân tích như trên chúng ta có thể khẳng định vị thế quan trọng của nhóm cổ phiếu ngành này trên thị trường chứng khoán Nó giải thích một điều là không phải ngẫu nhiên cổ phiếu ngành này lại được mệnh danh là cổ phiếu “vua” Tuy nhiên nếu xét đến diễn biến 2 năm trở lại đây của nhóm ngành này nói riêng và của cả thị trường nói chung thì chắc hẳn nhiều nhà đầu tư sẽ đặt ra câu hỏi rằng cổ phiếu ngành ngân hàng hiện tại có còn là “vua” Và nếu là vua thì khi nào “vua” sẽ trở lại ngai vàng? MỤC LỤC 1 Mục tiêu nghiên cứu và nhiệm vụ nghiên cứu 4 1.1 Mục tiêu nghiên cứu: 4 1.2 Nhiệm vụ nghiên cứu 4 2 Đối tượng và phạm vi nghiên cứu 4 2.1 Đối tượng nghiên cứu: 4 2.2 Phạm vi nghiên cứu: .4 3 Mô hình nghiệp vụ bài toán thực tế, miền ứng dụng .4 3.1 Mô hình nghiệp vụ bài toán thực tế .4 4 Quá trình thu thập và làm sạch dữ liệu 5 4.1 Biểu đồ pairlot .7 4.2 Biểu đồ matplotlib .8 4.3 Biểu đồ nhiệt 9 4.4 Biểu đồ nến: 10 5 Cơ sở lý thuyết về Python cho bài toán .12 5.1 Seaborn 12 5.2 Pandas 12 5.3 Numpy 13 5.4 Matplotlib: 13 5.5 Biểu đồ nhiệt 13 5.6 Biểu đồ hình nến 13 6 Kết quả thực hiện 13 Kết luận 15 TÀI LIỆU THAM KHẢO 16 1 Mục tiêu nghiên cứu và nhiệm vụ nghiên cứu 1.1 Mục tiêu nghiên cứu: a Nghiên cứu và phân tích những dữ liệu chứng khoán của bốn ngân hàng tại Việt Nam bao gồm: Ngân hàng Quân Đội (MB), Ngân hàng TMCP Đầu tư và Phát Triển (BIDV), Ngân hàng TMCP Ngoại Thương Việt Nam (VCB) và cuối cùng là Ngân hàng TMCP Á Châu (ACB) từ 2022 đến nay Qua đó nhằm nắm được tình hình sàn chứng khoán từ đầu năm 2019 đến đầu năm 2023 b Nghiên cứu về những tác động làm biến đổi giá cổ phiếu của 4 ngân hàng từ những năm 2022 đến nay c Nghiên cứu và nâng cao hiệu quả của việc đầu tư vào các sàn giao dịch chứng khoán trong nước 1.2 Nhiệm vụ nghiên cứu Giải quyết được số liệu của 4 ngân hàng trên để nhằm phân tích 2 Đối tượng và phạm vi nghiên cứu 2.1 Đối tượng nghiên cứu: Cổ phiếu ngân hàng của những ngân hàng sau: Ngân hàng Quân Đội (MB), Ngân hàng TMCP Đầu tư và Phát Triển (BIDV), Ngân hàng TMCP Ngoại Thương Việt Nam (VCB) và cuối cùng là Ngân hàng TMCP Á Châu (ACB) trong thị trường chứng khoán Việt Nam Tên Ngân hàng Mã giao dịch Ngân hàng TMCP Ngoại Thương VCB MBB Ngân hàng Quân Đội ACB Ngân hàng TMCP Á Châu BID Ngân hàng TMCP Đầu tư và Phát triển 2.2 Phạm vi nghiên cứu: Về không gian: Thị trường chứng khoán Việt Nam, cụ thể là sở giao dịch chứng khoán của bốn ngân hàng: Ngân hàng Quân Đội (MB), Ngân hàng TMCP Đầu tư và Phát Triển (BIDV), Ngân hàng TMCP Ngoại Thương Việt Nam (VCB) và cuối cùng là Ngân hàng TMCP Á Châu (ACB) Về thời gian: Tiến hành phân tích cổ phiếu các ngân hàng từ đầu năm 2019 đến đầu năm 2023 3 Mô hình nghiệp vụ bài toán thực tế, miền ứng dụng 3.1 Mô hình nghiệp vụ bài toán thực tế Dự báo cổ phiếu luôn là bài toán thách thức vì tính không thể đoán trước của nó Giải quyết thị trường hàng ngày là không thể dự báo giá cổ phiếu và giá cổ phiếu là ngẫu nhiên Tuy nhiên bằng các phân tích kỹ thuật cho thấy hầu hết các giá cổ phiếu được phản ánh các dữ liệu liệu trước đó, do đó xu hướng vận động giá là rất quan trọng để dự đoán giá hiệu quả Hơn nữa, các nhóm cổ phiếu và thị trường chứng khoán bị ảnh hưởng bởi một số yếu tố kinh tế như sự kiện chính trị, điều kiện kinh tế chung, chỉ số giá hàng hóa, kỳ vọng của nhà đầu tư, Mô hình nghiệp vụ kinh doanh chứng khoán của các nhà đầu tư, mỗi nhà đầu tư có mục đích đầu tư rất khác nhau, trước hết và quan trọng nhất là tìm kiếm lợi nhuận từ lợi tức kép của chứng khoán Họ có thể nhằm vào mục tiêu tích lũy vốn để tạo ra thu nhập trong tương lai, hoặc đáp ứng các nhu cầu cá nhân khác… Nhà đầu tư thường có thể trực tiếp hoặc gián tiếp xác định tình hình tài chính thông qua việc thường xuyên xem xét tình hình tài chính của mình, các quan điểm về khả năng chấp nhận rủi ro, các quy chế về thuế và đặc biệt họ phải có những phân tích mang độ chính sách cao về những biến động của thị trường chứng khoán thông qua các phân tích chứng khoán được thể hiện dưới dạng biểu đồ Và mục tiêu cuối cùng của bài toán thực tế khi giao dịch trên sàn chứng khoán chính là tối đa hóa lợi ích cũng như an toàn vốn Đối với đồ án này nhóm chúng em sẽ phân tích về giá đóng cửa, mở cửa của cổ phiếu của 4 ngân hàng khác nhau với dữ liệu được lấy từ sàn giao dịch chứng khoán Việt Nam vn stock 4 Quá trình thu thập và làm sạch dữ liệu Đồ án này nhóm chúng em sử dụng ứng dụng Google colaboratory để thực hiện việc viết code cũng như đưa ra biểu đồ phân tích chứng khoán Đầu tiên import các thư viện quen thuộc như sau: import datetime import numpy as np import pandas as pd Tiếp theo, để load dữ liệu chứng khoán trực tuyến, ta sử dụng thư viện vn stock, thư viện này ta phải cài đặt vào Colab !pip install vnstock import vnstock as vs Giờ ta load dữ liệu chứng khoán từ 3 ngân hàng là Ngân hàng Quân Đội (MB), Ngân hàng TMCP Đầu tư và Phát Triển (BIDV), Ngân hàng TMCP Ngoại Thương Việt Nam (VCB), Ngân hàng TMCP Á Châu (ACB) và thời gian lấy dữ liệu từ ngày 01/01/2019 đến ngày 31/01/2023, ta làm như sau: Load data VCB VCB = vs.stock_historical_data(symbol='VCB', start_date="2019-01-01", end_date='2023-01-31') VCB.head() Kết quả trả về cho ta là 1 Data Frame, bắt đầu từ ngày 02/01/2015, trong đó các ngày 1,5,6 và 7 là ngày nghỉ lễ, thứ 7, chủ nhật nên không có dữ liệu để hiển thị Quan sát bảng ta thấy các cột có ý nghĩa như sau: Open là giá mở cửa High là giá cao nhất trong phiên giao dịch Low là giá thấp nhất trong phiên Close là giá đóng cửa (hay giá kết phiên) Volume là khối lượng giao dịch (tổng số cổ phiếu giao dịch trong phiên) Tiếp tục ta làm tương tự đối với 3 Ngân hàng còn lại: ACB, BIDV và MB Giờ ta nối 4 Data frame trên lại thành một bảng dữ liệu mới để tiện phân tích, ta đặt tên là bank_stock #Gom thành 1 list theo hàng ngang list_banks = ['VCB','MBB','ACB','BID'] # Tham số axis = 1 là nối theo cột bank_stocks = pd.concat([VCB,MBB,ACB,BID],axis=1, keys = list_banks) bank_stocks Sử dụng phương thức xs() trong pandas để lập chỉ mục đa cấp để tìm giá trị đóng cửa lớn nhất và nhỏ nhất của từng cổ phiếu trên bank_stocks.xs(key='Close',axis=1,level='Stock Info').max() Bank Name VCB 95800.0 MBB 28666.0 ACB 30360.0 BID 49000.0 dtype: float64 bank_stocks.xs(key='Close',axis=1,level='Stock Info').min() Bank Name VCB 40799.0 MBB 7273.0 ACB 8763.0 BID 23024.0 dtype: float64 Tạo 1 DataFrame trống mới được gọi là value_banks Data frame này sẽ chứa tỷ suất lợi nhuận cho từng cổ phiếu của ngân hàng trên value_banks = pd.DataFrame() Tạo một vòng lặp for để lặp qua với mỗi mã cổ phiếu ngân hàng Tiếp theo, ta tạo một cột tên là “mã cổ phiếu + value_bank” = giá trị tỷ suất lợi nhuận Để tính tỷ suất lợi nhuận, ta dùng hàm pct_change trong pandas và áp dụng cho giá đóng cửa cửa từng mã cổ phiếu theo code bên dưới Phương thức pct_change() để tính toán thay đổi % theo thời gian Sự thay đổi này được tính (giá trị row hiện tại – giá trị row trước đó)/ (giá trị row trước đó) Vì Document continues below Discover more fLruoậmt :doanh nghiệp Law12 Trường Đại học… 90 documents Go to course Trắc-nghiệm-LKD Trường đại học Ngâ… 140 98% (44) Đề thi trắc nghiệm luật kinh tế 3 100% (19) Question and review, problems chapter 3 42 Kinh tế 100% (1) quốc tế Kinh tế quốc tế - tài liệu 100% (1) 11 Kinh tế quốc tế The Path of the Law - nhập môn ngành… 20 Luật doanh 100% (1) nghiệp dòng đầu tiên không có dữ liệu để tính nên trả về giá trị NaN, ta có thể xóa luôn dòng này với hàm dropna BTVN BUỔI 1 - bai for name in list_banks: value_banks[name+' value_bank'] = bank_stocks[name]['Close'].pct_change() tap value_banks.dropna(inplace= True) 2 value_banks.head() Luật doanh nghiệp 100% (1) 4.1 Biểu đồ pairlot Dùng Seaborn sử dụng biểu đồ pairplot để tìm cổ phiếu nổi bật dựa trên giá trị lợi nhuận bên trên import seaborn as sns sns.pairplot(value_banks) Nhận xét: Từ biểu đồ trên ta thấy được: Tỷ suất giữa Ngân hàng VCB với MB 4.2 Biểu đồ matplotlib Lấy giá đóng cửa các cổ phiếu trên bằng biểu đồ matplotlib ta dùng vòng for để lặp qua Data frame các cổ phiếu trên import matplotlib.pyplot as plt for tick in list_banks: bank_stocks[tick]['Close'].plot(figsize=(12,4),label=tick) plt.legend() Nhận xét: Quan sát ở biểu đồ matplotlib trên ta thấy giá cổ phiếu của Ngân hàng VCB đang dẫn đầu ngành, tiếp đến là Ngân hàng BIDV, ACB và MB Nhìn chung khi giá cổ phiếu của một ngân hàng tăng thì các ngân hàng còn lại cũng có sự gia tăng theo 4.3 Biểu đồ nhiệt Dùng bản đồ nhiệt (Heatmap) để xem độ tương quan giá đóng cửa của các cổ phiếu trên plt.figure(figsize=(12,5)) sns.heatmap(bank_stocks.xs(key='Close',axis=1,level='Stock Info').corr(),annot=True) Sử dụng Seaborn Clustermap để nhóm các cổ phiếu có tương quan với nhau sns.clustermap(bank_stocks.xs(key='Close',axis=1,level='Stock Info').corr(),annot=True) Nhận xét: Giá trị cổ phiếu của Ngân hàng MB và ACB có sự tương quan với nhau Giá trị cổ phiếu của Ngân hàng ACB và VCB có sự tương quan với nhau Giá trị cổ phiếu của Ngân hàng VCB và BIDV có sự tương quan với nhau 4.4 Biểu đồ nến: Cổ phiếu ACB: import plotly import plotly.graph_objects as go candlestick = go.Candlestick( x=VCB.index, open=ACB['Open'], high=ACB['High'], low=ACB['Low'], close=ACB['Close'] ) fig = go.Figure(data=[candlestick]) fig.show() Nhận xét: Cổ phiếu VCB: candlestick = go.Candlestick( x=VCB.index, open=VCB['Open'], high=VCB['High'], low=VCB['Low'], close=VCB['Close'] ) fig3 = go.Figure(data=[candlestick]) fig3.show() Nhận xét: Cổ phiếu MBB: candlestick = go.Candlestick( x=MBB.index, open=MBB['Open'], high=MBB['High'], low=MBB['Low'], close=MBB['Close'] ) fig1 = go.Figure(data=[candlestick]) fig1.show() Nhận xét: Cổ phiếu BID: candlestick = go.Candlestick( x=BID.index, open=BID['Open'], high=BID['High'], low=BID['Low'], close=BID['Close'] ) fig2 = go.Figure(data=[candlestick]) fig2.show() Nhận xét: 5 Cơ sở lý thuyết về Python cho bài toán 5.1 Seaborn Seaborn được dùng để vẽ các dạng dữ liệu phân loại Ví dụ, phân loại giới tính, phân loại ngày tháng, phân loại sản phẩm… để trực quan số liệu các dạng Dataset này Trong trường hợp này chúng em dùng biểu đồ seaborn để phân tích sự biến động trên sàn chứng khoán của 4 ngân hàng BIDV, ACB, MBBank, VCB 5.2 Pandas Pandas là thư viện thực hiện mọi thứ mà NumPy và SciPy không thể làm Nó làm với các đối tượng cấu trúc dữ liệu, DataFrames và Chuỗi (Series) Pandas cho phép bạn có thể xử lý các bảng dữ liệu phức tạp và chuỗi thời gian Bạn sẽ dễ dàng tải dữ liệu từ nguồn khác nhau, sau dó slide, dice, xử lý các thành phần còn thiếu, thêm, đổi tên, tổng hợp, reshape và cuối cùng là trực quan dữ liệu theo ý của bạn 5.3 Numpy Numpy (Numeric Python): là một thư viện toán học rât phổ biến và mạnh mẽ của Python NumPy được trang bị các hàm số đã được tối ưu, cho phép làm việc hiệu quả với ma trận và mảng, đặc biệt là dữ liệu ma trận và mảng lớn với tốc độ xử lý nhanh hơn nhiều lần khi chỉ sử dụng Python đơn thuần Sử dụng NumPy có thể thực hiện các thao tác sau: Các phép toán toán học và logic trên mảng Các biến đổi Fourier và các quy trình để thao tác shape Các phép toán liên quan đến đại số tuyến tính NumPy tích hợp sẵn các hàm cho đại số tuyến tính và tạo số ngẫu nhiên NumPy thường được sử dụng cùng với các gói như SciPy (Python Scientific) và Matplotlib (thư viện vẽ đồ thị) Sự kết hợp này được sử dụng rộng rãi để thay thế cho MatLab, một nền tảng phổ biến cho tính toán kỹ thuật Tuy nhiên, Python thay thế cho MatLab hiện được xem như một ngôn ngữ lập trình hoàn thiện và hiện đại hơn.Điều quan trọng hơn cả là Numpy là một thư viện mã nguồn mở, miễn phí so với MatLab là một thư viện mã nguồn đóng và phải trả phí 5.4 Matplotlib: Để thực hiện các suy luận thống kê cần thiết, cần phải trực quan hóa dữ liệu của bạn và Matplotlib là một trong những giải pháp như vậy cho người dùng Python Nó là một thư viện vẽ đồ thị rất mạnh mẽ hữu ích cho những người làm việc với Python và NumPy Module được sử dụng nhiều nhất của Matplotlib là Pyplot cung cấp giao diện như MATLAB nhưng thay vào đó, nó sử dụng Python và nó là nguồn mở 5.5 Biểu đồ nhiệt Heatmap là biểu đồ sử dụng cường độ màu sắc để thể hiện độ lớn của giá trị Khi đó các giá trị lớn sẽ được làm nổi bật bằng các vùng màu có cường độ ánh sáng mạnh và các giá trị nhỏ hơn sẽ được thể hiện bằng các mảng màu nhạt hơn Các trường hợp thường sử dụng heatmap: Biểu đồ hệ số tương quan Biểu đồ địa lý về cảnh báo thiên tai Biểu đồ mật độ dân số Biểu đồ crazy egg trong đo lường các component được sử dụng nhiều trong 1 website hoặc app … 5.6 Biểu đồ hình nến Biểu đồ hình nến (Candlestick Chart), hay còn thường được gọi là biểu đồ nến Nhật, mô hình nến, là một loại biểu đồ tài chính dùng để mô tả chuyển động giá của chứng khoán dựa trên mô hình giá trong quá khứ.Biểu đồ hình nến hiển thị giá mở cửa, giá cao nhất, giá thấp nhất và giá đóng cửa của chứng khoán trong một khoảng thời gian nhất định (thường là một ngày) Một biểu đồ sẽ được cấu tạo bởi hàng nghìn cây nến khác nhau Mỗi cây nến sẽ có 2 phần là thân nến và bóng nến: Thân nến là phần lớn nhất được tô màu cho biết mức giá đóng cửa và giá mở cửa Bóng nến là 2 que nhỏ nằm ở trên và dưới thân nến, cho biết mức giá cao nhất và giá thấp nhất trong một khoảng thời gian nhất định 6 Kết quả thực hiện Kết luận Sau thời gian tham khảo tìm tòi và dưới sự chỉ bảo của thầy hướng dẫn về bài tập đồ án, trong khoảng thời gian nhất định dành cho việc thực hiện đề tài, nên một số vấn đề vẫn chưa được hoàn chỉnh Đồ án đã đạt được một số kết quả: Tìm hiểu về ngôn ngữ Python Quá trình thu thập và làm sạch dữ liệu, sử dụng ứng dụng Google colaboratory để thực hiện việc viết code cũng như đưa ra biểu đồ phân tích chứng khoán Dùng Seaborn sử dụng biểu đồ pairplot để tìm cổ phiếu nổi bật dựa trên giá trị lợi nhuận Lấy giá đóng cửa các cổ phiếu trên bằng biểu đồ matplotlib ta dùng vòng for để lặp qua Dataframe các cổ phiếu Dùng bản đồ nhiệt (Heatmap) để xem độ tương quan giá đóng cửa của các cổ phiếu Tìm hiểu về bài toán dự báo Viết chương trình thử nghiệm bài toán giá cổ phiếu Tuy nhiên trong quá trình làm bài vẫn còn một số điều cần bổ sung như: Chưa thao tác thành thục về lập trình python Chưa hiểu sâu về bài toán TÀI LIỆU THAM KHẢO 1 Tìm hiểu về thư viện NumPy trong Python (Phần 1) Nguồn:https://viblo.asia/p/tim-hieu-ve-thu-vien-numpy-trong-pythonphan-1-Do7542QXZM6 2 Xây dựng biểu đồ phân tích chứng khoán sử dụng Python (P1) Nguồn:https://itzone.com.vn/vi/article/xay-dung-bieu-do-phan-tich-chung-khoan-su-dung-python- p1/?fbclid=IwAR0udfaudSJIYuC-5-uCmh_F8FBEPqr9Ge3SXQQGqFobqLPCYDxw5sZXFY0 3 Biểu đồ hình nến là gì? Sử dụng như thế nào? Nguồn: https://www.anfin.vn/blog/bieu-do-hinh-nen-la-gi-su-dung-nhu-the-nao 4 Đồ án tốt nghiệp Nguồn:https://www.slideshare.net/thuytrong1/luan-van-thac-si-tim-hieu-ngon-ngu-lap-trinh-python- du-bao-gia-chung-khoan 5 Giới thiệu về Matplotlib (một thư viện rất hữu ích của Python dùng để vẽ đồ thị) Nguồn:https://viblo.asia/p/gioi-thieu-ve-matplotlib-mot-thu-vien-rat-huu-ich-cua-python-dung-de- ve-do-thi-yMnKMN6gZ7P 6 Khoa học dữ liệu Nguồn:https://phamdinhkhanh.github.io/2019/09/16/VisualizationPython.html#16-bi%E1%BB %83u-%C4%91%E1%BB%93-heatmap 7 Biểu đồ phân loại trong Seaborn là gì? Nguồn:https://pythonnangcao.com/khoa-hoc/bai-2-bieu-do-phan-loai-du-lieu-trong-seaborn- categorical-data-plots/#:~:text=Bi%E1%BB%83u%20%C4%91%E1%BB%93%20ph%C3%A2n %20lo%E1%BA%A1i%20trong,li%E1%BB%87u%20c%C3%A1c%20d%E1%BA%A1ng %20Dataset%20n%C3%A0y More from: Luật doanh nghiệp Law12 Trường Đại học… 90 documents Go to course Trắc-nghiệm-LKD Trường đại học… 140 Luật 98% (44) doanh… Đề thi trắc nghiệm luật kinh tế 3 Luật 100% (19) doanh… Câu hỏi và đáp án môn Luật Dân sự 1 29 Luật 100% (17) doanh… Tổng hợp 100 câu hỏi trắc nghiệm lu… 29 Luật 93% (29) doanh… Recommended for you Question and review, problems… 42 Kinh tế 100% (1) quốc tế Kinh tế quốc tế - tài liệu 100% (1) 11 Kinh tế quốc tế The Path of the Law - nhập môn ngành… 20 Luật 100% (1) doanh… BTVN BUỔI 1 - bai tap 100% (1) 2 Luật doanh…