btgsolutions-dataservices-python-client 4.4.2__tar.gz → 4.5.0__tar.gz
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.
- {btgsolutions_dataservices_python_client-4.4.2/btgsolutions_dataservices_python_client.egg-info → btgsolutions_dataservices_python_client-4.5.0}/PKG-INFO +1 -1
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/__init__.py +1 -1
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/alternative_data_catalog.py +133 -21
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/alternative_data_companies.py +110 -11
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/alternative_data_funds.py +18 -5
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/alternative_data_metadata.py +8 -2
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/alternative_data_ownership.py +51 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0/btgsolutions_dataservices_python_client.egg-info}/PKG-INFO +1 -1
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/LICENSE +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/MANIFEST.in +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/README.md +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/config.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/exceptions.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/__init__.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/alternative_data_macro_markets.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/alternative_data_people.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/authenticator.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/book_scope.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/broker_analytics.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/broker_reference.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/bulk_data.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/company_data.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/corporate_events.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/dataservices_catalog.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/hfn.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/historical_candles.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/historical_candles_crypto.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/intraday_candles.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/intraday_tick_data.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/public_sources.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/quotes.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/reference_data.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/stock_loan.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/ticker_last_event.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/rest/ticker_last_event_polling.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/websocket/__init__.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/websocket/broker_analytics.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/websocket/hfn_websocket_client.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/websocket/market_data_feed.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/websocket/market_data_websocket_client.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices/websocket/websocket_default_functions.py +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices_python_client.egg-info/SOURCES.txt +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices_python_client.egg-info/dependency_links.txt +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices_python_client.egg-info/requires.txt +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/btgsolutions_dataservices_python_client.egg-info/top_level.txt +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/pyproject.toml +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/requirements.txt +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/setup.cfg +0 -0
- {btgsolutions_dataservices_python_client-4.4.2 → btgsolutions_dataservices_python_client-4.5.0}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: btgsolutions_dataservices_python_client
|
|
3
|
-
Version: 4.
|
|
3
|
+
Version: 4.5.0
|
|
4
4
|
Summary: Python package containing several classes and data for extracting and manipulating market and trading data.
|
|
5
5
|
Home-page: https://github.com/BTG-Pactual-Solutions/btgsolutions-dataservices-python-client
|
|
6
6
|
Author: BTG Solutions Data Services powered by BTG Pactual Solutions
|
|
@@ -12,9 +12,12 @@ PUBLIC_SOURCES_CONVENTIONS: dict[str, str] = {
|
|
|
12
12
|
),
|
|
13
13
|
"fund_id": (
|
|
14
14
|
"Fund identifier accepted by fund endpoints. It can be a fund CNPJ; "
|
|
15
|
-
"
|
|
16
|
-
"
|
|
17
|
-
"
|
|
15
|
+
"Brazilian ETF-aware endpoints also accept supported BR ETF tickers "
|
|
16
|
+
"such as BOVA11. Holdings can also accept covered US ETF/fund "
|
|
17
|
+
"identifiers such as SPY when issuer-official or N-PORT coverage is "
|
|
18
|
+
"loaded, but exposures and look-through are limited to Brazilian fund "
|
|
19
|
+
"CNPJs or BR ETF tickers. ETFs and funds are not resolved through the "
|
|
20
|
+
"listed-company directory."
|
|
18
21
|
),
|
|
19
22
|
"shareholder_id": (
|
|
20
23
|
"Shareholder identifier used for reverse ownership lookup, usually a "
|
|
@@ -82,7 +85,10 @@ PUBLIC_SOURCES_DATA_GAPS: dict[str, str] = {
|
|
|
82
85
|
"issuer exposure can be based on ticker-like issuer labels and country "
|
|
83
86
|
"exposure can be empty when the source does not classify country. Use "
|
|
84
87
|
"holdings for constituent-level economic exposure and exposures for "
|
|
85
|
-
"aggregate context."
|
|
88
|
+
"aggregate context. The exposures and look-through endpoints accept "
|
|
89
|
+
"Brazilian fund CNPJs and supported BR ETF tickers; US ETF tickers can "
|
|
90
|
+
"be available through holdings while still being rejected by exposures "
|
|
91
|
+
"or look-through."
|
|
86
92
|
),
|
|
87
93
|
"get_fund_lookthrough": (
|
|
88
94
|
"Look-through is useful when a fund holds other funds that can be "
|
|
@@ -143,10 +149,13 @@ PUBLIC_SOURCES_DATA_GAPS: dict[str, str] = {
|
|
|
143
149
|
"liquidity endpoints separately when contextualizing the margin data."
|
|
144
150
|
),
|
|
145
151
|
"get_beneficial_ownership": (
|
|
146
|
-
"Coverage is
|
|
147
|
-
"
|
|
148
|
-
"
|
|
149
|
-
"and
|
|
152
|
+
"Coverage is primarily US SEC proxy beneficial-owner data, with "
|
|
153
|
+
"Companies House PSC rows only when upstream UK coverage is loaded for "
|
|
154
|
+
"the requested identifier. Brazilian listed companies are not available "
|
|
155
|
+
"in this endpoint and can return 404; use ownership-current, "
|
|
156
|
+
"control-group and free-float endpoints for Brazilian ownership context. "
|
|
157
|
+
"For US companies, ticker, CIK or ISIN can work directly even when the "
|
|
158
|
+
"company-directory search endpoint does not resolve that CIK or ISIN."
|
|
150
159
|
),
|
|
151
160
|
"get_asset_institutional_holders": (
|
|
152
161
|
"Institutional-holder coverage comes from the precomputed asset-holder "
|
|
@@ -157,7 +166,10 @@ PUBLIC_SOURCES_DATA_GAPS: dict[str, str] = {
|
|
|
157
166
|
"that ticker-to-ISIN fallback was used. This endpoint still does not run "
|
|
158
167
|
"the live fund-portfolio/ETF holding lookup used by "
|
|
159
168
|
"get_asset_fund_holders; use get_asset_fund_holders when this endpoint "
|
|
160
|
-
"is empty or when ETF/fund-holder coverage is needed."
|
|
169
|
+
"is empty or when ETF/fund-holder coverage is needed. Do not describe "
|
|
170
|
+
"these rows as SEC 13F unless the returned source fields explicitly "
|
|
171
|
+
"identify a 13F source; fund_asset_ownership rows are fund/ETF holder "
|
|
172
|
+
"snapshots, not issuer top-shareholder or 13F summaries."
|
|
161
173
|
),
|
|
162
174
|
"get_disclosure_documents_repurchase": (
|
|
163
175
|
"Share-repurchase disclosure coverage can be thin for many companies. "
|
|
@@ -342,13 +354,16 @@ PUBLIC_SOURCES_ENDPOINTS: dict[str, dict[str, Any]] = {
|
|
|
342
354
|
"method": "GET",
|
|
343
355
|
"client": "AlternativeDataMetadata",
|
|
344
356
|
"description": (
|
|
345
|
-
"Search listed-company metadata by name, ticker, CNPJ
|
|
346
|
-
"CIK
|
|
347
|
-
"governance, ownership,
|
|
348
|
-
"endpoints."
|
|
357
|
+
"Search listed-company metadata by name, ticker, CNPJ or CVM code; "
|
|
358
|
+
"US rows can include CIK and ISIN fields in the response. Use this "
|
|
359
|
+
"to resolve a company identifier before governance, ownership, "
|
|
360
|
+
"sector, financial-statement or disclosure endpoints. If a CIK, "
|
|
361
|
+
"ISIN or LEI search returns no directory match, try the relevant "
|
|
362
|
+
"company endpoint directly when its parameter documentation accepts "
|
|
363
|
+
"that identifier."
|
|
349
364
|
),
|
|
350
365
|
"parameters": {
|
|
351
|
-
"query": "Free-text query over company name, ticker, CNPJ
|
|
366
|
+
"query": "Free-text query over company name, ticker, CNPJ or CVM code; returned US rows can include CIK and ISIN fields.",
|
|
352
367
|
"jurisdiction": "Optional jurisdiction filter such as 'BR' or 'US'.",
|
|
353
368
|
"limit": "Maximum number of results.",
|
|
354
369
|
"offset": "Pagination offset.",
|
|
@@ -387,7 +402,10 @@ PUBLIC_SOURCES_ENDPOINTS: dict[str, dict[str, Any]] = {
|
|
|
387
402
|
"List ETFs available in the public-sources ETF registry. Use this "
|
|
388
403
|
"for ETF discovery because ETFs are not returned by listed-company "
|
|
389
404
|
"search endpoints. Use include_metrics=False for lightweight "
|
|
390
|
-
"autocomplete/search responses."
|
|
405
|
+
"autocomplete/search responses. Returned rows can combine fund "
|
|
406
|
+
"identity, issuer, index metadata and latest NAV/AUM/holder metrics "
|
|
407
|
+
"from sources such as CVM/FNET, B3 index composition or manager/"
|
|
408
|
+
"issuer official holdings, depending on coverage."
|
|
391
409
|
),
|
|
392
410
|
"parameters": {
|
|
393
411
|
"query": "Free-text filter over ticker, fund name, CNPJ or issuer.",
|
|
@@ -733,13 +751,15 @@ PUBLIC_SOURCES_ENDPOINTS: dict[str, dict[str, Any]] = {
|
|
|
733
751
|
"method": "GET",
|
|
734
752
|
"client": "AlternativeDataCompanies",
|
|
735
753
|
"description": (
|
|
736
|
-
"Get beneficial-owner records from
|
|
737
|
-
"
|
|
754
|
+
"Get beneficial-owner records from US SEC proxy DEF14A data and, "
|
|
755
|
+
"when loaded upstream, UK Companies House PSC data. Brazilian "
|
|
756
|
+
"companies are not available here."
|
|
738
757
|
),
|
|
739
758
|
"parameters": {
|
|
740
759
|
"company_id": (
|
|
741
|
-
"
|
|
742
|
-
"
|
|
760
|
+
"SEC ticker/CIK/ISIN, or a UK company number/name when "
|
|
761
|
+
"Companies House PSC coverage is loaded. Use values such as "
|
|
762
|
+
"AAPL, 0000320193 or US0378331005 for US coverage."
|
|
743
763
|
),
|
|
744
764
|
"holder_type": (
|
|
745
765
|
"Optional holder classification such as individual, institution, "
|
|
@@ -754,6 +774,62 @@ PUBLIC_SOURCES_ENDPOINTS: dict[str, dict[str, Any]] = {
|
|
|
754
774
|
],
|
|
755
775
|
"caveats": [PUBLIC_SOURCES_DATA_GAPS["get_beneficial_ownership"]],
|
|
756
776
|
},
|
|
777
|
+
"AlternativeDataCompanies.get_sec_filings": {
|
|
778
|
+
"category": "companies",
|
|
779
|
+
"path": "companies/sec-filings",
|
|
780
|
+
"method": "GET",
|
|
781
|
+
"client": "AlternativeDataCompanies",
|
|
782
|
+
"description": (
|
|
783
|
+
"Get SEC EDGAR filing metadata for a US company. Use form_type='8-K' "
|
|
784
|
+
"with item='5.02' for director/officer change events, form_type='DEF 14A' "
|
|
785
|
+
"for proxy/governance context, and SC 13D/SC 13G forms for beneficial "
|
|
786
|
+
"ownership filing metadata. This endpoint returns filing metadata and "
|
|
787
|
+
"source URLs, not full filing-text parsing."
|
|
788
|
+
),
|
|
789
|
+
"parameters": {
|
|
790
|
+
"company_id": "SEC ticker, CIK, ISIN or company name.",
|
|
791
|
+
"form_type": "Optional SEC form type filter; accepts comma-separated values such as '8-K,DEF 14A'.",
|
|
792
|
+
"item": "Optional 8-K item filter such as '5.02'.",
|
|
793
|
+
"start_date": "Start filing date in YYYY-MM-DD.",
|
|
794
|
+
"end_date": "End filing date in YYYY-MM-DD.",
|
|
795
|
+
"limit": "Maximum number of filings.",
|
|
796
|
+
"offset": "Pagination offset.",
|
|
797
|
+
},
|
|
798
|
+
"relationships": [
|
|
799
|
+
"company_resolution", "document_market_event_bridge",
|
|
800
|
+
"ownership_fallback",
|
|
801
|
+
],
|
|
802
|
+
"caveats": [
|
|
803
|
+
"10-K metadata is not currently loaded when this endpoint returns zero rows for form_type='10-K'.",
|
|
804
|
+
"8-K item metadata can exist without a parsed event narrative; inspect primary_document before summarizing.",
|
|
805
|
+
],
|
|
806
|
+
},
|
|
807
|
+
"AlternativeDataCompanies.get_sec_schedule_13d_13g": {
|
|
808
|
+
"category": "companies",
|
|
809
|
+
"path": "companies/sec-schedule-13d-13g",
|
|
810
|
+
"method": "GET",
|
|
811
|
+
"client": "AlternativeDataCompanies",
|
|
812
|
+
"description": (
|
|
813
|
+
"Get parsed SEC Schedule 13D/13G beneficial-ownership rows for a US "
|
|
814
|
+
"company, including reporting owner, beneficially owned shares and "
|
|
815
|
+
"percent of class when available. Use get_sec_filings for filing "
|
|
816
|
+
"metadata/source URLs and this endpoint for holder/share fields."
|
|
817
|
+
),
|
|
818
|
+
"parameters": {
|
|
819
|
+
"company_id": "SEC ticker, CIK, ISIN or company name.",
|
|
820
|
+
"start_date": "Start filing date in YYYY-MM-DD.",
|
|
821
|
+
"end_date": "End filing date in YYYY-MM-DD.",
|
|
822
|
+
"limit": "Maximum number of rows.",
|
|
823
|
+
"offset": "Pagination offset.",
|
|
824
|
+
},
|
|
825
|
+
"relationships": [
|
|
826
|
+
"company_resolution", "ownership_fallback",
|
|
827
|
+
"ownership_liquidity_bridge", "document_market_event_bridge",
|
|
828
|
+
],
|
|
829
|
+
"caveats": [
|
|
830
|
+
"Schedule 13D/G rows are US SEC beneficial-ownership filings and should not be treated as Brazilian ownership snapshots.",
|
|
831
|
+
],
|
|
832
|
+
},
|
|
757
833
|
"AlternativeDataCompanies.get_corporate_registry": {
|
|
758
834
|
"category": "companies",
|
|
759
835
|
"path": "companies/corporate-registry",
|
|
@@ -781,8 +857,9 @@ PUBLIC_SOURCES_ENDPOINTS: dict[str, dict[str, Any]] = {
|
|
|
781
857
|
"method": "GET",
|
|
782
858
|
"client": "AlternativeDataCompanies",
|
|
783
859
|
"description": (
|
|
784
|
-
"Get US SEC insider-trading transactions for a US
|
|
785
|
-
"CIK.
|
|
860
|
+
"Get US SEC insider-trading transactions from Forms 3/4/5 for a US "
|
|
861
|
+
"company ticker or CIK. In practice, populated rows are commonly "
|
|
862
|
+
"source='SEC/Form4'. This endpoint is not for Brazilian companies."
|
|
786
863
|
),
|
|
787
864
|
"parameters": {
|
|
788
865
|
"company_id": "US SEC ticker or CIK.",
|
|
@@ -983,6 +1060,10 @@ PUBLIC_SOURCES_ENDPOINTS: dict[str, dict[str, Any]] = {
|
|
|
983
1060
|
"Get a fund or ETF portfolio holdings/positions for a reference date. "
|
|
984
1061
|
"Use this for constituent assets and weights or values, not NAV history. "
|
|
985
1062
|
"Use summary=True and include_raw=False for a compact payload. "
|
|
1063
|
+
"Rows expose source/snapshot_type fields such as B3 index composition, "
|
|
1064
|
+
"manager official holdings, issuer-official holdings or SEC N-PORT "
|
|
1065
|
+
"depending on the covered fund. US official ETF holdings can identify "
|
|
1066
|
+
"assets by CUSIP when ticker/ISIN enrichment is unavailable. "
|
|
986
1067
|
"For CVM/CDA rows without same-day daily NAV, position_weight may be "
|
|
987
1068
|
"computed from the latest prior daily report within seven days; "
|
|
988
1069
|
"company_nav_reference_date and company_nav_source identify that "
|
|
@@ -1218,6 +1299,34 @@ PUBLIC_SOURCES_ENDPOINTS: dict[str, dict[str, Any]] = {
|
|
|
1218
1299
|
},
|
|
1219
1300
|
"relationships": ["document_summary", "document_market_event_bridge"],
|
|
1220
1301
|
},
|
|
1302
|
+
"AlternativeDataOwnership.get_sec_13f_holdings": {
|
|
1303
|
+
"category": "ownership",
|
|
1304
|
+
"path": "sec/13f-holdings",
|
|
1305
|
+
"method": "GET",
|
|
1306
|
+
"client": "AlternativeDataOwnership",
|
|
1307
|
+
"description": (
|
|
1308
|
+
"Get SEC 13F-HR institutional investment-manager holding rows by "
|
|
1309
|
+
"manager_id and/or asset_id. manager_id accepts manager CIK, manager "
|
|
1310
|
+
"name or a SEC registrant ticker when the manager is itself a SEC "
|
|
1311
|
+
"company. asset_id accepts issuer ticker, CUSIP, ISIN or issuer name."
|
|
1312
|
+
),
|
|
1313
|
+
"parameters": {
|
|
1314
|
+
"manager_id": "Optional SEC manager CIK, manager name or SEC registrant ticker.",
|
|
1315
|
+
"asset_id": "Optional issuer ticker, CUSIP, ISIN or issuer name.",
|
|
1316
|
+
"start_date": "Start filing date in YYYY-MM-DD.",
|
|
1317
|
+
"end_date": "End filing date in YYYY-MM-DD.",
|
|
1318
|
+
"limit": "Maximum number of rows.",
|
|
1319
|
+
"offset": "Pagination offset.",
|
|
1320
|
+
},
|
|
1321
|
+
"relationships": [
|
|
1322
|
+
"company_resolution", "ownership_fallback",
|
|
1323
|
+
"ownership_liquidity_bridge", "document_market_event_bridge",
|
|
1324
|
+
],
|
|
1325
|
+
"caveats": [
|
|
1326
|
+
"13F rows are manager filing disclosures, not issuer top-shareholder tables.",
|
|
1327
|
+
"13F does not cover all holders, short positions or non-reporting investors.",
|
|
1328
|
+
],
|
|
1329
|
+
},
|
|
1221
1330
|
"AlternativeDataOwnership.get_ownership_control_group": {
|
|
1222
1331
|
"category": "ownership",
|
|
1223
1332
|
"path": "companies/ownership-control-group",
|
|
@@ -1377,6 +1486,8 @@ PUBLIC_SOURCES_TOOL_ENDPOINTS: dict[str, str] = {
|
|
|
1377
1486
|
"get_governance_compensation": "AlternativeDataCompanies.get_governance_compensation",
|
|
1378
1487
|
"get_related_party": "AlternativeDataCompanies.get_governance_related_party",
|
|
1379
1488
|
"get_beneficial_ownership": "AlternativeDataCompanies.get_governance_beneficial_ownership",
|
|
1489
|
+
"get_sec_filings": "AlternativeDataCompanies.get_sec_filings",
|
|
1490
|
+
"get_sec_schedule_13d_13g": "AlternativeDataCompanies.get_sec_schedule_13d_13g",
|
|
1380
1491
|
"get_corporate_registry": "AlternativeDataCompanies.get_corporate_registry",
|
|
1381
1492
|
"get_insider_trades": "AlternativeDataCompanies.get_insider_trades",
|
|
1382
1493
|
"get_board_changes": "AlternativeDataCompanies.get_board_changes",
|
|
@@ -1400,6 +1511,7 @@ PUBLIC_SOURCES_TOOL_ENDPOINTS: dict[str, str] = {
|
|
|
1400
1511
|
"get_ownership_change_events": "AlternativeDataOwnership.get_ownership_change_events",
|
|
1401
1512
|
"get_ownership_official_notices": "AlternativeDataOwnership.get_ownership_official_notices",
|
|
1402
1513
|
"get_notice_summary": "AlternativeDataOwnership.get_notice_summary",
|
|
1514
|
+
"get_sec_13f_holdings": "AlternativeDataOwnership.get_sec_13f_holdings",
|
|
1403
1515
|
"get_control_group": "AlternativeDataOwnership.get_ownership_control_group",
|
|
1404
1516
|
"get_free_float": "AlternativeDataOwnership.get_ownership_free_float",
|
|
1405
1517
|
"get_shareholder_holdings": "AlternativeDataOwnership.get_shareholder_holdings",
|
|
@@ -75,7 +75,10 @@ class AlternativeDataCompanies:
|
|
|
75
75
|
Parameters
|
|
76
76
|
----------------
|
|
77
77
|
query: str
|
|
78
|
-
Free-text search over company name, ticker, CNPJ, or
|
|
78
|
+
Free-text search over company name, ticker, CNPJ, or CVM code.
|
|
79
|
+
US rows can include CIK and ISIN in the response, but directory
|
|
80
|
+
search by CIK/ISIN/LEI is not a guaranteed resolver; call the
|
|
81
|
+
target endpoint directly when it documents those identifiers.
|
|
79
82
|
Field is not required. Example: 'PETROBRAS'.
|
|
80
83
|
jurisdiction: str
|
|
81
84
|
Filter by jurisdiction: 'BR' or 'US'.
|
|
@@ -105,7 +108,9 @@ class AlternativeDataCompanies:
|
|
|
105
108
|
offset: int = 0,
|
|
106
109
|
) -> dict:
|
|
107
110
|
"""
|
|
108
|
-
Board and executive composition for a company
|
|
111
|
+
Board and executive composition for a company. Brazilian and US SEC
|
|
112
|
+
coverage are the primary loaded sources; UK Companies House coverage is
|
|
113
|
+
conditional on upstream UK data for the identifier.
|
|
109
114
|
Use get_board_changes() for appointment/departure events and
|
|
110
115
|
get_governance_history() for historical snapshot series.
|
|
111
116
|
|
|
@@ -119,8 +124,10 @@ class AlternativeDataCompanies:
|
|
|
119
124
|
Parameters
|
|
120
125
|
----------------
|
|
121
126
|
company_id: str
|
|
122
|
-
Company identifier. Accepts CNPJ, CVM code, B3 ticker,
|
|
123
|
-
|
|
127
|
+
Company identifier. Accepts CNPJ, CVM code, B3 ticker, SEC
|
|
128
|
+
ticker/CIK and, where endpoint resolution supports it, ISIN or
|
|
129
|
+
company name. LEI and UK company-number resolution depend on
|
|
130
|
+
upstream coverage and should be verified with the returned data.
|
|
124
131
|
Field is required. Example: 'PETR4'.
|
|
125
132
|
reference_date: str
|
|
126
133
|
Reference date in YYYY-MM-DD format. Defaults to the most recent filing.
|
|
@@ -352,18 +359,18 @@ class AlternativeDataCompanies:
|
|
|
352
359
|
offset: int = 0,
|
|
353
360
|
) -> dict:
|
|
354
361
|
"""
|
|
355
|
-
Beneficial ownership records from
|
|
356
|
-
|
|
357
|
-
endpoint and can return 404 / "Company not
|
|
358
|
-
listed-company ownership context, prefer
|
|
362
|
+
Beneficial ownership records from US SEC proxy DEF14A data and, when
|
|
363
|
+
loaded upstream, UK Companies House PSC data. Brazilian companies are
|
|
364
|
+
not available in this endpoint and can return 404 / "Company not
|
|
365
|
+
found". For Brazilian listed-company ownership context, prefer
|
|
359
366
|
AlternativeDataOwnership.get_ownership_current(),
|
|
360
367
|
get_ownership_control_group() or get_ownership_free_float().
|
|
361
368
|
|
|
362
369
|
Parameters
|
|
363
370
|
----------------
|
|
364
371
|
company_id: str
|
|
365
|
-
|
|
366
|
-
Field is required. Example: 'AAPL'.
|
|
372
|
+
SEC ticker/CIK/ISIN, or a UK company number/name when Companies
|
|
373
|
+
House PSC coverage is loaded. Field is required. Example: 'AAPL'.
|
|
367
374
|
holder_type: str
|
|
368
375
|
Holder classification filter such as individual, institution,
|
|
369
376
|
director, officer or ten_percent_owner.
|
|
@@ -382,6 +389,95 @@ class AlternativeDataCompanies:
|
|
|
382
389
|
"offset": offset,
|
|
383
390
|
})
|
|
384
391
|
|
|
392
|
+
def get_sec_filings(
|
|
393
|
+
self,
|
|
394
|
+
company_id: str,
|
|
395
|
+
form_type: Optional[Union[str, Sequence[str]]] = None,
|
|
396
|
+
item: Optional[str] = None,
|
|
397
|
+
start_date: Optional[str] = None,
|
|
398
|
+
end_date: Optional[str] = None,
|
|
399
|
+
limit: int = 100,
|
|
400
|
+
offset: int = 0,
|
|
401
|
+
) -> dict:
|
|
402
|
+
"""
|
|
403
|
+
SEC EDGAR filing metadata for a US company. Use this when the filing
|
|
404
|
+
itself is the analytical object, for example 8-K Item 5.02 director or
|
|
405
|
+
executive changes, DEF 14A proxy statements, or SC 13D/13G ownership
|
|
406
|
+
filings. This endpoint returns filing metadata and source document
|
|
407
|
+
URLs; it does not parse full filing text.
|
|
408
|
+
|
|
409
|
+
Parameters
|
|
410
|
+
----------------
|
|
411
|
+
company_id: str
|
|
412
|
+
SEC ticker, CIK, ISIN or company name.
|
|
413
|
+
Field is required. Example: 'AAPL'.
|
|
414
|
+
form_type: str or sequence
|
|
415
|
+
Optional SEC form type filter, comma-separated or a sequence.
|
|
416
|
+
Examples: '8-K', 'DEF 14A', 'SC 13D,SC 13G'.
|
|
417
|
+
item: str
|
|
418
|
+
Optional 8-K item filter. Example: '5.02'.
|
|
419
|
+
start_date: str
|
|
420
|
+
Start filing date in YYYY-MM-DD format.
|
|
421
|
+
Field is not required.
|
|
422
|
+
end_date: str
|
|
423
|
+
End filing date in YYYY-MM-DD format.
|
|
424
|
+
Field is not required.
|
|
425
|
+
limit: int
|
|
426
|
+
Maximum number of filings to return.
|
|
427
|
+
Field is not required. Default: 100.
|
|
428
|
+
offset: int
|
|
429
|
+
Number of results to skip for pagination.
|
|
430
|
+
Field is not required. Default: 0.
|
|
431
|
+
"""
|
|
432
|
+
return self._get("companies/sec-filings", {
|
|
433
|
+
"company_id": company_id,
|
|
434
|
+
"form_type": self._csv_param(form_type),
|
|
435
|
+
"item": item,
|
|
436
|
+
"start_date": start_date,
|
|
437
|
+
"end_date": end_date,
|
|
438
|
+
"limit": limit,
|
|
439
|
+
"offset": offset,
|
|
440
|
+
})
|
|
441
|
+
|
|
442
|
+
def get_sec_schedule_13d_13g(
|
|
443
|
+
self,
|
|
444
|
+
company_id: str,
|
|
445
|
+
start_date: Optional[str] = None,
|
|
446
|
+
end_date: Optional[str] = None,
|
|
447
|
+
limit: int = 100,
|
|
448
|
+
offset: int = 0,
|
|
449
|
+
) -> dict:
|
|
450
|
+
"""
|
|
451
|
+
Parsed SEC Schedule 13D/13G beneficial-ownership filing rows for a US
|
|
452
|
+
company. Use get_sec_filings() for the filing metadata and this endpoint
|
|
453
|
+
for holder, share-count and percent-of-class fields.
|
|
454
|
+
|
|
455
|
+
Parameters
|
|
456
|
+
----------------
|
|
457
|
+
company_id: str
|
|
458
|
+
SEC ticker, CIK, ISIN or company name.
|
|
459
|
+
Field is required. Example: 'AAPL'.
|
|
460
|
+
start_date: str
|
|
461
|
+
Start filing date in YYYY-MM-DD format.
|
|
462
|
+
Field is not required.
|
|
463
|
+
end_date: str
|
|
464
|
+
End filing date in YYYY-MM-DD format.
|
|
465
|
+
Field is not required.
|
|
466
|
+
limit: int
|
|
467
|
+
Maximum number of rows to return.
|
|
468
|
+
Field is not required. Default: 100.
|
|
469
|
+
offset: int
|
|
470
|
+
Number of results to skip for pagination.
|
|
471
|
+
Field is not required. Default: 0.
|
|
472
|
+
"""
|
|
473
|
+
return self._get("companies/sec-schedule-13d-13g", {
|
|
474
|
+
"company_id": company_id,
|
|
475
|
+
"start_date": start_date,
|
|
476
|
+
"end_date": end_date,
|
|
477
|
+
"limit": limit,
|
|
478
|
+
"offset": offset,
|
|
479
|
+
})
|
|
480
|
+
|
|
385
481
|
def get_corporate_registry(
|
|
386
482
|
self,
|
|
387
483
|
company_id: str,
|
|
@@ -439,7 +535,10 @@ class AlternativeDataCompanies:
|
|
|
439
535
|
limit: int = 100,
|
|
440
536
|
) -> dict:
|
|
441
537
|
"""
|
|
442
|
-
Insider trade transactions from SEC Forms 3/4/5 (US only).
|
|
538
|
+
Insider trade transactions from SEC Forms 3/4/5 (US only). Populated
|
|
539
|
+
rows are commonly Form 4 rows and carry source fields such as
|
|
540
|
+
``SEC/Form4``; inspect source/accession_number before stating which
|
|
541
|
+
SEC form supplied a transaction.
|
|
443
542
|
Do not use this endpoint for Brazilian companies; use get_disclosures()
|
|
444
543
|
with document_type='insiders' for Brazilian insider-trading disclosures.
|
|
445
544
|
|
|
@@ -66,7 +66,10 @@ class AlternativeDataFunds:
|
|
|
66
66
|
"""
|
|
67
67
|
List ETFs available in the public-sources ETF registry.
|
|
68
68
|
Use this for ETF discovery because ETFs are not returned by listed-
|
|
69
|
-
company search endpoints.
|
|
69
|
+
company search endpoints. Rows can combine fund identity, issuer,
|
|
70
|
+
index metadata and latest NAV/AUM/holder metrics from sources such as
|
|
71
|
+
CVM/FNET, B3 index composition or manager/issuer official holdings,
|
|
72
|
+
depending on coverage.
|
|
70
73
|
|
|
71
74
|
Parameters
|
|
72
75
|
----------------
|
|
@@ -130,7 +133,11 @@ class AlternativeDataFunds:
|
|
|
130
133
|
asset ticker. For CVM/CDA rows without same-day daily NAV, the API may
|
|
131
134
|
compute position_weight from the latest prior daily report within seven
|
|
132
135
|
days; company_nav_reference_date and company_nav_source identify that
|
|
133
|
-
NAV source when it differs from the holdings reference date.
|
|
136
|
+
NAV source when it differs from the holdings reference date. Rows expose
|
|
137
|
+
source/snapshot_type fields such as B3 index composition, manager
|
|
138
|
+
official holdings, issuer-official holdings or SEC N-PORT depending on
|
|
139
|
+
coverage. US official ETF holdings can identify assets by CUSIP when
|
|
140
|
+
ticker/ISIN enrichment is unavailable.
|
|
134
141
|
|
|
135
142
|
Parameters
|
|
136
143
|
----------------
|
|
@@ -180,7 +187,10 @@ class AlternativeDataFunds:
|
|
|
180
187
|
) -> dict:
|
|
181
188
|
"""
|
|
182
189
|
Portfolio exposures for a Brazilian CVM fund or ETF (asset class,
|
|
183
|
-
issuer, sector, indexer, maturity, country).
|
|
190
|
+
issuer, sector, indexer, maturity, country). This endpoint accepts
|
|
191
|
+
Brazilian fund CNPJs and supported BR ETF tickers. US ETF tickers can
|
|
192
|
+
be available in get_holdings() while still being outside exposures
|
|
193
|
+
coverage.
|
|
184
194
|
Use sector exposure with company sector endpoints when comparing fund
|
|
185
195
|
exposure with B3 company peer groups.
|
|
186
196
|
Exposure dimensions are source-dependent: for Brazilian ETFs, issuer
|
|
@@ -250,8 +260,11 @@ class AlternativeDataFunds:
|
|
|
250
260
|
limit: int = 100,
|
|
251
261
|
) -> dict:
|
|
252
262
|
"""
|
|
253
|
-
Look-through resolution for a fund or ETF (resolves nested
|
|
254
|
-
positions to underlying assets when available).
|
|
263
|
+
Look-through resolution for a Brazilian fund or ETF (resolves nested
|
|
264
|
+
fund positions to underlying assets when available). This endpoint
|
|
265
|
+
accepts Brazilian fund CNPJs and supported BR ETF tickers; US ETF
|
|
266
|
+
tickers can be available in get_holdings() while still being outside
|
|
267
|
+
look-through coverage.
|
|
255
268
|
Use this after holdings when nested fund positions need to be expanded
|
|
256
269
|
into underlying assets.
|
|
257
270
|
For direct-equity ETFs, look-through can return opaque asset_key values
|
|
@@ -125,7 +125,10 @@ class AlternativeDataMetadata:
|
|
|
125
125
|
Parameters
|
|
126
126
|
----------------
|
|
127
127
|
query: str
|
|
128
|
-
Free-text search over company name, ticker, CNPJ, or
|
|
128
|
+
Free-text search over company name, ticker, CNPJ, or CVM code.
|
|
129
|
+
US rows can include CIK and ISIN in the response, but directory
|
|
130
|
+
search by CIK/ISIN/LEI is not a guaranteed resolver; call the
|
|
131
|
+
target endpoint directly when it documents those identifiers.
|
|
129
132
|
Field is not required. Example: 'PETROBRAS'.
|
|
130
133
|
jurisdiction: str
|
|
131
134
|
Filter by jurisdiction: 'BR' or 'US'.
|
|
@@ -157,7 +160,10 @@ class AlternativeDataMetadata:
|
|
|
157
160
|
Parameters
|
|
158
161
|
----------------
|
|
159
162
|
query: str
|
|
160
|
-
Free-text search over company name, ticker, CNPJ, or
|
|
163
|
+
Free-text search over company name, ticker, CNPJ, or CVM code.
|
|
164
|
+
US rows can include CIK and ISIN in the response, but directory
|
|
165
|
+
search by CIK/ISIN/LEI is not a guaranteed resolver; call the
|
|
166
|
+
target endpoint directly when it documents those identifiers.
|
|
161
167
|
Field is not required. Example: 'PETROBRAS'.
|
|
162
168
|
jurisdiction: str
|
|
163
169
|
Filter by jurisdiction: 'BR' or 'US'.
|
|
@@ -364,6 +364,57 @@ class AlternativeDataOwnership:
|
|
|
364
364
|
"offset": offset,
|
|
365
365
|
})
|
|
366
366
|
|
|
367
|
+
def get_sec_13f_holdings(
|
|
368
|
+
self,
|
|
369
|
+
manager_id: Optional[str] = None,
|
|
370
|
+
asset_id: Optional[str] = None,
|
|
371
|
+
start_date: Optional[str] = None,
|
|
372
|
+
end_date: Optional[str] = None,
|
|
373
|
+
limit: int = 100,
|
|
374
|
+
offset: int = 0,
|
|
375
|
+
) -> dict:
|
|
376
|
+
"""
|
|
377
|
+
SEC 13F-HR institutional investment-manager holdings. Use ``manager_id``
|
|
378
|
+
for manager-level filings (CIK, manager name or SEC ticker when the
|
|
379
|
+
manager is itself a SEC registrant) and ``asset_id`` for issuer exposure
|
|
380
|
+
lookup (ticker, CUSIP, ISIN or issuer name).
|
|
381
|
+
|
|
382
|
+
13F rows are manager filing disclosures, not issuer top-shareholder
|
|
383
|
+
tables. They do not cover every holder, non-reporting investors, short
|
|
384
|
+
positions or all economic exposure. Use this endpoint with SEC filings,
|
|
385
|
+
beneficial ownership and market data when the question needs
|
|
386
|
+
institutional-holder context for US-listed assets.
|
|
387
|
+
|
|
388
|
+
Parameters
|
|
389
|
+
----------------
|
|
390
|
+
manager_id: str
|
|
391
|
+
Optional SEC manager CIK, manager name or registrant ticker.
|
|
392
|
+
Example: '0000886982' or 'GOLDMAN SACHS'.
|
|
393
|
+
asset_id: str
|
|
394
|
+
Optional issuer ticker, CUSIP, ISIN or issuer name.
|
|
395
|
+
Example: 'AAPL' or 'US0378331005'.
|
|
396
|
+
start_date: str
|
|
397
|
+
Start filing date in YYYY-MM-DD format.
|
|
398
|
+
Field is not required.
|
|
399
|
+
end_date: str
|
|
400
|
+
End filing date in YYYY-MM-DD format.
|
|
401
|
+
Field is not required.
|
|
402
|
+
limit: int
|
|
403
|
+
Maximum number of rows to return.
|
|
404
|
+
Field is not required. Default: 100.
|
|
405
|
+
offset: int
|
|
406
|
+
Number of results to skip for pagination.
|
|
407
|
+
Field is not required. Default: 0.
|
|
408
|
+
"""
|
|
409
|
+
return self._get("sec/13f-holdings", {
|
|
410
|
+
"manager_id": manager_id,
|
|
411
|
+
"asset_id": asset_id,
|
|
412
|
+
"start_date": start_date,
|
|
413
|
+
"end_date": end_date,
|
|
414
|
+
"limit": limit,
|
|
415
|
+
"offset": offset,
|
|
416
|
+
})
|
|
417
|
+
|
|
367
418
|
def get_institutional_holders(
|
|
368
419
|
self,
|
|
369
420
|
identifier: str,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: btgsolutions_dataservices_python_client
|
|
3
|
-
Version: 4.
|
|
3
|
+
Version: 4.5.0
|
|
4
4
|
Summary: Python package containing several classes and data for extracting and manipulating market and trading data.
|
|
5
5
|
Home-page: https://github.com/BTG-Pactual-Solutions/btgsolutions-dataservices-python-client
|
|
6
6
|
Author: BTG Solutions Data Services powered by BTG Pactual Solutions
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|