🔀 Veri Akış Haritası

Hangi veri nereden geliyor, hangi API'den hangi modüle akıyor

📡 Dış Kaynaklar → FVT

BIST

Hisse fiyat, endeks, devre kesici → Matriks Radix WS → FVT Stock WS

KAP

Açıklama, bilanço, temettü, sermaye artırımı → FVT scraper → DB + kap_update event

TEFAS

Aylık fon raporu, NAV, holdings → FVT batch → /api/funds/*

Binance

Kripto real-time → wss://stream.binance.com:9443 (direct)

Matriks Radix

BIST PRO real-time → wss://rt.radix.matriksdata.com:443 (JWT)

Anthropic Claude Haiku

LLM → /api/asistan/sor + /api/portfolio/{id}/ai-analysis

YouTube

Canlı yayın iframe → video={canliYayinKod}

VakıfBank

Sanal POS → POST /api/payment/vakifbank/create

🌐 4 Tip Veri Akışı

1️⃣ Dış → İç

[BIST] → Matriks WS → FVT Stock WS → kullanıcı tarayıcı [KAP] → FVT scraper → DB → kap_update event → WS broadcast [TEFAS] → Aylık batch → /api/funds/{kod}/positions [Binance] → Direct WS → kripto fiyat (kullanıcı tarayıcısında) [Claude Haiku] → HTTP API → Apex AI response

2️⃣ İç → İç (CQRS Domain Events)

[trade:changed] → wallet:transaction → balance:changed [portfolio:changed] → React Query invalidate → UI refresh [dividend:changed] → wallet:transaction (gelir) → notification:new [target:changed] → rebalance suggestion [kap_update] → notification:new (portföydeki user)

3️⃣ İç → Kullanıcı

[REST API] /api/* → JSON response → React Query cache → UI render [WebSocket] → 4 internal WS push → BroadcastChannel multi-tab → cache invalidate

4️⃣ Kullanıcı → İç

[POST /api/portfolio/trade] → backend mutation → 4 domain event → cross-module sync [POST /api/social/post] → cashtag parse + trend counter + notif [POST /api/asistan/sor] → intent classify → kural veya Claude Haiku

🎯 Kritik Cross-Module Akışlar

A. Trade → Cüzdan Otomatik Sync

[POST /api/portfolio/trade] │ ▼ [Backend DB TX] ├─ INSERT trades ├─ UPDATE positions (ort. maliyet recalc) ├─ INSERT wallet_transactions └─ UPDATE wallet_balance │ ├─→ Event: trade:changed ├─→ Event: portfolio:changed ├─→ Event: wallet:transaction └─→ Event: balance:changed │ ▼ [WS broadcast] │ ▼ [3 sayfa eş zamanlı refresh] - /portfoy/{id} - /cuzdan - /portfoy (hub)

B. Hisse Fiyat Tick → 7 Sayfa Update

[Matriks WS tick: THYAO 288 → 288.50] │ ▼ [FVT WS Gateway] │ ▼ [emit('data_update', {THYAO, 288.50})] │ ▼ [Subscribed clients receive] │ ├─→ Hisse Detay sayfası ├─→ Portföy (pozisyon değer recalc) ├─→ Favoriler ├─→ Terminal widget ├─→ Hisse Liste tablo ├─→ t-Chat tahmin recalc └─→ Akış cashtag indicator

C. KAP Haber → Notification

[KAP API yeni açıklama] │ ▼ [FVT scraper job (cron)] │ ▼ [DB INSERT: kap_aciklamalari] │ ▼ [Event: kap_update] │ ▼ [WS broadcast tüm clients] │ ▼ [Backend: portföydeki user'lara filter] │ ▼ [INSERT notifications] │ ▼ [/api/notifications/unread-count +1] │ ▼ [UI: bell icon badge]

D. Temettü Dağıtım → Wallet Gelir

[Temettü ödeme günü cron] │ ▼ [Şirket × portföydeki hisse adetler] │ ▼ [Net temettü hesap: Brüt × (1 - 0.15)] │ ▼ [Event: dividend:changed] │ ▼ [Wallet'a otomatik gelir kayıt] │ ▼ [Bildirim: "₺X temettü tahsil edildi"]

E. Apex AI Portföy Analiz

[POST /api/portfolio/{id}/ai-analysis/generate] │ ▼ [Backend: portföy + benchmark data topla] ├─ /portfolio/{id}/holdings ├─ /portfolio/{id}/history ├─ /stocks/indices/XU100 (benchmark) ├─ Altın fiyat ├─ USD kuru └─ Mevduat faizi (~%45/yıl) │ ▼ [Anthropic Claude Haiku API] ├─ System: "Sen Türk finansal danışmansın..." ├─ Context: tüm veriler └─ Response: JSON (skor + SWOT + benchmark + 5 aksiyon) │ ▼ [Cache 24sa (günde 1 hak)] │ ▼ [UI render: 22/100 skor + detaylı analiz]

🔌 Sayfa → Endpoint Map

SayfaTetiklenen Endpoint'ler
/~5-10 (summary + daily-top + smart-money + indices)
/hisseler/yerli/THYAO~10 (stocks/THYAO + 9 sub-endpoint)
/portfoy/{id}13+ paralel (React Query bulk)
/cuzdan~6 (balance + summary + transactions + categories)
/terminal5-15 (widget bağlı)
/t-chat3 + Guess WS subscribe
/canli-yayin~5 + Chat WS
/akis~3 + Social WS subscribe

📊 Endpoint Kaynak Map

EndpointVeri KaynakGüncelleme
/api/stocks/{kod}BIST + MatriksReal-time
/api/stocks/{kod}/bilancoKAPQuarterly
/api/stocks/{kod}/dividendsKAPEvent-driven
/api/stocks/{kod}/fund-positionsTEFAS aylıkMonthly
/api/funds/{kod}TEFASDaily NAV
/api/funds/{kod}/positionsTEFAS aylıkMonthly
/api/funds/predictionsFVT engineReal-time (Guess WS)
/api/funds/smart-moneyTEFAS farkMonthly
/api/funds/fvt-scoreFVT proprietaryDaily
/api/stocks/kripto/{kod}BinanceReal-time
/api/asistan/sorFVT kural + Claude HaikuOn-demand
/api/social/*FVT DBReal-time WS
/api/portfolio/*FVT DB (kullanıcı)User-driven