1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nguyễn Đình Hải Minh-B21Dctc010-D21Cqtc02-B.docx

17 0 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG KHOA CÔNG NGHỆ THÔNG TIN * * MID TERM REPORT MÔN PYTHON PROGRAMING (Fintech) Đề 2 GOOG, ORCL, JNJ Giảng viên Dr Dinh Chi Hieu Họ và Tên Nguyễn Đình Hải Minh Mã[.]

HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG KHOA CƠNG NGHỆ THÔNG TIN -* -* - MID-TERM REPORT MÔN: PYTHON PROGRAMING (Fintech) Đề 2: GOOG, ORCL, JNJ Giảng viên: Dr Dinh Chi Hieu Họ Tên: Nguyễn Đình Hải Minh Mã Lớp: D21CQTC02-B Mã Sv: B21DCTC010 Hà Nội, 2023 Question 1: Brief overview of company with those stocks code: Industry/sector (IT, pharmaceutical companies), # of Employees, market capital (vốn hóa thị trường), main products, annual sales, book value(giá trị sổ sách), … 1, Code Python giải thích Các bước làm Bước 1: Tải thư viện yfinance để lấy thông tin công ty Bước 2: Liệt kê mã cổ phiếu muốn tìm hiểu thơng tin Bước 3: Lặp lại mục mã đánh dấu danh sách gán cho mã đánh giá biến Bước 4: Tạo đối tượng có tên công ty cách sử dụng hàm yf.Ticker chuyển mã đánh dấu làm kết Bước 5: Lấy thơng tin cổ phiếu thuộc tính info đối tượng cổ phiếu gán cho biến stock_info Bước 6: Trích xuất thơng tin cần tìm câu lệnh Bước 7: In kết lệnh print() 2, Output GOOG Overview: Company Name: Alphabet Inc Industry: Internet Content & Information Number of Employees: 190711 Market Capitalization: 1587395166208 Main Products: Alphabet Inc offers various products and platforms in the United States, Europe, the Middle East, Africa, the Asia-Pacific, Canada, and Latin America It operates through Google Services, Google Cloud, and Other Bets segments The Google Services segment provides products and services, including ads, Android, Chrome, hardware, Gmail, Google Drive, Google Maps, Google Photos, Google Play, Search, and YouTube It is also involved in the sale of apps and in-app purchases and digital content in the Google Play store; and Fitbit wearable devices, Google Nest home products, Pixel phones, and other devices, as well as in the provision of YouTube non-advertising services The Google Cloud segment offers infrastructure, cybersecurity, data, analytics, AI, and machine learning, and other services; Google Workspace that include cloud-based collaboration tools for enterprises, such as Gmail, Docs, Drive, Calendar, and Meet; and other services for enterprise customers The Other Bets segment sells health technology and internet services The company was founded in 1998 and is headquartered in Mountain View, California Annual Sales: 284612001792 Book Value: 20.507 ORCL Overview: Company Name: Oracle Corporation Industry: Software—Infrastructure Number of Employees: 143000 Market Capitalization: 286354309120 Main Products: Oracle Corporation offers products and services that address enterprise information technology environments worldwide Its Oracle cloud software as a service offering include various cloud software applications, including Oracle Fusion cloud enterprise resource planning (ERP), Oracle Fusion cloud enterprise performance management, Oracle Fusion cloud supply chain and manufacturing management, Oracle Fusion cloud human capital management, Oracle Advertising, and NetSuite applications suite, as well as Oracle Fusion Sales, Service, and Marketing The company also offers cloud-based industry solutions for various industries; Oracle application licenses; and Oracle license support services In addition, it provides cloud and license business' infrastructure technologies, such as the Oracle Database, an enterprise database; Java, a software development language; and middleware, including development tools and others The company's cloud and license business' infrastructure technologies also comprise cloud-based compute, storage, and networking capabilities; and Oracle autonomous database, MySQL HeatWave, Internet-of-Things, digital assistant, and blockchain Further, it provides hardware products and other hardware-related software offerings, including Oracle engineered systems, enterprise servers, storage solutions, industry-specific hardware, virtualization software, operating systems, management software, and related hardware services; and consulting and customer services The company markets and sells its cloud, license, hardware, support, and services offerings directly to businesses in various industries, government agencies, and educational institutions, as well as through indirect channels Oracle Corporation was founded in 1977 and is headquartered in Austin, Texas Annual Sales: 47957999616 Book Value: -0.897 JNJ Overview: Company Name: Johnson & Johnson Industry: Drug Manufacturers—General Number of Employees: 152700 Market Capitalization: 401997561856 Main Products: Johnson & Johnson, together with its subsidiaries, researches, develops, manufactures, and sells various products in the healthcare field worldwide The company's Consumer Health segment provides skin health/beauty products under the AVEENO, CLEAN & CLEAR, DR CI:LABO, NEUTROGENA, and OGX brands; baby care products under the JOHNSON'S and AVEENO Baby brands; oral care products under the LISTERINE brand; TYLENOL acetaminophen products; SUDAFED cold, flu, and allergy products; BENADRYL and ZYRTEC allergy products; MOTRIN IB ibuprofen products; NICORETTE smoking cessation products; and PEPCID acid reflux products This segment also offers STAYFREE and CAREFREE sanitary pads; o.b tampons; adhesive bandages under the BAND-AID brand; and first aid products under the NEOSPORIN brand It serves general public, retail outlets, and distributors The company's Pharmaceutical segment provides products for rheumatoid arthritis, psoriatic arthritis, inflammatory bowel disease, and psoriasis; HIV/AIDS infectious diseases; mood disorders, neurodegenerative disorders, and schizophrenia; prostate cancer, hematologic malignancies, lung cancer, and bladder cancer; thrombosis, diabetes, and macular degeneration; and pulmonary arterial hypertension This segment serves retailers, wholesalers, distributors, hospitals, and healthcare professionals directly for prescription use Its MedTech segment offers electrophysiology products to treat cardiovascular diseases; neurovascular care products to treat hemorrhagic and ischemic stroke; orthopaedics products in support of hips, knees, trauma, spine, sports, and other; advanced and general surgery solutions that focus on breast aesthetics, ear, nose, and throat procedures; and contact lenses and ophthalmic technologies related to cataract and laser refractive surgery under the ACUVUE brand This segment serves wholesalers, hospitals, and retailers Johnson & Johnson was founded in 1886 and is based in New Brunswick, New Jersey Annual Sales: 96262995968 Book Value: 27.275 Question 2: Pull daily stock prices (open) from 01/Apr/2022 - 31/Mar/2023 Đánh giá thông tin thống kê số liệu 1,Python code giải thích Các bước làm Bước 1: Tải thư viện yfinance để lấy thông tin công ty thư viện pandas để phân tích liệu Bước 2: Liệt kê mã cổ phiếu muốn tìm hiểu thơng tin Bước 3: Thiết lập khoảng thời gian giữ liệu Bước 4: Tạo DataFrame trống để lưu liệu giá cổ phiếu Bước 5: Tìm nạp liệu chứng khoán từ Yahoo Finance chức yf.download chuyển mã đánh dấu, ngày bắt đầu ngày kết thúc làm đối số Bước 6: Trích xuất giá mở cửa thêm vào DataFrame Bước 7: Xuất liệu từ DataFrame thành file CSV 2, Output Thông tin chi tiết liệu 3, Đánh giá số liệu Giá cổ phiếu Google (Alphabet Inc) (mở cửa) tăng từ khoảng 1.057 USD vào ngày 4/1/2022 lên khoảng 1.512 USD vào ngày 31/3/20232, tương đương với mức tăng 43% giai đoạn Giá cổ phiếu cao Google năm qua 1.498,84 USD vào ngày 18/11/20213 Giá cổ phiếu thấp Google năm qua 833,34 USD vào ngày 23/3/20223 Giá trị vốn hóa thị trường Google vào khoảng 1,02 nghìn tỷ USD Nói chung Google công ty dẫn đầu cơng nghệ đổi nên ta thấy an tâm mua cổ phiếu doanh nghiệp Giá cổ phiếu Oracle (Tập đoàn Oracle) (mở cửa) tăng từ khoảng $83,06 vào ngày 4/1/2022 lên khoảng $102,39 vào ngày 31/3/20232, tương đương với mức tăng 23,28% khoảng thời gian Giá cổ phiếu cao Oracle năm qua 103,07 USD vào ngày 19/5/20232 Giá cổ phiếu thấp Oracle năm qua $60,78 vào ngày 22/3/20222 Giá trị vốn hóa thị trường Oracle vào khoảng 277,648 tỷ USD Báo cáo thu nhập hàng quý công ty cho thấy tăng trưởng doanh thu mạnh mẽ hiệu suất dịch vụ đám mây Thơng báo tốn cổ tức công ty, làm tăng lợi nhuận cổ đông Các mối quan hệ đối tác mua lại chiến lược công ty, chẳng hạn với TikTok NetSuite Các chiến tranh cãi pháp lý công ty, chẳng hạn với Google Amazon Các điều kiện xu hướng thị trường, chẳng hạn đại dịch COVID-19 biến động lĩnh vực cơng nghệ Những yếu tố ảnh hưởng đến tâm lý nhu cầu nhà đầu tư cổ phiếu ORCL, dẫn đến biến động giá giai đoạn Giá cổ phiếu Johnson & Johnson (JNJ) giá mở cửa trung bình JNJ 157,651 USD Độ lệch chuẩn giá mở JNJ $5,641 Giá mở tối thiểu JNJ 82,92 USD vào ngày 16/03/20231 Giá mở tối đa JNJ $166,33 vào ngày 13/04/20231 Phạm vi: Chênh lệch giá mở hàng ngày tối đa tối thiểu khoảng thời gian, phạm vi giá mở JNJ 83,411 đô la Báo cáo thu nhập hàng quý công ty cho thấy tăng trưởng doanh thu hiệu suất mạnh mẽ phân khúc dược phẩm thiết bị y tế Các thông báo tốn cổ tức cơng ty làm tăng lợi nhuận cổ đông phản ánh niềm tin cơng ty vào tình hình tài Tiến độ thách thức công ty việc phát triển phân phối vắc xin COVID-19, điều có tác động trái chiều đến danh tiếng nhu cầu công ty Các vụ dàn xếp tranh chấp pháp lý công ty, chẳng hạn vụ kiện opioid vụ kiện bột talc, ảnh hưởng đến khoản nợ dịng tiền cơng ty Các điều kiện xu hướng thị trường, chẳng hạn đại dịch COVID-19 động lực ngành chăm sóc sức khỏe Những yếu tố ảnh hưởng đến tâm lý nhu cầu nhà đầu tư cổ phiếu JNJ, dẫn đến biến động giá giai đoạn Question 3: Plot stocks prices (all 3) in one graph with all legend 1,Python code giải thích Các bước làm Bước 1: Tải thư viện yfinance để lấy thông tin cơng ty thư viện pandas để phân tích liệu, thư viện matplotlib để dựng đồ thị Bước 2: Liệt kê mã cổ phiếu muốn tìm hiểu thơng tin Bước 3: Thiết lập khoảng thời gian giữ liệu Bước 4: Tạo DataFrame trống để lưu liệu giá cổ phiếu Bước 5: Nạp xuất liệu y câu 10 Bước 6: Dựng đồ thị dựa liệu có sẵn 2,Output 11 Question 4: Plots histogram of returns of each stock (bin = 40) 1,Python code giải thích Các bước giải thích Bước 1: Tải thư viện yfinance để lấy thông tin công ty thư viện pandas để phân tích liệu, thư viện matplotlib để dựng đồ thị Bước 2: Liệt kê mã cổ phiếu muốn tìm hiểu thơng tin Bước 3: Thiết lập khoảng thời gian giữ liệu Bước 4: Tạo DataFrame trống để lưu liệu giá cổ phiếu Bước 5: Nạp xuất liệu y câu Bước 6: Dựng đồ thị dựa liệu có sẵn 12 2,Output Question 5: Plots Markowitz’s bullet, Markowitz’s Portfolio Frontier 1,Python code giải thích 13 Các bước làm Bước 1: Tải thư viện yfinance để lấy thông tin công ty thư viện pandas để phân tích liệu, thư viện matplotlib để dựng đồ thị Bước 2: Liệt kê mã cổ phiếu muốn tìm hiểu thơng tin Bước 3: Thiết lập khoảng thời gian giữ liệu Bước 4: Tìm nạp liệu chứng khoán từ Yahoo Finance chức yf.download chuyển mã đánh dấu, ngày bắt đầu ngày kết thúc làm đối số Bước 5: Tính tốn lợi nhuận hàng ngày cổ phiếu thư viện; pct_change() thực phép lợi nhuận hàng ngày cho cột khung liệu stock_data, chứa giá lịch sử cổ phiếu, dropna() loại bỏ hàng có giá trị bị thiếu, chẳng hạn hàng giá trước để so sánh Bước 6: num_portfolios xác định số lần muốn lặp lại số lượng danh mục đầu tư mô Bước 7: Tạo ba mảng để lưu trữ trọng số (weights) danh mục đầu tư, lợi nhuận kỳ vọng (returns) biến động (volatilities) thư viện numpy Bước 8: Đoạn mã mô danh mục đầu tư ngẫu nhiên (random portfolios) cách sử dụng vòng lặp (loop) 14 np.random.random() để tạo mảng số ngẫu nhiên khoảng từ đến có độ dài với số lượng mã, số lượng cổ phiếu danh mục đầu tư np.sum() đảm bảo trọng số cộng lại tỷ lệ với số ngẫu nhiên ban đầu np.sum() bên để tính tốn lợi nhuận kỳ vọng danh mục đầu tư ngẫu nhiên cách nhân lợi nhuận trung bình cổ phiếu với trọng số cộng chúng lại với np.sqrt() np.dot() để tính tốn mức độ biến động danh mục đầu tư ngẫu nhiên Bước 9: Xác định hàm mục tiêu để giảm thiểu biến động, lấy mảng trọng số (weights) làm đầu vào trả độ biến động danh mục đầu tư dạng xác định hàm mục tiêu để giảm thiểu độ biến động đầu Bước 10: Đoạn code sau (line 44) đặt ràng buộc cho toán tối ưu hóa Các ràng buộc điều kiện mà giá trị tối ưu phải thỏa mãn Trong trường hợp này, có ràng buộc, tổng trọng số (weights) Điều đảm bảo trọng số hợp lệ không âm Bước 11: Đoạn code đặt giới hạn cho trọng số (0 < weights < 1) Các giới hạn khoảng giá trị mà trọng số tối ưu phải nằm Trong trường hợp này, muốn trọng số không âm không vượt Bước 12: Đoạn code (line 52) tính tốn biên hiệu (biên danh mục đầu tư) Biên hiệu tập hợp danh mục đầu tư có tỷ suất kỳ vọng cao cho mức rủi ro định có rủi ro thấp cho mức tỷ suất kỳ vọng định Để tính tốn biên hiệu quả, cần xác định mục tiêu tỷ suất kỳ vọng tối thiểu hóa rủi ro cho mục tiêu Đoạn code làm hai việc: Tạo mảng mục tiêu tỷ suất kỳ vọng: sử dụng np.linspace() để tạo mảng gồm 100 giá trị cách khoảng từ giá trị nhỏ đến giá trị lớn tỷ suất kỳ vọng danh mục đầu tư Các giá trị lưu trữ target_returns Các giá trị sử dụng làm ràng buộc bổ sung cho toán tối ưu hóa Tạo danh sách để lưu trữ rủi ro biên hiệu quả: sử dụng phương thức list() để tạo danh sách rỗng lưu trữ biến gọi efficient_frontier_volatilities Danh sách điền với giá trị rủi ro tối thiểu cho mục tiêu tỷ suất kỳ vọng Danh sách giúp vẽ biên hiệu đồ thị 15 Bước 13: Đoạn code (line56) sử dụng vịng lặp for để tối ưu hóa danh mục đầu tư cho mục tiêu tỷ suất kỳ vọng tìm rủi ro biên hiệu Đặt ràng buộc mục tiêu tỷ suất kỳ vọng: Chúng ta thêm ràng buộc vào tuple constraints cách sử dụng toán tử += Ràng buộc từ điển có hai khóa: ‘type’ ‘fun’ Khóa ‘type’ có giá trị ‘eq’, có nghĩa ràng buộc Khóa ‘fun’ có giá trị lambda x: np.sum(returns.mean() * x) * 252 target_return, hàm vô danh sử dụng từ khóa lambda để định nghĩa Hàm tính tỷ suất kỳ vọng danh mục đầu tư cách nhân trung bình tỷ suất kỳ vọng cổ phiếu với trọng số cộng lại Hàm sau trừ giá trị target_return, tức mục tiêu tỷ suất kỳ vọng Giá trị ràng buộc tỷ suất kỳ vọng danh mục đầu tư với mục tiêu tỷ suất kỳ vọng, khác khơng Tối ưu hóa danh mục đầu tư: Chúng ta sử dụng phương thức minimize() để tìm trọng số tối ưu cho danh mục đầu tư Phương thức nhận năm tham số: hàm mục tiêu, giá trị ban đầu, phương pháp, ràng buộc giới hạn Hàm mục tiêu hàm minimize_volatility()đã định nghĩa trước đó, nhằm tối thiểu hóa rủi ro danh mục đầu tư Giá trị ban đầu mảng có kích thước với số lượng cổ phiếu có phần tử nhau, cách nhân số lượng cổ phiếu với chia cho số lượng cổ phiếu Điều có nghĩa bắt đầu với trọng số cho tất cổ phiếu Ràng buộc giới hạn tuple constraints bounds mà định nghĩa trước Phương thức minimize() trả đối tượng có nhiều thuộc tính, thuộc tính fun chứa giá trị hàm mục tiêu điểm tối ưu, tức rủi ro biên hiệu Chúng ta thêm giá trị vào danh sách efficient_frontier_volatilities phương thức append() Xóa ràng buộc: Chúng ta xóa ràng buộc khỏi tuple constraints cách sử dụng toán tử slicing [: -1] Điều có nghĩa lấy phần tử từ đầu đến gần cuối tuple constraints gán lại cho biến constraints Điều giúp loại bỏ ràng buộc để chuẩn bị cho lần lặp Bằng cách lặp lại bước cho 100 lần, điền vào danh sách efficient_frontier_volatilities với giá trị rủi ro biên hiệu cho mục tiêu tỷ suất kỳ vọng khác Bước 14: Dựng đồ thị 16 2,Output 17

Ngày đăng: 16/06/2023, 19:58

w