borsajs 0.1.4 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +2 -2
- package/README.en.md +181 -1
- package/README.md +186 -0
- package/dist/bond.d.ts +79 -0
- package/dist/bond.d.ts.map +1 -0
- package/dist/bond.js +110 -0
- package/dist/bond.js.map +1 -0
- package/dist/calendar.d.ts +77 -0
- package/dist/calendar.d.ts.map +1 -0
- package/dist/calendar.js +119 -0
- package/dist/calendar.js.map +1 -0
- package/dist/index.d.ts +7 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/providers/dovizcom-bond.d.ts +22 -0
- package/dist/providers/dovizcom-bond.d.ts.map +1 -0
- package/dist/providers/dovizcom-bond.js +132 -0
- package/dist/providers/dovizcom-bond.js.map +1 -0
- package/dist/providers/dovizcom-calendar.d.ts +27 -0
- package/dist/providers/dovizcom-calendar.d.ts.map +1 -0
- package/dist/providers/dovizcom-calendar.js +188 -0
- package/dist/providers/dovizcom-calendar.js.map +1 -0
- package/dist/providers/isyatirim.d.ts +42 -0
- package/dist/providers/isyatirim.d.ts.map +1 -0
- package/dist/providers/isyatirim.js +243 -0
- package/dist/providers/isyatirim.js.map +1 -0
- package/dist/screener.d.ts +134 -0
- package/dist/screener.d.ts.map +1 -0
- package/dist/screener.js +219 -0
- package/dist/screener.js.map +1 -0
- package/package.json +2 -2
- package/src/bond.ts +122 -0
- package/src/calendar.ts +155 -0
- package/src/index.ts +10 -1
- package/src/providers/dovizcom-bond.ts +158 -0
- package/src/providers/dovizcom-calendar.ts +220 -0
- package/src/providers/isyatirim.ts +309 -0
- package/src/screener.ts +284 -0
- package/test/demo.ts +119 -1
package/LICENSE
CHANGED
|
@@ -210,12 +210,12 @@ https://github.com/saidsurucu/borsapy
|
|
|
210
210
|
This library accesses publicly available data from the following sources:
|
|
211
211
|
|
|
212
212
|
- Paratic (https://www.paratic.com/) - Stock and index data
|
|
213
|
-
- doviz.com (https://www.doviz.com/) - Forex, gold, and
|
|
213
|
+
- doviz.com (https://www.doviz.com/) - Forex, gold, commodity, economic calendar, and bond data
|
|
214
214
|
- BtcTurk (https://www.btcturk.com/) - Cryptocurrency data
|
|
215
215
|
- TEFAS (https://www.tefas.gov.tr/) - Investment fund data
|
|
216
216
|
- TCMB (https://www.tcmb.gov.tr/) - Inflation data
|
|
217
217
|
- KAP (https://www.kap.org.tr/) - Company information
|
|
218
|
-
- İş Yatırım (https://www.isyatirim.com.tr/) - Derivatives (VIOP) data
|
|
218
|
+
- İş Yatırım (https://www.isyatirim.com.tr/) - Derivatives (VIOP) and stock screening data
|
|
219
219
|
|
|
220
220
|
================================================================================
|
|
221
221
|
IMPORTANT NOTICE FOR COMMERCIAL USE
|
package/README.en.md
CHANGED
|
@@ -10,6 +10,27 @@ A TypeScript/JavaScript data library for Turkey financial markets. yfinance-like
|
|
|
10
10
|
npm install borsajs
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
+
## Table of Contents
|
|
14
|
+
|
|
15
|
+
- [Quick Start](#quick-start)
|
|
16
|
+
- [API Reference](#api-reference)
|
|
17
|
+
- [Ticker (Stocks)](#ticker-stocks)
|
|
18
|
+
- [FX (Forex & Commodities)](#fx-forex--commodities)
|
|
19
|
+
- [Crypto](#crypto)
|
|
20
|
+
- [Index](#index)
|
|
21
|
+
- [Fund (Investment Funds)](#fund-investment-funds)
|
|
22
|
+
- [Inflation](#inflation)
|
|
23
|
+
- [KAP (Public Disclosure Platform)](#kap-public-disclosure-platform)
|
|
24
|
+
- [EconomicCalendar](#economiccalendar)
|
|
25
|
+
- [Bond](#bond)
|
|
26
|
+
- [Screener](#screener)
|
|
27
|
+
- [VIOP (Derivatives)](#viop-derivatives)
|
|
28
|
+
- [Symbols](#symbols)
|
|
29
|
+
- [Download (Multiple Tickers)](#download-multiple-tickers)
|
|
30
|
+
- [Data Sources](#data-sources)
|
|
31
|
+
- [Important Notices](#️-important-notices)
|
|
32
|
+
- [License](#license)
|
|
33
|
+
|
|
13
34
|
## Quick Start
|
|
14
35
|
|
|
15
36
|
```typescript
|
|
@@ -39,6 +60,8 @@ const cryptoList = await cryptoSymbols(); // → ['BTCTRY', 'ETHTRY', ...] (173
|
|
|
39
60
|
|
|
40
61
|
### Ticker (Stocks)
|
|
41
62
|
|
|
63
|
+
**Get real-time BIST stock prices and volume data in seconds.** The Ticker API provides instant access to current price, daily change, volume, and OHLC (Open-High-Low-Close) values for any stock. Perfect for technical analysis, portfolio tracking, or automated trading strategies.
|
|
64
|
+
|
|
42
65
|
```typescript
|
|
43
66
|
import { Ticker } from 'borsajs';
|
|
44
67
|
|
|
@@ -83,6 +106,8 @@ const history = await stock.getHistory({ period: '5d', interval: '1d' });
|
|
|
83
106
|
|
|
84
107
|
### FX (Forex & Commodities)
|
|
85
108
|
|
|
109
|
+
**Track live exchange rates and commodity prices effortlessly.** Access real-time data for major currencies (USD, EUR, GBP) and precious metals (gold, silver). Essential for currency arbitrage, gold investment strategies, or exchange rate monitoring.
|
|
110
|
+
|
|
86
111
|
```typescript
|
|
87
112
|
import { FX, fxSymbols } from 'borsajs';
|
|
88
113
|
|
|
@@ -107,6 +132,8 @@ const current = await usd.getCurrent();
|
|
|
107
132
|
|
|
108
133
|
### Crypto
|
|
109
134
|
|
|
135
|
+
**Live data from Turkey's largest crypto exchange, BtcTurk.** Access price, volume, and change information for 173 cryptocurrency pairs. The fastest way to track Bitcoin, Ethereum, and other cryptos in Turkish Lira.
|
|
136
|
+
|
|
110
137
|
```typescript
|
|
111
138
|
import { Crypto, cryptoSymbols } from 'borsajs';
|
|
112
139
|
|
|
@@ -136,6 +163,8 @@ const current = await btc.getCurrent();
|
|
|
136
163
|
|
|
137
164
|
### Index
|
|
138
165
|
|
|
166
|
+
**Monitor BIST indices in real-time.** Get current values and percentage changes for market and sector indices like XU100, XU030, XBANK. Essential for analyzing market trends and comparing sectoral performance.
|
|
167
|
+
|
|
139
168
|
```typescript
|
|
140
169
|
import { Index, indexSymbols } from 'borsajs';
|
|
141
170
|
|
|
@@ -163,6 +192,8 @@ const info = await xu100.getInfo();
|
|
|
163
192
|
|
|
164
193
|
### Fund (Investment Funds)
|
|
165
194
|
|
|
195
|
+
**Search and track Turkish investment funds from TEFAS.** Access fund prices, returns, and performance metrics. Compare funds and make informed investment decisions with official data.
|
|
196
|
+
|
|
166
197
|
```typescript
|
|
167
198
|
import { Fund, searchFunds } from 'borsajs';
|
|
168
199
|
|
|
@@ -186,6 +217,8 @@ const info = await fund.getInfo();
|
|
|
186
217
|
|
|
187
218
|
### Inflation
|
|
188
219
|
|
|
220
|
+
**Access official inflation data directly from TCMB (Central Bank).** Query monthly and annual CPI rates, or calculate inflation between any two dates. Critical for evaluating investments on a real return basis.
|
|
221
|
+
|
|
189
222
|
```typescript
|
|
190
223
|
import { Inflation } from 'borsajs';
|
|
191
224
|
|
|
@@ -220,6 +253,14 @@ const calc = await inflation.calculate(100000, '2020-01', '2024-01');
|
|
|
220
253
|
|
|
221
254
|
### KAP (Public Disclosure Platform)
|
|
222
255
|
|
|
256
|
+
**One-stop access to official company announcements and disclosures.** Query disclosures, expected report calendars, and corporate information for all 731 BIST companies. Make investment decisions based on official company statements.
|
|
257
|
+
|
|
258
|
+
**Features:**
|
|
259
|
+
- 🏢 **731 BIST Companies** - Complete list with details
|
|
260
|
+
- 📢 **Live Disclosures** - All company announcements
|
|
261
|
+
- 📅 **Disclosure Calendar** - Financial report dates
|
|
262
|
+
- 🏛️ **Corporate Info** - Sector, market, website
|
|
263
|
+
|
|
223
264
|
```typescript
|
|
224
265
|
import { getKapProvider } from 'borsajs';
|
|
225
266
|
|
|
@@ -299,8 +340,109 @@ const details = await kap.getCompanyDetails('THYAO');
|
|
|
299
340
|
}
|
|
300
341
|
```
|
|
301
342
|
|
|
343
|
+
### EconomicCalendar
|
|
344
|
+
|
|
345
|
+
**Track global economic indicators and events in real-time.** Access economic data, reports, and announcements from TR, US, EU, and other countries. Make investment decisions based on macroeconomic indicators.
|
|
346
|
+
|
|
347
|
+
```typescript
|
|
348
|
+
import { EconomicCalendar, economicCalendar } from 'borsajs';
|
|
349
|
+
|
|
350
|
+
const cal = new EconomicCalendar();
|
|
351
|
+
const events = await cal.thisWeek();
|
|
352
|
+
const highEvents = await cal.highImportance({ period: '1w' });
|
|
353
|
+
|
|
354
|
+
// Convenience function
|
|
355
|
+
const trEvents = await economicCalendar({ country: 'TR', importance: 'high' });
|
|
356
|
+
```
|
|
357
|
+
|
|
358
|
+
**Response:**
|
|
359
|
+
```json
|
|
360
|
+
[
|
|
361
|
+
{
|
|
362
|
+
"date": "2026-01-15T00:00:00.000Z",
|
|
363
|
+
"time": "10:00",
|
|
364
|
+
"country": "Türkiye",
|
|
365
|
+
"countryCode": "TR",
|
|
366
|
+
"event": "Inflation (YoY)",
|
|
367
|
+
"importance": "high",
|
|
368
|
+
"period": "December",
|
|
369
|
+
"actual": "64.77%",
|
|
370
|
+
"forecast": "65.00%",
|
|
371
|
+
"previous": "61.98%"
|
|
372
|
+
}
|
|
373
|
+
]
|
|
374
|
+
```
|
|
375
|
+
|
|
376
|
+
**Supported Countries:** TR, US, EU, DE, GB, JP, CN, FR, IT, CA, AU, CH
|
|
377
|
+
|
|
378
|
+
### Bond
|
|
379
|
+
|
|
380
|
+
**Track Turkish government bond yields in real-time.** Access yields and changes for 2, 5, and 10-year bonds. Get risk-free rate for DCF calculations.
|
|
381
|
+
|
|
382
|
+
```typescript
|
|
383
|
+
import { Bond, bonds, riskFreeRate } from 'borsajs';
|
|
384
|
+
|
|
385
|
+
// Get all bonds
|
|
386
|
+
const allBonds = await bonds();
|
|
387
|
+
// → [{ maturity: '2Y', yield: 36.71, ... }, ...]
|
|
388
|
+
|
|
389
|
+
// Specific bond
|
|
390
|
+
const bond10y = new Bond('10Y');
|
|
391
|
+
const yieldRate = await bond10y.getYieldRate();
|
|
392
|
+
const yieldDecimal = await bond10y.getYieldDecimal();
|
|
393
|
+
|
|
394
|
+
// Risk-free rate for DCF
|
|
395
|
+
const rfr = await riskFreeRate();
|
|
396
|
+
// → 0.2905 (for 29.05%)
|
|
397
|
+
```
|
|
398
|
+
|
|
399
|
+
**Response (bonds):**
|
|
400
|
+
```json
|
|
401
|
+
[
|
|
402
|
+
{
|
|
403
|
+
"name": "TR 2 Year Bond Rate",
|
|
404
|
+
"maturity": "2Y",
|
|
405
|
+
"yield": 36.71,
|
|
406
|
+
"yieldDecimal": 0.3671,
|
|
407
|
+
"change": 0.17,
|
|
408
|
+
"changePct": 0.47
|
|
409
|
+
}
|
|
410
|
+
]
|
|
411
|
+
```
|
|
412
|
+
|
|
413
|
+
### Screener
|
|
414
|
+
|
|
415
|
+
**Screen BIST stocks with 40+ criteria.** Find stocks by market cap, P/E ratio, dividend yield, ROE, and more. Use 15 ready-made templates or custom filters.
|
|
416
|
+
|
|
417
|
+
```typescript
|
|
418
|
+
import { Screener, screenStocks, sectors } from 'borsajs';
|
|
419
|
+
|
|
420
|
+
// Use template
|
|
421
|
+
const highDivStocks = await screenStocks({ template: 'high_dividend' });
|
|
422
|
+
|
|
423
|
+
// Custom filters
|
|
424
|
+
const customStocks = await screenStocks({
|
|
425
|
+
marketCapMin: 1000, // Min 1000M TL
|
|
426
|
+
peMax: 15, // Max 15 P/E
|
|
427
|
+
dividendYieldMin: 3, // Min 3% dividend
|
|
428
|
+
});
|
|
429
|
+
|
|
430
|
+
// Fluent API
|
|
431
|
+
const screener = new Screener();
|
|
432
|
+
const results = await screener
|
|
433
|
+
.addFilter('market_cap', { min: 215000 })
|
|
434
|
+
.addFilter('roe', { min: 15 })
|
|
435
|
+
.run();
|
|
436
|
+
```
|
|
437
|
+
|
|
438
|
+
**Templates:** `small_cap`, `mid_cap`, `large_cap`, `high_dividend`, `high_upside`, `buy_recommendation`, `high_net_margin`, `low_pe`, `high_roe`, `high_foreign_ownership`
|
|
439
|
+
|
|
440
|
+
**Filter Criteria:** price, market_cap, pe, pb, ev_ebitda, dividend_yield, roe, roa, net_margin, return_1w, return_1m, foreign_ratio, upside_potential, and 30+ more criteria.
|
|
441
|
+
|
|
302
442
|
### Symbols
|
|
303
443
|
|
|
444
|
+
**Access all market symbols in a single call.** Get comprehensive lists of stocks, cryptocurrencies, currencies, and indices. Perfect starting point for automated data collection or screening algorithms.
|
|
445
|
+
|
|
304
446
|
```typescript
|
|
305
447
|
import { symbols, searchSymbols, cryptoSymbols, fxSymbols, indexSymbols } from 'borsajs';
|
|
306
448
|
|
|
@@ -320,17 +462,52 @@ console.log(indexSymbols); // → 19 indices
|
|
|
320
462
|
|
|
321
463
|
### VIOP (Derivatives)
|
|
322
464
|
|
|
465
|
+
**Track Turkish derivatives market (futures and options).** Access real-time data for stock futures, index futures, currency futures, and options contracts. Essential for hedging strategies and derivatives trading.
|
|
466
|
+
|
|
323
467
|
```typescript
|
|
324
468
|
import { VIOP } from 'borsajs';
|
|
325
469
|
|
|
326
470
|
const viop = new VIOP();
|
|
471
|
+
|
|
472
|
+
// Get all futures
|
|
327
473
|
const futures = await viop.getFutures();
|
|
474
|
+
|
|
475
|
+
// Stock futures
|
|
476
|
+
const stockFutures = await viop.getStockFutures();
|
|
477
|
+
|
|
478
|
+
// Index futures (XU100, XU030, etc.)
|
|
479
|
+
const indexFutures = await viop.getIndexFutures();
|
|
480
|
+
|
|
481
|
+
// Currency futures (USD, EUR)
|
|
482
|
+
const currencyFutures = await viop.getCurrencyFutures();
|
|
483
|
+
|
|
484
|
+
// Commodity futures (Gold)
|
|
485
|
+
const commodityFutures = await viop.getCommodityFutures();
|
|
486
|
+
|
|
487
|
+
// Options
|
|
328
488
|
const options = await viop.getOptions();
|
|
329
|
-
|
|
489
|
+
|
|
490
|
+
// Contracts for specific stock
|
|
491
|
+
const thyaoContracts = await viop.getBySymbol('THYAO');
|
|
492
|
+
```
|
|
493
|
+
|
|
494
|
+
**Response (Contract Data):**
|
|
495
|
+
```json
|
|
496
|
+
{
|
|
497
|
+
"code": "THYAO",
|
|
498
|
+
"contract": "THYAO0226",
|
|
499
|
+
"price": 275.5,
|
|
500
|
+
"change": 1.25,
|
|
501
|
+
"volumeTl": 15420000,
|
|
502
|
+
"volumeQty": 56000,
|
|
503
|
+
"category": "stock"
|
|
504
|
+
}
|
|
330
505
|
```
|
|
331
506
|
|
|
332
507
|
### Download (Multiple Tickers)
|
|
333
508
|
|
|
509
|
+
**Batch download historical data for multiple stocks at once.** Efficient way to collect OHLCV data for portfolio analysis or backtesting strategies. Get data for dozens of stocks in a single request.
|
|
510
|
+
|
|
334
511
|
```typescript
|
|
335
512
|
import { download, Tickers } from 'borsajs';
|
|
336
513
|
|
|
@@ -351,6 +528,9 @@ This library accesses publicly available data from the following sources:
|
|
|
351
528
|
| Fund | TEFAS | [tefas.gov.tr](https://www.tefas.gov.tr/) | Investment fund data |
|
|
352
529
|
| Inflation | TCMB | [tcmb.gov.tr](https://www.tcmb.gov.tr/) | Inflation data |
|
|
353
530
|
| KAP | KAP | [kap.org.tr](https://www.kap.org.tr/) | Company information |
|
|
531
|
+
| EconomicCalendar | doviz.com | [doviz.com](https://www.doviz.com/) | Economic calendar |
|
|
532
|
+
| Bond | doviz.com | [doviz.com](https://www.doviz.com/) | Bond yields |
|
|
533
|
+
| Screener | İş Yatırım | [isyatirim.com.tr](https://www.isyatirim.com.tr/) | Stock screening |
|
|
354
534
|
| VIOP | İş Yatırım | [isyatirim.com.tr](https://www.isyatirim.com.tr/) | Futures and options |
|
|
355
535
|
|
|
356
536
|
## ⚠️ Important Notices
|
package/README.md
CHANGED
|
@@ -10,6 +10,26 @@ Türkiye finansal piyasaları için TypeScript/JavaScript veri kütüphanesi. BI
|
|
|
10
10
|
npm install borsajs
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
+
## İçindekiler
|
|
14
|
+
|
|
15
|
+
- [Hızlı Başlangıç](#hızlı-başlangıç)
|
|
16
|
+
- [API Referansı](#api-referansı)
|
|
17
|
+
- [Ticker (Hisse Senedi)](#ticker-hisse-senedi)
|
|
18
|
+
- [FX (Döviz & Emtia)](#fx-döviz--emtia)
|
|
19
|
+
- [Crypto (Kripto Para)](#crypto-kripto-para)
|
|
20
|
+
- [Index (Endeksler)](#index-endeksler)
|
|
21
|
+
- [Fund (Yatırım Fonları)](#fund-yatırım-fonları)
|
|
22
|
+
- [Inflation (Enflasyon)](#inflation-enflasyon)
|
|
23
|
+
- [KAP (Kamu Aydınlatma Platformu)](#kap-kamu-aydınlatma-platformu)
|
|
24
|
+
- [EconomicCalendar (Ekonomik Takvim)](#economiccalendar-ekonomik-takvim)
|
|
25
|
+
- [Bond (Tahvil Getirileri)](#bond-tahvil-getirileri)
|
|
26
|
+
- [Screener (Hisse Tarayıcı)](#screener-hisse-tarayıcı)
|
|
27
|
+
- [VIOP (Vadeli İşlem ve Opsiyon Piyasası)](#viop-vadeli-i̇şlem-ve-opsiyon-piyasası)
|
|
28
|
+
- [Symbols (Sembol Listeleri)](#symbols-sembol-listeleri)
|
|
29
|
+
- [Veri Kaynakları](#veri-kaynakları)
|
|
30
|
+
- [Önemli Uyarılar](#️-önemli-uyarılar)
|
|
31
|
+
- [Lisans](#lisans)
|
|
32
|
+
|
|
13
33
|
## Hızlı Başlangıç
|
|
14
34
|
|
|
15
35
|
```typescript
|
|
@@ -39,6 +59,8 @@ const cryptoList = await cryptoSymbols(); // → ['BTCTRY', 'ETHTRY', ...] (173
|
|
|
39
59
|
|
|
40
60
|
### Ticker (Hisse Senedi)
|
|
41
61
|
|
|
62
|
+
**BIST hisselerinin anlık fiyat ve hacim verilerine saniyeler içinde ulaşın.** Ticker API, bir hisse senedinin güncel fiyatı, günlük değişimi, işlem hacmi ve OHLC (açılış-en yüksek-en düşük-kapanış) değerlerini kolayca almanızı sağlar. Teknik analiz, portföy takibi veya otomatik alım-satım stratejileri için ideal.
|
|
63
|
+
|
|
42
64
|
```typescript
|
|
43
65
|
import { Ticker } from 'borsajs';
|
|
44
66
|
|
|
@@ -65,6 +87,8 @@ const info = await stock.getInfo();
|
|
|
65
87
|
|
|
66
88
|
### FX (Döviz & Emtia)
|
|
67
89
|
|
|
90
|
+
**Döviz kurları ve emtia fiyatlarını canlı takip edin.** FX API ile USD, EUR gibi döviz kurlarının yanı sıra altın, gümüş ve ons fiyatlarına anında erişebilirsiniz. Kur takibi, döviz arbitrajı veya altın yatırım stratejileri için güvenilir veri kaynağı.
|
|
91
|
+
|
|
68
92
|
```typescript
|
|
69
93
|
import { FX, fxSymbols } from 'borsajs';
|
|
70
94
|
|
|
@@ -89,6 +113,8 @@ const current = await usd.getCurrent();
|
|
|
89
113
|
|
|
90
114
|
### Crypto (Kripto Para)
|
|
91
115
|
|
|
116
|
+
**Türkiye'nin en büyük kripto borsası BtcTurk'ten anlık veriler.** 173 kripto para çiftinin fiyat, hacim ve değişim bilgilerine erişin. Bitcoin, Ethereum ve diğer kripto paraların TRY karşılığını takip etmek için en hızlı yol.
|
|
117
|
+
|
|
92
118
|
```typescript
|
|
93
119
|
import { Crypto, cryptoSymbols } from 'borsajs';
|
|
94
120
|
|
|
@@ -118,6 +144,8 @@ const current = await btc.getCurrent();
|
|
|
118
144
|
|
|
119
145
|
### Index (Endeksler)
|
|
120
146
|
|
|
147
|
+
**BIST endekslerini gerçek zamanlı izleyin.** XU100, XU030, XBANK gibi sektör ve piyasa endekslerinin güncel değerleri ve yüzdesel değişimlerini alın. Piyasa trendlerini analiz etmek ve sektörel performansı karşılaştırmak için vazgeçilmez.
|
|
148
|
+
|
|
121
149
|
```typescript
|
|
122
150
|
import { Index, indexSymbols } from 'borsajs';
|
|
123
151
|
|
|
@@ -145,6 +173,8 @@ const info = await xu100.getInfo();
|
|
|
145
173
|
|
|
146
174
|
### Inflation (Enflasyon)
|
|
147
175
|
|
|
176
|
+
**TCMB'nin resmi enflasyon verilerine doğrudan erişin.** Aylık ve yıllık TÜFE oranlarını sorgulayın veya geçmiş tarihler arasında enflasyon hesaplayın. Yatırım kararlarınızı reel getiri bazında değerlendirmek için kritik.
|
|
177
|
+
|
|
148
178
|
```typescript
|
|
149
179
|
import { Inflation } from 'borsajs';
|
|
150
180
|
|
|
@@ -179,6 +209,14 @@ const calc = await inflation.calculate(100000, '2020-01', '2024-01');
|
|
|
179
209
|
|
|
180
210
|
### KAP (Kamu Aydınlatma Platformu)
|
|
181
211
|
|
|
212
|
+
**Şirketlerin resmi açıklamalarına ve bildirimlerine tek noktadan ulaşın.** KAP API ile 731 BIST şirketinin bildirimlerini, beklenen rapor takvimlerini ve kurumsal bilgilerini sorgulayabilirsiniz. Yatırım kararlarınızı şirketlerin resmi açıklamaları ışığında alın.
|
|
213
|
+
|
|
214
|
+
**Özellikler:**
|
|
215
|
+
- 🏢 **731 BIST şirketi** - Tüm halka açık şirketlerin listesi ve bilgileri
|
|
216
|
+
- 📢 **Anlık Bildirimler** - Şirketlerin KAP'a yaptığı tüm açıklamalar
|
|
217
|
+
- 📅 **Bildirim Takvimi** - Finansal rapor ve açıklama tarihleri
|
|
218
|
+
- 🏛️ **Kurumsal Bilgiler** - Sektör, pazar, web sitesi bilgileri
|
|
219
|
+
|
|
182
220
|
```typescript
|
|
183
221
|
import { getKapProvider } from 'borsajs';
|
|
184
222
|
|
|
@@ -258,8 +296,153 @@ const details = await kap.getCompanyDetails('THYAO');
|
|
|
258
296
|
}
|
|
259
297
|
```
|
|
260
298
|
|
|
299
|
+
### EconomicCalendar (Ekonomik Takvim)
|
|
300
|
+
|
|
301
|
+
**Küresel ekonomik göstergeleri ve etkinlikleri gerçek zamanlı takip edin.** EconomicCalendar API ile TR, US, EU ve diğer ülkelerin önemli ekonomik verilerini, raporlarını ve açıklamalarını önceden öğrenin. Yatırım kararlarınızı makro ekonomik göstergeler ışığında alın.
|
|
302
|
+
|
|
303
|
+
```typescript
|
|
304
|
+
import { EconomicCalendar, economicCalendar } from 'borsajs';
|
|
305
|
+
|
|
306
|
+
const cal = new EconomicCalendar();
|
|
307
|
+
const events = await cal.thisWeek();
|
|
308
|
+
const highEvents = await cal.highImportance({ period: '1w' });
|
|
309
|
+
|
|
310
|
+
// Convenience fonksiyonu
|
|
311
|
+
const trEvents = await economicCalendar({ country: 'TR', importance: 'high' });
|
|
312
|
+
```
|
|
313
|
+
|
|
314
|
+
**Response:**
|
|
315
|
+
```json
|
|
316
|
+
[
|
|
317
|
+
{
|
|
318
|
+
"date": "2026-01-15T00:00:00.000Z",
|
|
319
|
+
"time": "10:00",
|
|
320
|
+
"country": "Türkiye",
|
|
321
|
+
"countryCode": "TR",
|
|
322
|
+
"event": "Enflasyon (YoY)",
|
|
323
|
+
"importance": "high",
|
|
324
|
+
"period": "Aralık",
|
|
325
|
+
"actual": "64.77%",
|
|
326
|
+
"forecast": "65.00%",
|
|
327
|
+
"previous": "61.98%"
|
|
328
|
+
}
|
|
329
|
+
]
|
|
330
|
+
```
|
|
331
|
+
|
|
332
|
+
**Desteklenen Ülkeler:** TR, US, EU, DE, GB, JP, CN, FR, IT, CA, AU, CH
|
|
333
|
+
|
|
334
|
+
### Bond (Tahvil Getirileri)
|
|
335
|
+
|
|
336
|
+
**Türk devlet tahvillerinin getirilerini anlık izleyin.** Bond API ile 2, 5 ve 10 yıllık tahvil faizlerini ve değişimlerini takip edin. DCF hesaplamaları için risksiz getiri oranına kolayca erişin.
|
|
337
|
+
|
|
338
|
+
```typescript
|
|
339
|
+
import { Bond, bonds, riskFreeRate } from 'borsajs';
|
|
340
|
+
|
|
341
|
+
// Tüm tahvilleri al
|
|
342
|
+
const allBonds = await bonds();
|
|
343
|
+
// → [{ maturity: '2Y', yield: 36.71, ... }, ...]
|
|
344
|
+
|
|
345
|
+
// Belirli bir tahvil
|
|
346
|
+
const bond10y = new Bond('10Y');
|
|
347
|
+
const yieldRate = await bond10y.getYieldRate();
|
|
348
|
+
const yieldDecimal = await bond10y.getYieldDecimal();
|
|
349
|
+
|
|
350
|
+
// DCF hesaplamaları için risksiz getiri
|
|
351
|
+
const rfr = await riskFreeRate();
|
|
352
|
+
// → 0.2905 (29.05% için)
|
|
353
|
+
```
|
|
354
|
+
|
|
355
|
+
**Response (bonds):**
|
|
356
|
+
```json
|
|
357
|
+
[
|
|
358
|
+
{
|
|
359
|
+
"name": "TR 2 Yıllık Tahvil Faizi",
|
|
360
|
+
"maturity": "2Y",
|
|
361
|
+
"yield": 36.71,
|
|
362
|
+
"yieldDecimal": 0.3671,
|
|
363
|
+
"change": 0.17,
|
|
364
|
+
"changePct": 0.47
|
|
365
|
+
}
|
|
366
|
+
]
|
|
367
|
+
```
|
|
368
|
+
|
|
369
|
+
### Screener (Hisse Tarayıcı)
|
|
370
|
+
|
|
371
|
+
**BIST hisselerini 40+ farklı kritere göre tarayın.** Screener API ile piyasa değeri, F/K oranı, temettü verimi, ROE ve daha fazla kritere göre hisse senedi bulun. 15 hazır şablon veya özel filtreler ile yatırım stratejinize uygun hisseleri keşfedin.
|
|
372
|
+
|
|
373
|
+
```typescript
|
|
374
|
+
import { Screener, screenStocks, sectors } from 'borsajs';
|
|
375
|
+
|
|
376
|
+
// Hazır şablon kullan
|
|
377
|
+
const highDivStocks = await screenStocks({ template: 'high_dividend' });
|
|
378
|
+
|
|
379
|
+
// Özel filtreler
|
|
380
|
+
const customStocks = await screenStocks({
|
|
381
|
+
marketCapMin: 1000, // Min 1000M TL
|
|
382
|
+
peMax: 15, // Maks 15 F/K
|
|
383
|
+
dividendYieldMin: 3, // Min %3 temettü
|
|
384
|
+
});
|
|
385
|
+
|
|
386
|
+
// Fluent API
|
|
387
|
+
const screener = new Screener();
|
|
388
|
+
const results = await screener
|
|
389
|
+
.addFilter('market_cap', { min: 215000 })
|
|
390
|
+
.addFilter('roe', { min: 15 })
|
|
391
|
+
.run();
|
|
392
|
+
```
|
|
393
|
+
|
|
394
|
+
**Hazır Şablonlar:** `small_cap`, `mid_cap`, `large_cap`, `high_dividend`, `high_upside`, `buy_recommendation`, `high_net_margin`, `low_pe`, `high_roe`, `high_foreign_ownership`
|
|
395
|
+
|
|
396
|
+
**Filtre Kriterleri:** price, market_cap, pe, pb, ev_ebitda, dividend_yield, roe, roa, net_margin, return_1w, return_1m, foreign_ratio, upside_potential ve 30+ kriter daha.
|
|
397
|
+
|
|
398
|
+
### VIOP (Vadeli İşlem ve Opsiyon Piyasası)
|
|
399
|
+
|
|
400
|
+
**Türk türev piyasasını gerçek zamanlı takip edin.** Hisse senedi vadeli işlemleri, endeks vadeli işlemleri, döviz ve emtia kontratlarına anında erişin. Riskten korunma (hedging) stratejileri ve türev ürün ticareti için vazgeçilmez.
|
|
401
|
+
|
|
402
|
+
```typescript
|
|
403
|
+
import { VIOP } from 'borsajs';
|
|
404
|
+
|
|
405
|
+
const viop = new VIOP();
|
|
406
|
+
|
|
407
|
+
// Tüm vadeli işlemleri al
|
|
408
|
+
const futures = await viop.getFutures();
|
|
409
|
+
|
|
410
|
+
// Hisse senedi vadeli işlemleri
|
|
411
|
+
const stockFutures = await viop.getStockFutures();
|
|
412
|
+
|
|
413
|
+
// Endeks vadeli işlemleri
|
|
414
|
+
const indexFutures = await viop.getIndexFutures();
|
|
415
|
+
|
|
416
|
+
// Döviz vadeli işlemleri
|
|
417
|
+
const currencyFutures = await viop.getCurrencyFutures();
|
|
418
|
+
|
|
419
|
+
// Emtia vadeli işlemleri
|
|
420
|
+
const commodityFutures = await viop.getCommodityFutures();
|
|
421
|
+
|
|
422
|
+
// Opsiyonlar
|
|
423
|
+
const options = await viop.getOptions();
|
|
424
|
+
|
|
425
|
+
// Belirli bir hisse için kontratlar
|
|
426
|
+
const thyaoContracts = await viop.getBySymbol('THYAO');
|
|
427
|
+
```
|
|
428
|
+
|
|
429
|
+
**Response (Contract Data):**
|
|
430
|
+
```json
|
|
431
|
+
{
|
|
432
|
+
"code": "THYAO",
|
|
433
|
+
"contract": "THYAO0226",
|
|
434
|
+
"price": 275.5,
|
|
435
|
+
"change": 1.25,
|
|
436
|
+
"volumeTl": 15420000,
|
|
437
|
+
"volumeQty": 56000,
|
|
438
|
+
"category": "stock"
|
|
439
|
+
}
|
|
440
|
+
```
|
|
441
|
+
|
|
261
442
|
### Symbols (Sembol Listeleri)
|
|
262
443
|
|
|
444
|
+
**Tüm piyasa sembollerine tek çağrıda erişin.** Hisse senetleri, kripto paralar, dövizler ve endekslerin sembol listelerini alın. Otomatik veri çekme veya tarama algoritmaları için mükemmel başlangıç noktası.
|
|
445
|
+
|
|
263
446
|
```typescript
|
|
264
447
|
import { symbols, searchSymbols, cryptoSymbols, fxSymbols, indexSymbols } from 'borsajs';
|
|
265
448
|
|
|
@@ -290,6 +473,9 @@ Bu kütüphane aşağıdaki kamuya açık veri kaynaklarından yararlanmaktadır
|
|
|
290
473
|
| Fund | TEFAS | [tefas.gov.tr](https://www.tefas.gov.tr/) | Yatırım fonu verileri |
|
|
291
474
|
| Inflation | TCMB | [tcmb.gov.tr](https://www.tcmb.gov.tr/) | Enflasyon verileri |
|
|
292
475
|
| KAP | KAP | [kap.org.tr](https://www.kap.org.tr/) | Şirket bilgileri |
|
|
476
|
+
| EconomicCalendar | doviz.com | [doviz.com](https://www.doviz.com/) | Ekonomik takvim |
|
|
477
|
+
| Bond | doviz.com | [doviz.com](https://www.doviz.com/) | Tahvil getirileri |
|
|
478
|
+
| Screener | İş Yatırım | [isyatirim.com.tr](https://www.isyatirim.com.tr/) | Hisse tarama |
|
|
293
479
|
| VIOP | İş Yatırım | [isyatirim.com.tr](https://www.isyatirim.com.tr/) | Vadeli işlem ve opsiyon |
|
|
294
480
|
|
|
295
481
|
## ⚠️ Önemli Uyarılar
|
package/dist/bond.d.ts
ADDED
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bond class for Turkish government bond yields - yfinance-like API.
|
|
3
|
+
*/
|
|
4
|
+
import { type BondData } from './providers/dovizcom-bond.js';
|
|
5
|
+
export type { BondData };
|
|
6
|
+
export declare class Bond {
|
|
7
|
+
private maturity;
|
|
8
|
+
private provider;
|
|
9
|
+
private dataCache;
|
|
10
|
+
/**
|
|
11
|
+
* Create a Bond instance for a specific maturity.
|
|
12
|
+
*
|
|
13
|
+
* @param maturity - Bond maturity (2Y, 5Y, or 10Y)
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* const bond = new Bond('10Y');
|
|
18
|
+
* const yieldRate = await bond.getYieldRate();
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
constructor(maturity: '2Y' | '5Y' | '10Y');
|
|
22
|
+
private getData;
|
|
23
|
+
/**
|
|
24
|
+
* Get the bond maturity.
|
|
25
|
+
*/
|
|
26
|
+
getMaturity(): string;
|
|
27
|
+
/**
|
|
28
|
+
* Get the bond name.
|
|
29
|
+
*/
|
|
30
|
+
getName(): Promise<string>;
|
|
31
|
+
/**
|
|
32
|
+
* Get the current yield as percentage.
|
|
33
|
+
* @returns Yield rate as percentage (e.g., 28.03 for 28.03%)
|
|
34
|
+
*/
|
|
35
|
+
getYieldRate(): Promise<number>;
|
|
36
|
+
/**
|
|
37
|
+
* Get the current yield as decimal.
|
|
38
|
+
* @returns Yield rate as decimal (e.g., 0.2803 for 28.03%)
|
|
39
|
+
*/
|
|
40
|
+
getYieldDecimal(): Promise<number>;
|
|
41
|
+
/**
|
|
42
|
+
* Get the absolute change in yield.
|
|
43
|
+
*/
|
|
44
|
+
getChange(): Promise<number | null>;
|
|
45
|
+
/**
|
|
46
|
+
* Get the percentage change in yield.
|
|
47
|
+
*/
|
|
48
|
+
getChangePct(): Promise<number | null>;
|
|
49
|
+
/**
|
|
50
|
+
* Get all bond information.
|
|
51
|
+
*/
|
|
52
|
+
getInfo(): Promise<BondData>;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Get all Turkish government bond yields.
|
|
56
|
+
*
|
|
57
|
+
* @returns Array of bond data
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* ```typescript
|
|
61
|
+
* import { bonds } from 'borsajs';
|
|
62
|
+
* const allBonds = await bonds();
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
export declare function bonds(): Promise<BondData[]>;
|
|
66
|
+
/**
|
|
67
|
+
* Get the risk-free rate for Turkish market (10Y bond yield).
|
|
68
|
+
*
|
|
69
|
+
* @returns 10-year government bond yield as decimal
|
|
70
|
+
*
|
|
71
|
+
* @example
|
|
72
|
+
* ```typescript
|
|
73
|
+
* import { riskFreeRate } from 'borsajs';
|
|
74
|
+
* const rfr = await riskFreeRate();
|
|
75
|
+
* console.log(`Risk-free rate: ${(rfr * 100).toFixed(2)}%`);
|
|
76
|
+
* ```
|
|
77
|
+
*/
|
|
78
|
+
export declare function riskFreeRate(): Promise<number | null>;
|
|
79
|
+
//# sourceMappingURL=bond.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bond.d.ts","sourceRoot":"","sources":["../src/bond.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAmB,KAAK,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC9E,YAAY,EAAE,QAAQ,EAAE,CAAC;AAEzB,qBAAa,IAAI;IACb,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,SAAS,CAAyB;IAE1C;;;;;;;;;;OAUG;gBACS,QAAQ,EAAE,IAAI,GAAG,IAAI,GAAG,KAAK;YAI3B,OAAO;IAOrB;;OAEG;IACH,WAAW,IAAI,MAAM;IAIrB;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAKhC;;;OAGG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAKrC;;;OAGG;IACG,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;IAKxC;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAKzC;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAK5C;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC;CAGrC;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,KAAK,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CAGjD;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAG3D"}
|