wbfdm 1.46.3__tar.gz → 1.46.5__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.46.3 → wbfdm-1.46.5}/PKG-INFO +1 -1
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/sync/utils.py +14 -5
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/filters/classifications.py +2 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/filters/instruments.py +2 -9
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/filters/utils.py +10 -1
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tasks.py +2 -2
- {wbfdm-1.46.3 → wbfdm-1.46.5}/.gitignore +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/pyproject.toml +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/admin/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/admin/classifications.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/admin/esg.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/admin/exchanges.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/admin/instrument_lists.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/admin/instrument_prices.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/admin/instrument_requests.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/admin/instruments.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/admin/instruments_relationships.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/admin/options.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/analysis/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/analysis/esg/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/analysis/esg/enums.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/analysis/esg/esg_analysis.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/analysis/esg/utils.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/analysis/financial_analysis/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/analysis/financial_analysis/financial_metric_analysis.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/analysis/financial_analysis/financial_ratio_analysis.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/analysis/financial_analysis/financial_statistics_analysis.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/analysis/financial_analysis/statement_with_estimates.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/analysis/financial_analysis/utils.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/analysis/technical_analysis/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/analysis/technical_analysis/technical_analysis.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/analysis/technical_analysis/traces.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/analysis/utils.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/apps.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/backends/dto.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/dsws/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/dsws/client.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/dsws/dataloaders/market_data.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/internal/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/internal/dataloaders/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/internal/dataloaders/market_data.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/admin/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/admin/instruments.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/admin/metrics.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/apps.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/backends/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/backends/base.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/backends/performances.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/backends/statistics.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/decorators.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/dispatch.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/dto.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/exceptions.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/factories.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/filters.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/migrations/0001_initial.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/migrations/0002_remove_instrumentmetric_unique_instrument_metric_and_more.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/migrations/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/models.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/orchestrators.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/registry.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/serializers.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/tasks.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/tests/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/tests/backends/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/tests/backends/test_performances.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/tests/backends/test_statistics.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/tests/conftest.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/tests/test_dto.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/tests/test_models.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/tests/test_tasks.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/tests/test_viewsets.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/urls.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/viewsets/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/viewsets/configs/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/viewsets/configs/display.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/viewsets/configs/menus.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/viewsets/configs/utils.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/viewsets/mixins.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/metric/viewsets/viewsets.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/msci/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/msci/client.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/msci/dataloaders/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/msci/dataloaders/esg.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/msci/dataloaders/esg_controversies.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/msci/sync.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/msci/tests/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/msci/tests/conftest.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/msci/tests/test_client.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/apps.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/database_routers.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/dataloaders/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/dataloaders/adjustments.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/dataloaders/corporate_actions.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/dataloaders/financials.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/dataloaders/market_data.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/dataloaders/officers.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/dataloaders/reporting_dates.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/dataloaders/statements.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/dataloaders/utils.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/jinja2/qa/sql/companies.sql +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/jinja2/qa/sql/ibes/base_estimates.sql +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/jinja2/qa/sql/ibes/calendarized.sql +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/jinja2/qa/sql/ibes/complete.sql +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/jinja2/qa/sql/ibes/estimates.sql +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/jinja2/qa/sql/ibes/financials.sql +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/jinja2/qa/sql/instruments.sql +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/jinja2/qa/sql/quotes.sql +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/sync/exchanges.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/sync/instruments.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/contrib/qa/tasks.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/dataloaders/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/dataloaders/cache.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/dataloaders/protocols.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/dataloaders/proxies.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/dataloaders/types.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/dynamic_preferences_registry.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/enums.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/factories/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/factories/classifications.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/factories/controversies.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/factories/exchanges.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/factories/instrument_list.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/factories/instrument_prices.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/factories/instruments.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/factories/instruments_relationships.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/factories/options.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/figures/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/figures/financials/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/figures/financials/financial_analysis_charts.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/figures/financials/financials_charts.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/filters/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/filters/exchanges.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/filters/financials.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/filters/financials_analysis.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/filters/instrument_prices.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/cbinsights/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/cbinsights/deals.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/cbinsights/equities.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/cbinsights/mixin.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/cbinsights/utils/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/cbinsights/utils/classifications.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/cbinsights/utils/client.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/refinitiv/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/refinitiv/daily_fundamental.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/refinitiv/fiscal_period.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/refinitiv/forecast.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/refinitiv/fundamental.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/refinitiv/geographic_segment.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/refinitiv/instrument.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/refinitiv/instrument_price.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/refinitiv/mixin.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/refinitiv/utils/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/backends/refinitiv/utils/controller.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/handlers/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/handlers/instrument.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/handlers/instrument_list.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/handlers/instrument_price.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/handlers/option.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/handlers/private_equities.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/parsers/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/parsers/cbinsights/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/parsers/cbinsights/deals.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/parsers/cbinsights/equities.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/parsers/cbinsights/fundamentals.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/parsers/refinitiv/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/parsers/refinitiv/daily_fundamental.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/parsers/refinitiv/forecast.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/parsers/refinitiv/fundamental.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/parsers/refinitiv/geographic_segment.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/parsers/refinitiv/instrument.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/parsers/refinitiv/instrument_price.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/parsers/refinitiv/utils.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/resources/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/resources/classification.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/resources/instrument_prices.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/import_export/resources/instruments.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/jinja2.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/management/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/menu.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0001_initial.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0002_rename_statements_instrumentlookup_financials_and_more.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0003_instrument_estimate_backend_and_more.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0004_rename_financials_instrumentlookup_statements_and_more.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0005_instrument_corporate_action_backend.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0006_instrument_officer_backend.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0007_instrument_country_instrument_currency_and_more.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0008_controversy.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0009_alter_controversy_flag_alter_controversy_initiated_and_more.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0010_classification_classificationgroup_deal_exchange_and_more.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0011_delete_instrumentlookup_instrument_corporate_actions_and_more.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0012_instrumentprice_created_instrumentprice_modified.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0013_instrument_is_investable_universe_and_more.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0014_alter_controversy_instrument.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0015_instrument_instrument_investible_index.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0016_instrumenttype_name_repr.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0017_instrument_instrument_security_index.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0018_instrument_instrument_level_index.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0019_alter_controversy_source.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0020_optionaggregate_option_and_more.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0021_delete_instrumentdailystatistics.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0022_instrument_cusip_option_open_interest_20d_and_more.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0023_instrument_unique_ric_instrument_unique_rmc_and_more.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0024_option_open_interest_10d_option_volume_10d_and_more.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0025_instrument_is_primary_and_more.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0026_instrument_is_cash_equivalent.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0027_remove_instrument_unique_ric_and_more.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0028_instrumentprice_annualized_daily_volatility.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/0029_alter_instrumentprice_volume.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/migrations/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/esg/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/esg/controversies.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/exchanges/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/exchanges/exchanges.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/fields.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/fk_fields.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/indicators.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/classifications.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/instrument_lists.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/instrument_prices.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/instrument_relationships.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/instrument_requests.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/instruments.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/llm/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/llm/create_instrument_news_relationships.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/mixin/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/mixin/financials_computed.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/mixin/financials_serializer_fields.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/mixin/instruments.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/options.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/private_equities.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/querysets.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/models/instruments/utils.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/preferences.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/serializers/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/serializers/esg.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/serializers/exchanges.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/serializers/instruments/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/serializers/instruments/classifications.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/serializers/instruments/instrument_lists.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/serializers/instruments/instrument_prices.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/serializers/instruments/instrument_relationships.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/serializers/instruments/instrument_requests.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/serializers/instruments/instruments.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/serializers/instruments/mixins.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/serializers/officers.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/signals.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/sync/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/sync/abstract.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/sync/runner.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/analysis/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/analysis/financial_analysis/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/analysis/financial_analysis/test_statement_with_estimates.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/analysis/financial_analysis/test_utils.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/analysis/test_esg.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/conftest.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/dataloaders/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/dataloaders/test_cache.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/models/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/models/test_classifications.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/models/test_exchanges.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/models/test_instrument_list.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/models/test_instrument_prices.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/models/test_instruments.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/models/test_merge.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/models/test_options.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/test_tasks.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/tests/tests.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/urls.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/utils.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/buttons/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/buttons/classifications.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/buttons/exchanges.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/buttons/instrument_prices.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/buttons/instruments.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/display/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/display/classifications.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/display/esg.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/display/exchanges.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/display/financial_summary.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/display/instrument_lists.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/display/instrument_prices.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/display/instrument_requests.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/display/instruments.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/display/instruments_relationships.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/display/monthly_performances.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/display/officers.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/display/prices.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/display/statement_with_estimates.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/display/statements.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/endpoints/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/endpoints/classifications.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/endpoints/esg.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/endpoints/exchanges.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/endpoints/financials_analysis.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/endpoints/instrument_lists.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/endpoints/instrument_prices.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/endpoints/instrument_requests.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/endpoints/instruments.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/endpoints/instruments_relationships.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/endpoints/statements.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/menus/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/menus/classifications.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/menus/exchanges.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/menus/instrument_lists.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/menus/instruments.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/menus/instruments_relationships.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/titles/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/titles/classifications.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/titles/esg.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/titles/exchanges.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/titles/financial_ratio_analysis.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/titles/financials_analysis.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/titles/instrument_prices.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/titles/instrument_requests.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/titles/instruments.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/titles/instruments_relationships.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/titles/market_data.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/titles/prices.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/configs/titles/statement_with_estimates.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/esg.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/exchanges.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/financial_analysis/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/financial_analysis/financial_metric_analysis.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/financial_analysis/financial_ratio_analysis.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/financial_analysis/financial_summary.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/financial_analysis/statement_with_estimates.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/instruments/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/instruments/classifications.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/instruments/financials_analysis.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/instruments/instrument_lists.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/instruments/instrument_prices.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/instruments/instrument_requests.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/instruments/instruments.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/instruments/instruments_relationships.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/instruments/utils.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/market_data.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/mixins.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/officers.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/prices.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/statements/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/statements/statements.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/viewsets/technical_analysis/__init__.py +0 -0
- {wbfdm-1.46.3 → wbfdm-1.46.5}/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.46.
|
|
3
|
+
Version: 1.46.5
|
|
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.*
|
|
@@ -114,7 +114,19 @@ def convert_data(data, parent_source: str | None = None) -> dict:
|
|
|
114
114
|
def get_instrument_from_data(data, parent_source: str | None = None) -> Instrument | None:
|
|
115
115
|
if len(data.keys()) == 0:
|
|
116
116
|
return None
|
|
117
|
-
|
|
117
|
+
|
|
118
|
+
defaults = convert_data(data, parent_source)
|
|
119
|
+
try:
|
|
120
|
+
instrument = Instrument.objects.get(source=defaults["source"], source_id=defaults["source_id"])
|
|
121
|
+
instrument.dl_parameters.update(
|
|
122
|
+
defaults.pop("dl_parameters")
|
|
123
|
+
) # we need to update the existing dl parameters to not override its existing value
|
|
124
|
+
for k, v in defaults.items():
|
|
125
|
+
setattr(instrument, k, v)
|
|
126
|
+
|
|
127
|
+
except Instrument.DoesNotExist:
|
|
128
|
+
instrument = Instrument(**defaults)
|
|
129
|
+
|
|
118
130
|
instrument.pre_save()
|
|
119
131
|
instrument.computed_str = instrument.compute_str()
|
|
120
132
|
if (
|
|
@@ -198,10 +210,7 @@ def update_or_create_item(
|
|
|
198
210
|
source_id=external_id,
|
|
199
211
|
defaults=defaults,
|
|
200
212
|
)
|
|
201
|
-
|
|
202
|
-
for key, value in dl_parameters.items():
|
|
203
|
-
instrument.dl_parameters[key] = value
|
|
204
|
-
|
|
213
|
+
instrument.dl_parameters.update(dl_parameters)
|
|
205
214
|
instrument.save()
|
|
206
215
|
|
|
207
216
|
return instrument
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
from wbcore import filters as wb_filters
|
|
2
2
|
|
|
3
|
+
from wbfdm.filters.utils import _get_default_classification_group_id
|
|
3
4
|
from wbfdm.models import (
|
|
4
5
|
Classification,
|
|
5
6
|
ClassificationGroup,
|
|
@@ -88,6 +89,7 @@ class InstrumentClassificationThroughModelViewFilterSet(wb_filters.FilterSet):
|
|
|
88
89
|
endpoint=ClassificationGroup.get_representation_endpoint(),
|
|
89
90
|
value_key=ClassificationGroup.get_representation_value_key(),
|
|
90
91
|
label_key=ClassificationGroup.get_representation_label_key(),
|
|
92
|
+
default=_get_default_classification_group_id,
|
|
91
93
|
)
|
|
92
94
|
|
|
93
95
|
class Meta:
|
|
@@ -5,7 +5,7 @@ from psycopg.types.range import DateRange
|
|
|
5
5
|
from wbcore import filters as wb_filters
|
|
6
6
|
from wbcore.contrib.tags.filters import TagFilterMixin
|
|
7
7
|
|
|
8
|
-
from wbfdm.filters.utils import get_earliest_date, get_latest_date
|
|
8
|
+
from wbfdm.filters.utils import _get_default_classification_group_id, get_earliest_date, get_latest_date
|
|
9
9
|
from wbfdm.models.instruments import (
|
|
10
10
|
ClassificationGroup,
|
|
11
11
|
Instrument,
|
|
@@ -13,7 +13,6 @@ from wbfdm.models.instruments import (
|
|
|
13
13
|
InstrumentFavoriteGroup,
|
|
14
14
|
)
|
|
15
15
|
from wbfdm.models.instruments.classifications import Classification
|
|
16
|
-
from wbfdm.preferences import get_default_classification_group
|
|
17
16
|
|
|
18
17
|
|
|
19
18
|
def get_default_favorite_group(field, request, view):
|
|
@@ -156,12 +155,6 @@ class InstrumentFilterSet(TagFilterMixin, InstrumentFavoriteGroupFilterSet):
|
|
|
156
155
|
hidden_fields = ["id__in", "is_managed", "is_security", "level"]
|
|
157
156
|
|
|
158
157
|
|
|
159
|
-
def _get_default_classification_group_id(*args, **kwargs):
|
|
160
|
-
if group := get_default_classification_group():
|
|
161
|
-
return group.id
|
|
162
|
-
return None
|
|
163
|
-
|
|
164
|
-
|
|
165
158
|
class BaseClassifiedInstrumentFilterSet(TagFilterMixin, wb_filters.FilterSet):
|
|
166
159
|
classification_group = wb_filters.ModelChoiceFilter(
|
|
167
160
|
label="Classification Group",
|
|
@@ -169,7 +162,7 @@ class BaseClassifiedInstrumentFilterSet(TagFilterMixin, wb_filters.FilterSet):
|
|
|
169
162
|
endpoint=ClassificationGroup.get_representation_endpoint(),
|
|
170
163
|
value_key=ClassificationGroup.get_representation_value_key(),
|
|
171
164
|
label_key=ClassificationGroup.get_representation_label_key(),
|
|
172
|
-
default=_get_default_classification_group_id
|
|
165
|
+
default=_get_default_classification_group_id,
|
|
173
166
|
method="fake_filter",
|
|
174
167
|
required=True,
|
|
175
168
|
)
|
|
@@ -4,7 +4,16 @@ from pandas.tseries.offsets import BDay, BMonthBegin, BMonthEnd
|
|
|
4
4
|
from psycopg.types.range import DateRange
|
|
5
5
|
from wbcore.utils.date import current_quarter_date_start
|
|
6
6
|
|
|
7
|
-
from wbfdm.models import Instrument
|
|
7
|
+
from wbfdm.models import Classification, Instrument
|
|
8
|
+
from wbfdm.preferences import get_default_classification_group
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
def _get_default_classification_group_id(field, request, view, **kwargs):
|
|
12
|
+
if classification_id := view.kwargs.get("classification_id", None):
|
|
13
|
+
return Classification.objects.get(id=classification_id).group.id
|
|
14
|
+
if group := get_default_classification_group():
|
|
15
|
+
return group.id
|
|
16
|
+
return None
|
|
8
17
|
|
|
9
18
|
|
|
10
19
|
def get_earliest_date(field, request, view):
|
|
@@ -55,8 +55,8 @@ def update_of_investable_universe_data(
|
|
|
55
55
|
for instrument in tqdm(instruments, total=instruments.count()):
|
|
56
56
|
try:
|
|
57
57
|
prices.extend(list(instrument.get_price_objects(start=start, end=end, clear=clear)))
|
|
58
|
-
except
|
|
59
|
-
print(f"Connection error while processing instrument {instrument}") # noqa
|
|
58
|
+
except Exception as e:
|
|
59
|
+
print(f"Connection error while processing instrument {instrument}: {str(e)}") # noqa
|
|
60
60
|
Instrument.bulk_save_instrument_prices(prices)
|
|
61
61
|
investable_universe_updated.send(sender=Instrument, end_date=end)
|
|
62
62
|
if with_background_tasks:
|
|
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.46.3 → wbfdm-1.46.5}/wbfdm/analysis/financial_analysis/financial_metric_analysis.py
RENAMED
|
File without changes
|
|
File without changes
|
{wbfdm-1.46.3 → wbfdm-1.46.5}/wbfdm/analysis/financial_analysis/financial_statistics_analysis.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
|
{wbfdm-1.46.3 → wbfdm-1.46.5}/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
|
|
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
|