Yatırım dünyasında doğru bilgiye ulaşmak, başarılı bir strateji geliştirmenin temelidir. Hisse senedi yatırımları, potansiyel kazançlar sunarken, aynı zamanda riskler de barındırır. Bu nedenle, temel analiz yapmak, yatırımcıların bilinçli kararlar almasına yardımcı olur. Bu yazıda, Python programlama dili ve yfinance kütüphanesi kullanarak hisse senetlerinin temel analizini nasıl gerçekleştirebileceğinizi öğreneceksiniz.
Temel Analiz Nedir?
Temel analiz, bir şirketin finansal durumunu ve piyasa değerini değerlendirmek için kullanılan bir yöntemdir. Bu analiz, şirketin gelir tablosu, bilanço ve nakit akış tablosu gibi finansal belgelerini inceleyerek yapılır. Yatırımcılar, bu verileri kullanarak şirketin gelecekteki performansını tahmin etmeye çalışır.
Python ile Hisse Senedi Analizi Yapma
Yazdığım Python kodu, yfinance kütüphanesini kullanarak belirli bir hisse senedinin temel analizini yapmanıza olanak tanır. Bu kod, yatırımcıların hisse senedi verilerini anlık olarak çekmesine ve analiz etmesine yardımcı olur. Kullanıcıdan alınan hisse sembolü ile birlikte, kapanış fiyatı, piyasa değeri, temettü verimi gibi önemli finansal verileri sunar.
Kod, ayrıca şirketin finansal oranlarını, gelir tablosunu, bilançosunu ve nakit akışını analiz ederek, yatırımcıların daha bilinçli kararlar almasına yardımcı olur. Örneğin, F/K oranı, PD/DD oranı ve borç/sermaye oranı gibi kritik finansal göstergeleri hesaplayarak, şirketin piyasa değerini ve finansal sağlığını değerlendirir.
Sonuç
Python ile hisse senedi temel analizi yapmak, yatırımcılar için büyük bir avantaj sağlar. yfinance kütüphanesi sayesinde, hisse senedi verilerine kolayca erişebilir ve bu verileri analiz ederek daha bilinçli yatırım kararları alabilirsiniz. Bu tür bir analiz, yatırım stratejinizi güçlendirecek ve piyasa trendlerini daha iyi anlamanızı sağlayacaktır. Hisse senedi yatırımlarınızda başarılar dileriz!
Dikkat
Burada yer alan yatırım bilgi, yorum ve tavsiyeleri yatırım danışmanlığı kapsamında değildir. Yatırım danışmanlığı hizmeti, yetkili kuruluşlar tarafından kişilerin risk ve getiri tercihleri dikkate alınarak kişiye özel sunulmaktadır. Burada yer alan yorum ve tavsiyeler ise genel niteliktedir. Bu tavsiyeler mali durumunuz ile risk ve getiri tercihlerinize uygun olmayabilir. Bu nedenle, sadece burada yer alan bilgilere dayanılarak yatırım kararı verilmesi beklentilerinize uygun sonuçlar doğurmayabilir.
import yfinance as yf
# Temel Analiz Fonksiyonu
def temel_analiz(hisse_adi):
# Hisse senedi verilerini çek
hisse = yf.Ticker(hisse_adi)
bilanço = hisse.balance_sheet
gelir_tablosu = hisse.financials
nakit_akış = hisse.cashflow
finansal_oranlar = hisse.info
# Finansal oranları ve temel bilgileri yazdır
print(f"\n{hisse_adi} Temel Analiz Sonuçları:\n")
# Hisse fiyatı ve piyasa değeri
kapanış_fiyatı = finansal_oranlar.get("currentPrice", "Veri Yok")
piyasa_değeri = finansal_oranlar.get("marketCap", "Veri Yok")
temettu_verimi = finansal_oranlar.get("dividendYield", "Veri Yok")
calisan_sayisi = finansal_oranlar.get("fullTimeEmployees", "Veri Yok")
eps = finansal_oranlar.get("trailingEps", "Veri Yok")
print(f"Kapanış Fiyatı: {kapanış_fiyatı} TL")
print(f"Piyasa Değeri: {piyasa_değeri} TL")
print(f"Temettü Verimi: {temettu_verimi}")
print(f"Çalışan Sayısı: {calisan_sayisi}")
print(f"Hisse Başına Kar (EPS): {eps} TL")
# Finansal Oranlar
beta = finansal_oranlar.get("beta", "Veri Yok")
pe_oranı = finansal_oranlar.get("trailingPE", "Veri Yok")
pb_oranı = finansal_oranlar.get("priceToBook", "Veri Yok")
borç_sermaye = finansal_oranlar.get("debtToEquity", "Veri Yok")
print(f"Beta: {beta}")
print(f"F/K Oranı (PE): {pe_oranı}")
print(f"PD/DD Oranı (PB): {pb_oranı}")
print(f"Borç/Sermaye Oranı: {borç_sermaye}")
# Gelir Tablosu: Toplam Gelir, Net Kar, Faaliyet Giderleri
try:
toplam_gelir = gelir_tablosu.loc['Total Revenue'].iloc[0]
net_kar = gelir_tablosu.loc['Net Income'].iloc[0]
faaliyet_giderleri = gelir_tablosu.loc['Operating Expenses'].iloc[0]
print(f"Toplam Gelir: {toplam_gelir} TL")
print(f"Net Kar: {net_kar} TL")
print(f"Faaliyet Giderleri: {faaliyet_giderleri} TL")
except KeyError:
print("Gelir Tablosu verileri bulunamadı.")
# Bilanço: Toplam Varlıklar, Toplam Yükümlülükler, Borçlar
try:
toplam_varlıklar = bilanço.loc['Total Assets'].iloc[0]
toplam_yükümlülükler = bilanço.loc['Total Liab'].iloc[0]
toplam_borç = bilanço.loc['Short Long Term Debt'].iloc[0]
print(f"Toplam Varlıklar: {toplam_varlıklar} TL")
print(f"Toplam Yükümlülükler: {toplam_yükümlülükler} TL")
print(f"Toplam Borç: {toplam_borç} TL")
except KeyError:
print("Bilanço verileri bulunamadı.")
# Nakit Akış: Faaliyet ve Yatırım Nakit Akışları, Hisse Geri Alımları
try:
faaliyet_nakit_akışı = nakit_akış.loc['Total Cash From Operating Activities'].iloc[0]
yatırım_nakit_akışı = nakit_akış.loc['Total Cashflows From Investing Activities'].iloc[0]
hisse_geri_alımları = nakit_akış.loc['Repurchase of Stock'].iloc[0]
print(f"Faaliyet Nakit Akışı: {faaliyet_nakit_akışı} TL")
print(f"Yatırım Nakit Akışı: {yatırım_nakit_akışı} TL")
print(f"Hisse Geri Alımları: {hisse_geri_alımları} TL")
except KeyError:
print("Nakit Akış verileri bulunamadı.")
# Ek Finansal Bilgiler
faaliyet_marjı = finansal_oranlar.get("operatingMargins", "Veri Yok")
brüt_kar_marjı = finansal_oranlar.get("grossMargins", "Veri Yok")
nakit_değeri = finansal_oranlar.get("totalCash", "Veri Yok")
print(f"Faaliyet Marjı: {faaliyet_marjı}")
print(f"Brüt Kar Marjı: {brüt_kar_marjı}")
print(f"Nakit Değeri: {nakit_değeri} TL")
# Özkaynak Karlılığı (ROE)
try:
özkaynak = bilanço.loc['Total Stockholder Equity'].iloc[0]
roe = (net_kar / özkaynak) * 100
print(f"Özkaynak Karlılığı (ROE): {roe:.2f}%")
except (KeyError, ZeroDivisionError):
print("ROE hesaplanamadı.")
# Hisse Geri Alımları ve Nakit Akış
try:
hisse_geri_alımları = nakit_akış.loc['Repurchase of Stock'].iloc[0]
print(f"Hisse Geri Alımları: {hisse_geri_alımları} TL")
except KeyError:
print("Hisse geri alım verileri bulunamadı.")
# Kullanıcıdan hisse sembolü alma
hisse = input("Analiz etmek istediğiniz hisse senedi sembolünü girin (örn: 'GARAN.IS'): ")
temel_analiz(hisse)



