Lấy Dữ liệu Giá Cổ phiếu Hàng ngày với ssi_fc_data
Giới thiệu
Bài viết này hướng dẫn cách sử dụng thư viện ssi_fc_data
để lấy dữ liệu giá cổ phiếu hàng ngày và xử lý bằng Pandas.
Mã nguồn
# Import necessary modules
from ssi_fc_data import fc_md_client, model
import config
import pandas as pd # Import Pandas for DataFrame handling
import json
# Create a Market Data Client
client = fc_md_client.MarketDataClient(config)
# Create a request for daily stock price data
req = model.daily_stock_price(symbol, from_date, to_date) # Lấy dữ liệu cho một hoặc nhiều ngày
# Request daily stock price data using the Market Data Client
data_dict = client.daily_stock_price(config, req)
print(type(data_dict))
print(data_dict)
Giải thích
-
Import thư viện cần thiết
ssi_fc_data
: Thư viện để truy xuất dữ liệu chứng khoán từ SSI.pandas
: Được sử dụng để xử lý dữ liệu dạng bảng.json
: Hỗ trợ xử lý dữ liệu JSON trả về từ API.
-
Khởi tạo client
MarketDataClient(config)
: Tạo client để kết nối với dữ liệu thị trường.
-
Tạo yêu cầu lấy dữ liệu giá cổ phiếu hàng ngày
model.daily_stock_price(symbol, from_date, to_date)
: Xây dựng yêu cầu lấy dữ liệu.
-
Gửi yêu cầu và nhận dữ liệu
client.daily_stock_price(config, req)
: Gửi yêu cầu đến API và nhận dữ liệu.- Kiểm tra kiểu dữ liệu trả về (
print(type(data_dict))
). - In dữ liệu nhận được (
print(data_dict)
).
Cải tiến
✅ Chuyển đổi dữ liệu sang Pandas DataFrame
# Convert JSON data to Pandas DataFrame
df = pd.DataFrame(data_dict)
print(df.head())
✅ Xử lý lỗi khi gửi yêu cầu API
try:
data_dict = client.daily_stock_price(config, req)
df = pd.DataFrame(data_dict)
print(df.head())
except Exception as e:
print("Lỗi khi lấy dữ liệu:", str(e))
✅ Lưu dữ liệu vào CSV để phân tích sau
df.to_csv("stock_data.csv", index=False)
print("Dữ liệu đã được lưu vào stock_data.csv")
📌 Tham khảo thêm: Tài liệu ssi_fc_data