tradingcomdados 1.4.10
tradingcomdados

# tradingcomdados

## Introduction
*Trading com Dados Library for quantitative finance*

The library consists of a collection of methods that can be used in order to help Data Scientists, Quantitative Analysts and data professionals during the development of quantitative finance applications. One of the main objectives of the library is to provide methods to connect to Trading com dados' data provider services.

## Library Motivation and Description
Trading com dados is an Edtech that provides educational content for people who want to know quantitative finance and in order to obtain that knowlegde, we need quality data, thus this library and our API service was created to solve that.


## How to install
```python 
pip install tradingcomdados
```



## Alternative Data
You can obtain alternative data from the Brazilian stock exchange (B3) and major U.S. stock exchanges such as NASDAQ, AMEX, and NYSE using this module. The goal is to facilitate data acquisition from sources like CVM, NASDAQ, B3, and others.

**Features:**
- Updated Brazilian index compositions, such as IBOV, IFIX, IBRA, IDIV, SMLL, and BDRX.
- Updated S&P 500 index composition.
- Economic sector classifications for companies listed on the Brazilian stock exchange and major U.S. stock exchanges.
- Active symbols of equities listed on B3 (stocks and BDRs) or investment funds such as Brazilian real estate investment funds (FII) and investment funds in agro-industrial productive chains (FIAGRO).
- Historical cryptocurrency data from Binance.

### Example Usage

```python
from tradingcomdados import alternative_data as ad

# Obtaining the index composition:
ad.index_composition('ibov')
ad.index_composition('sp500')

# Returns the entire DataFrame from B3. You can also pass a list of desired symbols to get their composition:
ad.index_composition('ibov', assets=['RRRP3', 'ABEV3'])
ad.index_composition('sp500', assets=['MMM', 'AAPL'])

# You can use the parameter `mode` to return a list of the index composition symbols:
ad.index_composition('ibov', mode = 'list')
ad.index_composition('sp500', mode = 'list')

# Obtaining economic and sector classifications for companies listed on NASDAQ, NYSE, AMEX, or the Brazilian stock exchange (B3):
ad.get_sectors('B3')
ad.get_sectors('NASDAQ')

# Obtaining sector classification for specific companies listed on B3:
ad.get_sectors(stock_exchange='B3', symbols=['VALE3', 'PETR4'])

# Note: The function supports language options only for B3 data ('pt' for Portuguese; default is 'eng'):
ad.get_sectors(stock_exchange='B3', symbols=['VALE3', 'PETR4'], B3_language='pt')

# Obtaining sector classification for specific companies listed on major U.S. stock exchanges:
ad.get_sectors(stock_exchange='AMEX', symbols=['ZOM', 'AAMC'])
ad.get_sectors(stock_exchange='NASDAQ', symbols=['AAPL', 'META', 'TSLA', 'MSFT'])

# Obtaining a DataFrame of active symbols for a specific asset class listed on the Brazilian stock exchange (B3):
ad.get_symbols('STOCK')
ad.get_symbols('FII')
ad.get_symbols('BDR')

# You can use the parameter `mode` to return a list of symbols. Defaults to 'df' (DataFrame):
ad.get_symbols('BDR', mode='list')

# Retrieving historical cryptocurrency data from Binance: 
ad.get_histdata_binance('BTCUSDT', '5m', '2024-01-01', '2024-03-01')

```


## Funds Data
Fetches data of investment funds from the Brazilian Securities and Exchange Commission (CVM)


```python
from tradingcomdados import funds_data as fd

# Fetching daily data containing information such as quote value, number of investors, and so on

# It is mandatory to specify start and end dates.

# Example with a specific CNPJ:
fd.get_fund_data(start='2024-07-01', end='2024-07-10', cnpj='07.593.972/0001-86')

# Example without specifying a CNPJ (fetches data for all funds within the date range):
fd.get_fund_data(start='2024-07-01', end='2024-07-10')

# Fetch the registration data of investment funds

# This function can be called with or without specifying a CNPJ.

# Example with a specific CNPJ:
fd.get_funds_info('07.593.972/0001-86')

# Example without specifying a CNPJ (fetches data for all funds):
fd.get_funds_info()


```

## Machine Learning
This library has a few machine learning models that you can use in your daily activities.

With our lib, you can easily implement machine learning models to your daily activities in the financial market.

```python
from tradingcomdados import unsupervised_learning as ul

ul.clustering_pipeline()
```