wbfdm 1.50.11__tar.gz → 1.50.13__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.
Potentially problematic release.
This version of wbfdm might be problematic. Click here for more details.
- {wbfdm-1.50.11 → wbfdm-1.50.13}/PKG-INFO +1 -1
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/filters.py +10 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/filters/financials.py +5 -1
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/filters/instruments.py +1 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/llm/create_instrument_news_relationships.py +7 -2
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/instruments/instruments.py +1 -1
- wbfdm-1.50.11/wbfdm/menu.py +0 -11
- {wbfdm-1.50.11 → wbfdm-1.50.13}/.gitignore +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/pyproject.toml +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/admin/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/admin/classifications.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/admin/esg.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/admin/exchanges.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/admin/instrument_lists.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/admin/instrument_prices.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/admin/instrument_requests.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/admin/instruments.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/admin/instruments_relationships.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/admin/options.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/esg/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/esg/enums.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/esg/esg_analysis.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/esg/utils.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/financial_analysis/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/financial_analysis/financial_metric_analysis.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/financial_analysis/financial_ratio_analysis.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/financial_analysis/financial_statistics_analysis.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/financial_analysis/statement_with_estimates.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/financial_analysis/utils.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/technical_analysis/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/technical_analysis/technical_analysis.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/technical_analysis/traces.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/utils.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/apps.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/backends/dto.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/dsws/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/dsws/client.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/dsws/dataloaders/market_data.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/internal/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/internal/dataloaders/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/internal/dataloaders/market_data.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/admin/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/admin/instruments.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/admin/metrics.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/apps.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/backends/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/backends/base.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/backends/performances.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/backends/statistics.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/backends/utils.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/decorators.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/dispatch.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/dto.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/exceptions.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/factories.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/migrations/0001_initial.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/migrations/0002_remove_instrumentmetric_unique_instrument_metric_and_more.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/migrations/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/models.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/orchestrators.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/registry.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/serializers.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/tasks.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/tests/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/tests/backends/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/tests/backends/test_performances.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/tests/backends/test_statistics.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/tests/conftest.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/tests/test_dto.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/tests/test_models.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/tests/test_tasks.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/tests/test_viewsets.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/urls.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/viewsets/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/viewsets/configs/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/viewsets/configs/display.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/viewsets/configs/menus.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/viewsets/configs/utils.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/viewsets/mixins.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/metric/viewsets/viewsets.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/msci/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/msci/client.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/msci/dataloaders/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/msci/dataloaders/esg.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/msci/dataloaders/esg_controversies.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/msci/sync.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/msci/tests/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/msci/tests/conftest.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/msci/tests/test_client.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/apps.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/database_routers.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/dataloaders/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/dataloaders/adjustments.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/dataloaders/corporate_actions.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/dataloaders/financials.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/dataloaders/market_data.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/dataloaders/officers.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/dataloaders/reporting_dates.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/dataloaders/statements.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/dataloaders/utils.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/jinja2/qa/sql/companies.sql +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/jinja2/qa/sql/ibes/base_estimates.sql +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/jinja2/qa/sql/ibes/calendarized.sql +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/jinja2/qa/sql/ibes/complete.sql +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/jinja2/qa/sql/ibes/estimates.sql +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/jinja2/qa/sql/ibes/financials.sql +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/jinja2/qa/sql/instruments.sql +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/jinja2/qa/sql/quotes.sql +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/sync/exchanges.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/sync/instruments.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/sync/utils.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/contrib/qa/tasks.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/dataloaders/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/dataloaders/cache.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/dataloaders/protocols.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/dataloaders/proxies.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/dataloaders/types.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/dynamic_preferences_registry.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/enums.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/factories/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/factories/classifications.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/factories/controversies.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/factories/exchanges.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/factories/instrument_list.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/factories/instrument_prices.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/factories/instruments.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/factories/instruments_relationships.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/factories/options.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/figures/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/figures/financials/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/figures/financials/financial_analysis_charts.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/figures/financials/financials_charts.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/filters/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/filters/classifications.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/filters/exchanges.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/filters/financials_analysis.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/filters/instrument_prices.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/filters/utils.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/cbinsights/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/cbinsights/deals.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/cbinsights/equities.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/cbinsights/mixin.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/cbinsights/utils/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/cbinsights/utils/classifications.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/cbinsights/utils/client.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/refinitiv/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/refinitiv/daily_fundamental.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/refinitiv/fiscal_period.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/refinitiv/forecast.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/refinitiv/fundamental.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/refinitiv/geographic_segment.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/refinitiv/instrument.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/refinitiv/instrument_price.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/refinitiv/mixin.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/refinitiv/utils/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/refinitiv/utils/controller.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/handlers/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/handlers/instrument.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/handlers/instrument_list.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/handlers/instrument_price.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/handlers/option.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/handlers/private_equities.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/parsers/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/parsers/cbinsights/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/parsers/cbinsights/deals.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/parsers/cbinsights/equities.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/parsers/cbinsights/fundamentals.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/parsers/refinitiv/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/parsers/refinitiv/daily_fundamental.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/parsers/refinitiv/forecast.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/parsers/refinitiv/fundamental.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/parsers/refinitiv/geographic_segment.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/parsers/refinitiv/instrument.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/parsers/refinitiv/instrument_price.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/parsers/refinitiv/utils.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/resources/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/resources/classification.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/resources/instrument_prices.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/resources/instruments.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/jinja2.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/management/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0001_initial.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0002_rename_statements_instrumentlookup_financials_and_more.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0003_instrument_estimate_backend_and_more.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0004_rename_financials_instrumentlookup_statements_and_more.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0005_instrument_corporate_action_backend.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0006_instrument_officer_backend.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0007_instrument_country_instrument_currency_and_more.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0008_controversy.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0009_alter_controversy_flag_alter_controversy_initiated_and_more.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0010_classification_classificationgroup_deal_exchange_and_more.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0011_delete_instrumentlookup_instrument_corporate_actions_and_more.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0012_instrumentprice_created_instrumentprice_modified.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0013_instrument_is_investable_universe_and_more.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0014_alter_controversy_instrument.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0015_instrument_instrument_investible_index.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0016_instrumenttype_name_repr.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0017_instrument_instrument_security_index.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0018_instrument_instrument_level_index.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0019_alter_controversy_source.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0020_optionaggregate_option_and_more.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0021_delete_instrumentdailystatistics.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0022_instrument_cusip_option_open_interest_20d_and_more.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0023_instrument_unique_ric_instrument_unique_rmc_and_more.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0024_option_open_interest_10d_option_volume_10d_and_more.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0025_instrument_is_primary_and_more.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0026_instrument_is_cash_equivalent.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0027_remove_instrument_unique_ric_and_more.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0028_instrumentprice_annualized_daily_volatility.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0029_alter_instrumentprice_volume.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0030_alter_relatedinstrumentthroughmodel_related_type.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/esg/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/esg/controversies.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/exchanges/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/exchanges/exchanges.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/fields.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/fk_fields.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/indicators.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/classifications.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/instrument_lists.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/instrument_prices.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/instrument_relationships.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/instrument_requests.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/instruments.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/llm/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/mixin/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/mixin/financials_computed.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/mixin/financials_serializer_fields.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/mixin/instruments.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/options.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/private_equities.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/querysets.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/utils.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/preferences.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/serializers/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/serializers/esg.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/serializers/exchanges.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/serializers/instruments/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/serializers/instruments/classifications.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/serializers/instruments/instrument_lists.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/serializers/instruments/instrument_prices.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/serializers/instruments/instrument_relationships.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/serializers/instruments/instrument_requests.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/serializers/instruments/instruments.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/serializers/instruments/mixins.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/serializers/officers.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/signals.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/sync/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/sync/abstract.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/sync/runner.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tasks.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/analysis/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/analysis/financial_analysis/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/analysis/financial_analysis/test_statement_with_estimates.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/analysis/financial_analysis/test_utils.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/analysis/test_esg.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/conftest.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/dataloaders/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/dataloaders/test_cache.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/models/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/models/test_classifications.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/models/test_exchanges.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/models/test_instrument_list.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/models/test_instrument_prices.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/models/test_instruments.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/models/test_merge.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/models/test_options.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/test_tasks.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/tests/tests.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/urls.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/utils.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/buttons/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/buttons/classifications.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/buttons/exchanges.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/buttons/instrument_prices.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/buttons/instruments.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/display/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/display/classifications.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/display/esg.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/display/exchanges.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/display/financial_summary.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/display/instrument_lists.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/display/instrument_prices.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/display/instrument_requests.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/display/instruments.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/display/instruments_relationships.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/display/monthly_performances.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/display/officers.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/display/prices.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/display/statement_with_estimates.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/display/statements.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/endpoints/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/endpoints/classifications.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/endpoints/esg.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/endpoints/exchanges.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/endpoints/financials_analysis.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/endpoints/instrument_lists.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/endpoints/instrument_prices.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/endpoints/instrument_requests.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/endpoints/instruments.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/endpoints/instruments_relationships.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/endpoints/statements.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/menus/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/menus/classifications.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/menus/exchanges.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/menus/instrument_lists.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/menus/instruments.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/menus/instruments_relationships.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/titles/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/titles/classifications.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/titles/esg.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/titles/exchanges.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/titles/financial_ratio_analysis.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/titles/financials_analysis.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/titles/instrument_prices.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/titles/instrument_requests.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/titles/instruments.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/titles/instruments_relationships.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/titles/market_data.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/titles/prices.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/configs/titles/statement_with_estimates.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/esg.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/exchanges.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/financial_analysis/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/financial_analysis/financial_metric_analysis.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/financial_analysis/financial_ratio_analysis.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/financial_analysis/financial_summary.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/financial_analysis/statement_with_estimates.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/instruments/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/instruments/classifications.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/instruments/financials_analysis.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/instruments/instrument_lists.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/instruments/instrument_prices.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/instruments/instrument_requests.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/instruments/instruments_relationships.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/instruments/utils.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/market_data.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/mixins.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/officers.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/prices.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/statements/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/statements/statements.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/technical_analysis/__init__.py +0 -0
- {wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/viewsets/technical_analysis/monthly_performances.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: wbfdm
|
|
3
|
-
Version: 1.50.
|
|
3
|
+
Version: 1.50.13
|
|
4
4
|
Summary: The workbench module ensures rapid access to diverse financial data (market, fundamental, forecasts, ESG), with features for storing instruments, classifying them, and conducting financial analysis.
|
|
5
5
|
Author-email: Christopher Wittlinger <c.wittlinger@stainly.com>
|
|
6
6
|
Requires-Dist: roman==4.*
|
|
@@ -8,6 +8,16 @@ from .registry import backend_registry
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
class InstrumentMetricFilterSet(filters.FilterSet):
|
|
11
|
+
parent_metric = filters.ModelChoiceFilter(
|
|
12
|
+
label="Parent",
|
|
13
|
+
queryset=InstrumentMetric.objects.all(),
|
|
14
|
+
endpoint=InstrumentMetric.get_representation_endpoint(),
|
|
15
|
+
value_key=InstrumentMetric.get_representation_value_key(),
|
|
16
|
+
label_key=InstrumentMetric.get_representation_label_key(),
|
|
17
|
+
hidden=True,
|
|
18
|
+
)
|
|
19
|
+
parent_metric__isnull = filters.BooleanFilter(field_name="parent_metric", lookup_expr="isnull", hidden=True)
|
|
20
|
+
|
|
11
21
|
key = filters.ChoiceFilter(choices=backend_registry.get_choices(), label="Key")
|
|
12
22
|
basket_content_type = filters.ModelChoiceFilter(
|
|
13
23
|
queryset=ContentType.objects.all(),
|
|
@@ -10,7 +10,11 @@ class MarketDataChartFilterSet(filters.FilterSet):
|
|
|
10
10
|
label="Period", method="fake_filter", initial=five_year_data_range, required=True
|
|
11
11
|
)
|
|
12
12
|
chart_type = filters.ChoiceFilter(
|
|
13
|
-
method="fake_filter",
|
|
13
|
+
method="fake_filter",
|
|
14
|
+
label="Chart Type",
|
|
15
|
+
choices=MarketDataChartType.choices,
|
|
16
|
+
required=True,
|
|
17
|
+
initial=MarketDataChartType.CLOSE,
|
|
14
18
|
)
|
|
15
19
|
benchmarks = filters.ModelMultipleChoiceFilter(
|
|
16
20
|
label="Benchmarks",
|
|
@@ -52,6 +52,7 @@ class InstrumentFilterSet(TagFilterMixin, InstrumentFavoriteGroupFilterSet):
|
|
|
52
52
|
label_key=Instrument.get_representation_label_key(),
|
|
53
53
|
hidden=True,
|
|
54
54
|
)
|
|
55
|
+
parent__isnull = wb_filters.BooleanFilter(field_name="parent", lookup_expr="isnull", hidden=True)
|
|
55
56
|
|
|
56
57
|
classifications = wb_filters.ModelChoiceFilter(
|
|
57
58
|
label="Classification",
|
{wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/models/instruments/llm/create_instrument_news_relationships.py
RENAMED
|
@@ -4,8 +4,8 @@ from typing import Any
|
|
|
4
4
|
from celery import shared_task
|
|
5
5
|
from django.contrib.contenttypes.models import ContentType
|
|
6
6
|
from langchain_core.messages import HumanMessage, SystemMessage
|
|
7
|
-
from pydantic import BaseModel, Field
|
|
8
|
-
from wbcore.contrib.ai.exceptions import APIStatusErrors
|
|
7
|
+
from pydantic import BaseModel, Field, ValidationError
|
|
8
|
+
from wbcore.contrib.ai.exceptions import APIStatusErrors, BadRequestErrors
|
|
9
9
|
from wbcore.contrib.ai.llm.utils import run_llm
|
|
10
10
|
|
|
11
11
|
logger = logging.getLogger("llm")
|
|
@@ -82,6 +82,11 @@ def run_company_extraction_llm(title: str, description: str, *args) -> list[dict
|
|
|
82
82
|
"content_object_repr": str(instrument),
|
|
83
83
|
}
|
|
84
84
|
)
|
|
85
|
+
except (
|
|
86
|
+
ValidationError,
|
|
87
|
+
*BadRequestErrors,
|
|
88
|
+
): # we silent bad request error because there is nothing we can do about it
|
|
89
|
+
pass
|
|
85
90
|
except tuple(APIStatusErrors) as e: # for APIStatusError, we let celery retry it
|
|
86
91
|
raise e
|
|
87
92
|
except Exception as e: # otherwise we log the error and silently fail
|
|
@@ -52,7 +52,7 @@ class InstrumentModelViewSet(InstrumentMetricMixin, viewsets.ModelViewSet):
|
|
|
52
52
|
METRIC_SHOW_AGGREGATES = False
|
|
53
53
|
filter_backends = (ObjectPermissionsFilter, DjangoFilterBackend, OrderingFilter, InstrumentSearchFilter)
|
|
54
54
|
|
|
55
|
-
queryset = Instrument.objects.annotate_all()
|
|
55
|
+
queryset = Instrument.objects.annotate_all().exclude(name="")
|
|
56
56
|
serializer_class = InstrumentModelListSerializer
|
|
57
57
|
ordering_fields = (
|
|
58
58
|
"instrument_type",
|
wbfdm-1.50.11/wbfdm/menu.py
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
from django.utils.translation import gettext as _
|
|
2
|
-
from wbcore.menus import ItemPermission, MenuItem
|
|
3
|
-
from wbcore.permissions.shortcuts import is_internal_user
|
|
4
|
-
|
|
5
|
-
INSTRUMENT_MENU_ITEM = MenuItem(
|
|
6
|
-
label=_("Instruments"),
|
|
7
|
-
endpoint="wbfdm:instrument-list",
|
|
8
|
-
permission=ItemPermission(
|
|
9
|
-
method=lambda request: is_internal_user(request.user), permissions=["wbfdm.view_instrument"]
|
|
10
|
-
),
|
|
11
|
-
)
|
|
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
|
{wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/financial_analysis/financial_metric_analysis.py
RENAMED
|
File without changes
|
{wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/financial_analysis/financial_ratio_analysis.py
RENAMED
|
File without changes
|
{wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/financial_analysis/financial_statistics_analysis.py
RENAMED
|
File without changes
|
{wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/analysis/financial_analysis/statement_with_estimates.py
RENAMED
|
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
|
|
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
|
|
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
|
{wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/cbinsights/utils/classifications.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/import_export/backends/refinitiv/geographic_segment.py
RENAMED
|
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
|
{wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0003_instrument_estimate_backend_and_more.py
RENAMED
|
File without changes
|
|
File without changes
|
{wbfdm-1.50.11 → wbfdm-1.50.13}/wbfdm/migrations/0005_instrument_corporate_action_backend.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|