Sheets'e çek: =IMPORTDATA("https://fonfiyat.com.tr/fiyat/AFA";";") Fon kodunu değiştir, hücreye yapıştır. Kayıt yok, key yok.
fonfiyat › Blog › Google Sheets'te TEFAS portföy takibi: 5 hazır tablo

Google Sheets'te TEFAS portföy takibi: 5 hazır tablo

2026-09-30

Beş tablo, hepsi kopyala-yapıştır. Sırayla kuruyoruz; her biri bir öncekinin üstüne geliyor. Sheets'in yerel ayarı Türkiye varsayıldı (ondalık virgül, formül ayracı noktalı virgül).

0. Kurulum: fonları tek sayfaya çek

Her hücrede ayrı istek atmak yerine bütün listeyi bir kez çekip oradan okuyacağız. Yeni bir sayfa aç, adını Fonlar koy, A1'e:

=IMPORTDATA("https://fonfiyat.com.tr/v1/funds.csv";";")

Sütunlar: A kod, B ad, C tarih, D fiyat, E günlük %, F 1 ay, G 3 ay, H 6 ay, I yılbaşı, J 1 yıl, K 3 yıl, L 5 yıl, M büyüklük, N yatırımcı, O kurucu. Emeklilik fonların da varsa aynı formülü ?tip=EMK ile ikinci bir sayfaya çek, ya da ?tip=all ile hepsini tek seferde.

1. Portföy değeri

Ana sayfada A kodlar, B adetler. C ve D:

ABCD
1KodAdetFiyatDeğer
2AFA1000=VLOOKUP(A2;Fonlar!A:D;4;FALSE)=B2*C2
3TTA250=VLOOKUP(A3;Fonlar!A:D;4;FALSE)=B3*C3
…=SUM(D2:D20)

Kodları bilmiyorsan listeden bak. Yanlış kod yazarsan VLOOKUP #N/A verir; IFERROR(…;"") ile sarabilirsin.

2. Günlük kâr/zarar

E sütununa günlük yüzdeyi, F'ye TL karşılığını:

E2: =VLOOKUP(A2;Fonlar!A:E;5;FALSE)
F2: =D2*E2/100

Yüzdeler sitede yüzde cinsinden gelir (0,42 = %0,42), o yüzden 100'e bölüyoruz. Hücreye "%" biçimi vereceksen 0. adımdaki URL'ye &oran=1 ekle ve bölmeyi kaldır.

Alta toplam: =SUM(F2:F20). Bu sayı günün kaç lira kazandırdığı ya da kaybettirdiği.

3. Maliyet ve toplam getiri

G'ye ortalama alış fiyatını elle yaz (aracı kurum ekstresinden). H maliyet, I getiri:

H2: =B2*G2
I2: =D2-H2
J2: =IFERROR(I2/H2;"")   ← yüzde biçimi verebilirsin, bu zaten oran

Portföyün ağırlıklı getirisi: =SUM(I2:I20)/SUM(H2:H20).

4. Fon karşılaştırma

Elindeki fonların dönemsel getirilerini yan yana görmek için kod listesinin yanına:

=ARRAYFORMULA(IFERROR(VLOOKUP(A2:A20;Fonlar!A:L;{5\6\7\9\10};FALSE);""))

Beş sütun gelir: günlük, 1 ay, 3 ay, yılbaşı, 1 yıl. Koşullu biçimlendirmeyle negatifleri kırmızı yap, tablo kendini anlatır.

Fonların birbirine göre nasıl gittiğini görmek için son 30 günü SPARKLINE ile çiz. K sütununa:

=SPARKLINE(INDEX(IMPORTDATA("https://fonfiyat.com.tr/v1/funds/"&A2&"/history.csv?from="&TEXT(TODAY()-30;"yyyy-mm-dd");";");0;2))

Bu formül fon başına bir istek atar; 20 fon için sorun değil, 200 fon için yavaşlar.

5. En iyi fonlar listesi

Fonlar sayfasından sorgu. Son 1 yılda en çok kazandıran 10 fon, en az 1000 yatırımcısı olanlar arasında:

=QUERY(Fonlar!A:O;"select A, B, J, N where N > 1000 order by J desc limit 10";1)

Aynı sorguyu yılbaşı için I, 3 yıl için K ile tekrar et. "Para piyasası" fonlarını ayırmak istersen ada göre filtrele: where B contains 'PARA PİYASASI'. Kurucuya göre: where O = 'AKP'.

Sıralamalar geçmiş getiriyi gösterir, gelecek hakkında bir şey söylemez; bunun neden böyle olduğunu şu yazıda anlattık.

Hazır şablon

Bu tabloların kurulu olduğu şablonu Drive'ına kopyala →

Kendin kuruyorsan ipuçları: IMPORT fonksiyonları yaklaşık saatte bir yenilenir, hafta sonu son Cuma fiyatı görünür, formül çok yavaşlarsa 0. adımdaki tek CSV'yi kullanıp tek tek IMPORTDATA'lardan vazgeç. Hata alırsan sorun giderme bölümü.