Methods และ Attributes ทั้งหมด มีอะไรที่ใช้งานได้



  Methods และ Attributes ทั้งหมด มีอะไรที่ใช้งานได้ 

ความแตกต่างระหว่าง SMART Marketplace (SET), yfinance (Yahoo Finance)

ความน่าเชื่อถือ สูงที่สุด (ข้อมูลตรงจากตลาดฯ) ปานกลาง (ใช้การ Scrape ข้อมูลมาอีกที)

ราคา มีค่าใช้จ่าย (เช่น 250 บาท/เดือน) ฟรี

ความครบถ้วนของข้อมูล "ครบมาก (ปันผล, งบการเงิน, Tick Data)" ข้อมูลพื้นฐานพอมี แต่อาจขาดรายละเอียดเชิงลึก

ความง่ายในการใช้งาน, ต้องสมัครสมาชิก และใช้ API Key ติดตั้ง Library แล้วใช้ได้ทันที (Python)

เสถียรภาพ เสถียรมาก รองรับการทำธุรกิจ ไม่แน่นอน (ถ้า Yahoo เปลี่ยนหน้าเว็บ Library อาจพัง)

ตลาดที่ครอบคลุม เฉพาะหุ้นไทย (SET/TFEX) "ทั่วโลก (สหรัฐฯ, ญี่ปุ่น, ไทย ฯลฯ)"

--------------------------------------------------------------

ใน Methods และ Attributes ทั้งหมด มีอะไรที่ใช้งานได้ 

โค้ดดึงรายชื่อ Methods และ Attributes ทั้งหมด

# Full code

import yfinance as yf


# 1. สร้าง Object ของหุ้น

ticker = yf.Ticker("CPALL.BK")


# 2. ใช้ dir() เพื่อดึงสมาชิกทั้งหมดของ Object

all_members = dir(ticker)


# 3. วนลูปเพื่อแสดงผลเฉพาะ Method/Attribute ที่เราสนใจ (คัดตัวแปรระบบออก)

count = 0

print(f"--- รายชื่อ Methods ทั้งหมดของ yfinance.Ticker ---")


for member in all_members:

    # คัดเฉพาะที่ไม่ขึ้นต้นด้วย __ (Private methods ของ Python)

    if not member.startswith('_'):

        count += 1

        print(f"{count}. {member}")


print("-" * 30)

print(f"รวมทั้งหมดที่ใช้งานได้: {count} รายการ")


#  --------------------------------------- #

.actions: ดูเงินปันผลและการแตกหุ้น

.balance_sheet: ดูงบดุล

.calendar: ดูวันประกาศงบ

.cashflow: ดูงบกระแสเงินสด

.history: ดึงราคาประวัติศาสตร์

.income_stmt: ดูงบกำไรขาดทุน

.insider_transactions: ดูการซื้อขายของผู้บริหาร (ถ้ามีข้อมูล)

.major_holders: ดูผู้ถือหุ้นรายใหญ่


ความแตกต่างระหว่าง Method และ Attribute

ในรายการที่ดึงออกมา:

Attribute: คือข้อมูลดิบ เรียกใช้ได้เลย (เช่น ticker.info, ticker.dividends)

# Attribute

print(ticker.info['sector'])  # ดึง sector ของบริษัท

print(ticker.info['longName'])  # ชื่อเต็มของบริษัท

Method: คือฟังก์ชันที่ต้องมีวงเล็บและใส่พารามิเตอร์ (เช่น ticker.history(period="1y"), ticker.option_chain("2024-12-20"))

# Method

history_data = ticker.history(period="1mo")  # ดึงข้อมูลราคาย้อนหลัง 1 เดือน

print(history_data.head())

dividends = ticker.dividends()  # ดึงข้อมูลปันผล

print(dividends)


# ------------------------------------------ #


Link:

ความคิดเห็น