Hướng dẫn Crawl dữ liệu chứng khoán phục vụ nghiên cứu các bài toán AI

Xin chào các bạn, để nghiên cứu và thử nghiệm các mô hình trí tuệ nhân tạo – AI. Đặc biệt là các bài toán liên quan đến dự báo giá cổ phiếu, chứng khoán hoặc thậm chí là giá tiền ảo – cryptocurrency. Thì chúng ta cần nguồn dữ liệu để training và thử nghiệm, tuy nhiên có nhiều bạn không biết tìm kiếm nguồn dữ liệu đó ở đâu. Hoặc biết nguồn những không biết cách lấy dữ liệu về để làm data training.

Do vậy, hôm nay mình sẽ chỉ cho các bạn một cách vô cùng đơn giản để crawl những dữ liệu này về nhé. Chúng ta sẽ sử dụng thư viện “Investpy” trong python nhé.

Bước 1:

Sử dụng câu lệnh pip huyền thoại để install thư viện “investpy

pip install investpy

Bước 2:

Chạy lệnh crawl python với chỉ 4 dòng lệnh

import investpy
import pandas as pd
df = investpy.get_stock_historical_data(stock='VCB', country='VietNam', from_date='01/01/2019', to_date='15/07/2021')
pd.DataFrame(df).to_csv("VCB.csv")

Giải thích code

Dòng 1: để import thư viện “investpy” mà chúng ta đã cài ở bước 1 để crawl dữ liệu.

Dòng 2: import thư viện “pandas” đã có sẵn khi bạn cài đặt python, để export dữ liệu ra file dạng “.csv”

Dòng 3: chính là dòng crawl dữ liệu, với nguồn crawl từ trang Investing.com . Có 4 tham số bạn cần truyền vào hàm này là :
– stock: Mã cổ phiếu
– country: Quốc gia
– from_date: Ngày bắt đầu lấy giá trị
– to_date: Ngày cuối cùng lấy giá trị

Dòng 4: là dùng thư viện pandas để export ra file .csv, ở đây ví dụ mình sẽ crawl data chứng khoán với mã cổ phiếu là VCB, từ ngày 01/01/2019 đến ngày 15/07/2021, và sau đó lưu ra file “VCB.csv

Rất đơn giản phải không? Bạn chỉ cần run và file .csv sẽ được tạo ra tại thư mục chứa file python của bạn.

Sau khi run file python crawler
Nội dung file .csv

Đối với crypto bạn sử dụng dòng lệnh sau để thay thế dòng code thứ 3:

df= investpy.get_crypto_historical_data(crypto='bitcoin',
                                           from_date='01/01/2014',
                                           to_date='01/01/2019')

Tham khảo thêm các format tại : https://pypi.org/project/investpy/

CHÚC BẠN THÀNH CÔNG !

5 1 vote
Article Rating
Subscribe
Notify of
guest
1 Comment
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Khang
Khang
1 month ago

cho em hỏi, em muốn lấy thêm các giá trị như EMA, MA, Bollinger Bands thì phải làm ntn ạ

1
0
Would love your thoughts, please comment.x
()
x