Borsa İstanbul verilerine readonly SQL erişimi sağlar.
<rules>
- Sadece tek ifadeli okuma amaçlı sorgu yaz (SELECT veya WITH ... SELECT).
- Tablo/kolon ayrıntıları için önce ilgili skill'i `finansal_beceri_yukle([skill_adı])` ile yükle, sonra o şemaya göre sorgu yaz.
- Burada temel veri setleriyle ilgili bilgiler var, her yüklenen "finansal beceri" daha çok tabloyu açığa çıkarabilir.
- Gömülü tablolardan değilse ve bir skill yüklenmeden, yani sana açıkça verilmeden tablo/kolon adları veya şema hakkında tahminde bulunma.
- Birden fazla ifade, `SET`, `SHOW`, `EXPLAIN`, DDL/DML, temp tablo ve benzeri PostgreSQL komutları desteklenmez.
- Sadece temel filtreleme, join, grouping, ordering, DISTINCT, DISTINCT ON, `UNION` / `UNION ALL`, `= ANY(array_kolon)`, `array_kolon @> ARRAY[...]`, `array_kolon <@ ARRAY[...]`, `array_kolon && ARRAY[...]` gibi array ifadeleri, `payload @> '...'::jsonb`, `payload ? 'x'`, `payload ?| ARRAY[...]`, `payload ?& ARRAY[...]` gibi JSONB containment/existence operatörleri, `NULLIF(...)`, `COALESCE(...)`, `CASE WHEN ... THEN ... END`, `ROUND(...)`, `CEIL(...)`, `FLOOR(...)`, `EXTRACT(YEAR FROM zaman_kolonu)`, `INTERVAL '1 day'`, `UNNEST(array_kolon)`, `COUNT(DISTINCT kolon)` gibi aggregate DISTINCT kullanımları, `ROW_NUMBER() OVER (...)`, `PERCENT_RANK() OVER (...)`, `SUM(...) OVER (...)` gibi izinli aggregate window fonksiyonları, FROM/JOIN içinde alias'lı alt sorgular ve `(a, b) IN (SELECT ...)`, `(a, b) = (SELECT x, y ...)` gibi row-value karşılaştırmaları ile izinli yerleşik fonksiyonları kullan.
- Performans için tarih/saat filtrelerini literal değerle ver. CURRENT_DATE kullanma.
- Zaman kolonlarında timezone ipucu kolon isimlerinde bulunur:
- tarih kolonları `*_europe_istanbul` adını taşır ve Europe/Istanbul takvim gününü temsil eder.
- barbar kaynaklı timestamp kolonları `zaman_utc` adını taşır ve UTC'dir. Günlük değer bile olsa UTC isminde `utc` geçerse UTC olarak konrol et.
- Kullanıcı saat verdiğinde önce Türkiye saati (Europe/Istanbul) olarak yorumla, sonra SQL'de UTC literal ile filtrele.
- Örneğin: Veritabından bir _utc kolonundan `2025-03-01 21:00` gelir ama sen kullanıya 2 Mart 2025 dersin çünkü kullanıcı Türkiye'de.
</rules>
Gömülü temel tablo rehberi:
- `hisse_senetleri`: Borsa İstanbul'da işlem gören hisse senetleri.
- `hisse_senedi_kodu` (character varying(10)): Borsa kodu (ticker).
- `unvan` (character varying(255)): Şirketin tam unvanı.
- `aciklama` (text): Şirketin kısa açıklaması.
- `fiili_dolasim_orani` (numeric(5,2)): Fiili dolaşımdaki pay oranı (%).
- `logo` (character varying(100)): Şirket logo URL adresi.
- `sektor_id` (integer): Sektör kimliği (sektorler.id ile eşleşir).
- `fonksiyonel_para_birimi` (character varying(3)): Fonksiyonel para birimi (TRY, USD vb.).
- `son_fiyat` (double precision): Güncel son işlem fiyatı (TRY). Geçmiş fiyat verisi için ohlcv becerisini kullanın.
- `son_fiyat_zaman_utc` (timestamp with time zone): Son fiyatın oluştuğu zaman (UTC).
- `gunici_getiri` (numeric): Gün içi getiri (%).
- `endeksler` (character varying[]): Dahil olduğu endeks kodları listesi.
- `odenmis_sermaye` (numeric): Ödenmiş sermaye (pay adedi).
- `fiili_dolasim_pay_adedi` (numeric): Fiili dolaşımdaki pay adedi.
- `piyasa_degeri` (numeric): Piyasa değeri (TRY). Hesaplama: ödenmiş sermaye × son fiyat.
- `sektorler`: BIST sektör tanımları (hisse_senetleri.sektor_id ile eşleşir).
- `id` (integer): Sektör kimliği.
- `baslik` (character varying(255)): Sektör adı.
- `aciklama` (text): Sektör açıklaması.
- `endeksler`: Borsa İstanbul endeksleri ve anlık fiyat/getiri alanları (XU030, XU050, XU100 vb.).
- `endeks_kodu` (character varying(10)): Endeks kodu, örnek: XU030, XU050, XU100.
- `baslik` (character varying(255)): Endeksin tam adı.
- `son_fiyat` (double precision): Güncel son işlem fiyatı (puan). Geçmiş fiyat verisi için ohlcv becerisini kullanın.
- `son_fiyat_zaman_utc` (timestamp with time zone): Son fiyatın oluştuğu zaman (UTC).
- `gunici_getiri` (numeric): Gün içi getiri (yüzde, bir önceki kapanışa göre).
- `hisse_senedi_tarihsel_carpanlar`: Hisse senetlerinin tarihsel çarpan değerleri.
- `hisse_senedi_kodu` (text): Borsa kodu (hisse_senetleri.hisse_senedi_kodu ile eşleşir).
- `tarih_europe_istanbul` (string): Europe/Istanbul takvim gününü temsil eden tarih kolonu (date).
- `fk` (numeric): Fiyat/Kazanç oranı.
- `pddd` (numeric): Piyasa Değeri / Defter Değeri.
- `fd_favok` (numeric): Firma Değeri / FAVÖK.
- `fd_s` (numeric): Firma Değeri / Satış.
- `roic` (numeric): Yatırılan Sermayenin Getirisi (Return on Invested Capital).
- `hisse_senedi_temettuler`: Hisse senetlerinin temettü dağıtım geçmişi.
- `hisse_senedi_kodu` (character varying(10)): Borsa kodu (hisse_senetleri.hisse_senedi_kodu ile eşleşir).
- `tarih_europe_istanbul` (date): Europe/Istanbul takvim gününü temsil eden tarih kolonu (date).
- `temettu_verimi` (double precision): Temettü verimi (%).
- `nakit_temettu` (bigint): Nakit temettü tutarı.
- `brut_hisse_basi_temettu` (double precision): Brüt hisse başı temettü.
- `net_hisse_basi_temettu` (double precision): Net hisse başı temettü.
- `dagitim_orani` (integer): Dağıtım oranı (%).
- `odendi` (boolean): Ödendi mi? (boolean).
- `hisse_senedi_sermaye_artirimlari`: Hisse senetlerinin sermaye artırımı geçmişi.
- `hisse_senedi_kodu` (character varying(10)): Borsa kodu (hisse_senetleri.hisse_senedi_kodu ile eşleşir).
- `tarih_europe_istanbul` (date): Europe/Istanbul takvim gününü temsil eden tarih kolonu (date).
- `arttirim_sonrasi_sermaye` (bigint): Artırım sonrası sermaye.
- `ihrac_orani` (double precision): İhraç oranı.
- `bedelsiz_oran` (double precision): Bedelsiz sermaye artırımı oranı.
- `ic_kaynaklardan_bedelsiz_oran` (double precision): İç kaynaklardan bedelsiz oran.
- `diger` (double precision): Diğer açıklamalar.
- `dagitildi` (boolean): Dağıtım gerçekleşti mi? (boolean).
- `onaylandi` (boolean): Onaylandı mı? (boolean).
- `ruchan_baslangic_europe_istanbul` (date): Europe/Istanbul takvim gününü temsil eden tarih kolonu (date).
- `ruchan_bitis_europe_istanbul` (date): Europe/Istanbul takvim gününü temsil eden tarih kolonu (date).
- `hisse_finansal_tablolari`: Finansal tablo dönemleri (bilanço, gelir tablosu, nakit akış). Her satır bir şirketin bir finansal dönemidir.
- `hisse_senedi_kodu` (text): Borsa kodu (hisse_senetleri.hisse_senedi_kodu ile eşleşir).
- `yil` (smallint): Finansal dönem yılı.
- `ay` (smallint): Finansal dönem ayı (3, 6, 9 veya 12).
- `yayinlanma_tarihi_utc` (timestamp with time zone): Finansal tablonun KAP'ta yayınlandığı tarih.
- `finansal_rapor_kap_bildirim_id` (bigint): Finansal raporun yayınlandığı KAP bildirim numarası.
- `faaliyet_raporu_kap_bildirim_id` (bigint): Faaliyet raporunun yayınlandığı KAP bildirim numarası.
- `finansal_tablo_sablonu` (text): Şirketin kullandığı finansal tablo şablonu (default, bank, factoring, insurance, leasing, asset_management, doco).
- `hisse_finansal_tablolari_bilanco_kalemleri`: Bilanço kalemleri. Her satır bir dönem için bir bilanço kalemidir (örn: Nakit ve Nakit Benzerleri).
- `hisse_senedi_kodu` (text): Borsa kodu (hisse_senetleri.hisse_senedi_kodu ile eşleşir).
- `yil` (smallint): Finansal dönem yılı.
- `ay` (smallint): Finansal dönem ayı (3, 6, 9 veya 12).
- `satir_no` (smallint): Kalemin bilanço içindeki sırası.
- `kalem` (text): Bilanço kalem adı (kalem isimleri `finansal_tablolar` becerisi ile gelir).
- `try_donemsel` (bigint): Dönemsel TRY değer.
- `usd_donemsel` (bigint): Dönemsel USD değer.
- `eur_donemsel` (bigint): Dönemsel EUR değer.
- `hisse_finansal_tablolari_gelir_tablosu_kalemleri`: Gelir tablosu kalemleri. Her satır bir dönem için bir gelir tablosu kalemidir (örn: Satışlar).
- `hisse_senedi_kodu` (text): Borsa kodu (hisse_senetleri.hisse_senedi_kodu ile eşleşir).
- `yil` (smallint): Finansal dönem yılı.
- `ay` (smallint): Finansal dönem ayı (3, 6, 9 veya 12).
- `satir_no` (smallint): Kalemin gelir tablosu içindeki sırası.
- `kalem` (text): Gelir tablosu kalem adı (kalem isimleri `finansal_tablolar` becerisi ile gelir).
- `try_donemsel` (bigint): Dönemsel TRY değer.
- `usd_donemsel` (bigint): Dönemsel USD değer.
- `eur_donemsel` (bigint): Dönemsel EUR değer.
- `try_ceyreklik` (bigint): Çeyreklik TRY değer.
- `usd_ceyreklik` (bigint): Çeyreklik USD değer.
- `eur_ceyreklik` (bigint): Çeyreklik EUR değer.
- `try_ttm` (bigint): Yıllıklandırılmış (TTM) TRY değer.
- `usd_ttm` (bigint): Yıllıklandırılmış (TTM) USD değer.
- `eur_ttm` (bigint): Yıllıklandırılmış (TTM) EUR değer.
- `hisse_finansal_tablolari_nakit_akis_tablosu_kalemleri`: Nakit akış tablosu kalemleri. Her satır bir dönem için bir nakit akış kalemidir.
- `hisse_senedi_kodu` (text): Borsa kodu (hisse_senetleri.hisse_senedi_kodu ile eşleşir).
- `yil` (smallint): Finansal dönem yılı.
- `ay` (smallint): Finansal dönem ayı (3, 6, 9 veya 12).
- `satir_no` (smallint): Kalemin nakit akış tablosu içindeki sırası.
- `kalem` (text): Nakit akış kalem adı (kalem isimleri `finansal_tablolar` becerisi ile gelir).
- `try_donemsel` (bigint): Dönemsel TRY değer.
- `usd_donemsel` (bigint): Dönemsel USD değer.
- `eur_donemsel` (bigint): Dönemsel EUR değer.
- `try_ceyreklik` (bigint): Çeyreklik TRY değer.
- `usd_ceyreklik` (bigint): Çeyreklik USD değer.
- `eur_ceyreklik` (bigint): Çeyreklik EUR değer.
- `try_ttm` (bigint): Yıllıklandırılmış (TTM) TRY değer.
- `usd_ttm` (bigint): Yıllıklandırılmış (TTM) USD değer.
- `eur_ttm` (bigint): Yıllıklandırılmış (TTM) EUR değer.
- `hisse_finansal_tablolari_finansal_oranlari`: Finansal oranlar (likidite, karlılık, borç vb). Her satır bir dönem için bir finansal orandır.
- `hisse_senedi_kodu` (text): Borsa kodu (hisse_senetleri.hisse_senedi_kodu ile eşleşir).
- `yil` (smallint): Finansal dönem yılı.
- `ay` (smallint): Finansal dönem ayı (3, 6, 9 veya 12).
- `satir_no` (smallint): Oranın kategori içindeki sırası.
- `kategori` (text): Oran kategorisi (oran kategorileri `finansal_tablolar` becerisi ile gelir).
- `oran` (text): Oran adı (oran isimleri `finansal_tablolar` becerisi ile gelir).
- `deger` (numeric): Oran değeri.