หากคุณต้องการศึกษาพฤติกรรมตลาดหุ้นหรือสร้างกลยุทธ์การเทรด การเข้าถึงข้อมูลหุ้นย้อนหลังถือเป็นสิ่งสำคัญ แพลตฟอร์มข้อมูลหุ้นของ Yahoo เป็นแหล่งข้อมูลที่ได้รับความนิยม และสามารถใช้ Python ดึงข้อมูลได้แบบอัตโนมัติ ซึ่งทำให้การดึงข้อมูลเป็นเรื่องง่าย ในคู่มือนี้ เราจะแนะนำคุณเกี่ยวกับวิธีการดึงข้อมูลตลาดย้อนหลังของ Apple Inc. (AAPL) โดยใช้ไลบรารี yfinance ใน Python
คำแนะนำแบบทีละขั้นตอน
1. เตรียม environment ของคุณ
ก่อนที่เราจะเริ่มเขียนโค้ด โปรดตรวจสอบว่า Python ได้ถูกติดตั้งอยู่บนระบบของคุณแล้ว คุณสามารถดาวน์โหลดได้จาเว็บไซต์ทางการของ Python นอกจากนี้ คุณจะต้องกำหนดค่าแพ็คเกจ yfinance ซึ่งเป็นอินเทอร์เฟซไปยังข้อมูลตลาดของ Yahoo สำหรับการติดตั้งแพ็กเกจ yfinance ให้เปิด terminal หรือ command prompt และรันคำสั่งต่อไปนี้:
pip install yfinance
2. สร้างโปรแกรม Python
เมื่อคุณได้กำหนดค่าแพ็คเกจตามที่จำเป็นแล้ว เราจะเขียนโค้ด Python เพื่อดึงข้อมูลหุ้น
Import ไลบรารีที่จำเป็น
เราเริ่มด้วยการ import ไลบรารีสำคัญ:
import yfinance as yf import pandas as pd
กำหนดสัญลักษณ์หุ้นและดึงข้อมูล
ต่อไปคือการกำหนด ticker ของ Apple Inc. (AAPL) และดึงข้อมูลหุ้นย้อนหลัง:
# Define the stock symbol ticker = 'AAPL' # Fetch historical stock data for the symbol data = yf.download(ticker, start="2010-01-01", end="2023-01-01") # Show the first few rows of the dataset print(data.head()) # Store the dataset in a CSV file data.to_csv(f'{ticker}_historical_data.csv')
คำอธิบาย:
- Import ไลบรารี: แพ็คเกจ yfinance ใช้ในการรวบรวมข้อมูล และ pandas ช่วยในการจัดการโครงสร้างข้อมูล
- ตั้งสัญลักษณ์หุ้น: เรากำหนด 'AAPL' เป็น ticker สำหรับ Apple Inc.
- ดาวน์โหลดข้อมูล: ฟังก์ชั่น yf.download จะดึงข้อมูลหุ้นย้อนหลังตามช่วงวันที่กำหนด
- แสดงข้อมูล: ด้วยการใช้ print(data.head()) แถวแรก ๆ ของชุดข้อมูลจะถูกแสดงเพื่อให้แน่ใจว่าดึงข้อมูลมาอย่างถูกต้อง
- จัดเก็บเป็น CSV: คำสั่ง data.to_csv จะส่งออกข้อมูลที่ดึงมาเป็นไฟล์ CSV โดยตั้งชื่อตามชื่อหุ้น
3. รันโปรแกรม
บันทึกโปรแกรมในชื่อ เช่น download_stock_data.py หลังจากนั้น ให้เปิด terminal หรือ command prompt ไปยังโฟลเดอร์ที่โปรแกรมของคุณอยู่ และรันโดยใช้คำสั่ง:
python download_stock_data.py
หลังจากรันสคริปต์แล้ว คุณจะเห็นแถวเริ่มต้นของข้อมูลหุ้นแสดงอยู่บนหน้าจอ และไฟล์ CSV ชื่อ AAPL_historical_data.csv จะถูกสร้างขึ้นมาในไดเร็กทอรีเดียวกัน
ตัวอย่างผลลัพธ์
นี่คือตัวอย่างข้อมูลที่มีการแสดงโดย print(data.head()):
สิ่งนี้จะแสดงราคาเปิด ราคาสูงสุด ราคาต่ำสุด ราคาปิด ราคาปิดที่ปรับแล้ว และปริมาณการซื้อขายในวันทำการแรกของปี 2010
บทสรุป
ด้วยการใช้คำสั่ง Python เพียงไม่กี่คำสั่ง คุณก็สามารถดึงและเก็บข้อมูลหุ้นย้อนหลังจากแพลตฟอร์มข้อมูลหุ้นของ Yahoo ได้อย่างง่ายดาย วิธีนี้สามารถปรับเปลี่ยนได้อย่างง่ายดายเพื่อดึงข้อมูลหุ้นใด ๆ ที่มีการซื้อขาย โดยเปลี่ยนแปลงสัญลักษณ์หุ้นและช่วงวันที่