Set up the data pipeline - Pull Form ADV via the SEC API, enrich with FactSet/Bloomberg, store in PostgreSQL.
Implement the scoring engine - Write a Python module that reads the normalized metrics, applies the weighted formula, and writes the ranking to the database.
Expose an API - FastAPI endpoint /rankings returns the latest JSON, supporting query parameters for weight overrides.
Build the UI - React app consumes /rankings, renders the sortable table, provides sliders for weight adjustment, and displays drill-down charts.
Secure & deploy - Containerize services, push to AWS ECS/Fargate, protect the API with Auth0, and schedule Airflow DAGs for daily refresh.
Validate compliance - Add attribution footers, enforce data-use restrictions, and publish a legal disclaimer.
Following this roadmap will give you a maintainable, scalable, and legally sound application that continuously ranks Merrill Lynch wealth-management groups above the $500 M AUM threshold, while allowing end-users to explore the data through a transparent, customizable scoring model.
Set up the data pipeline - Pull Form ADV via the SEC API, enrich with FactSet/Bloomberg, store in PostgreSQL.
Implement the scoring engine - Write a Python module that reads the normalized metrics, applies the weighted formula, and writes the ranking to the database.
Expose an API - FastAPI endpoint /rankings returns the latest JSON, supporting query parameters for weight overrides.
Build the UI - React app consumes /rankings, renders the sortable table, provides sliders for weight adjustment, and displays drill-down charts.
Secure & deploy - Containerize services, push to AWS ECS/Fargate, protect the API with Auth0, and schedule Airflow DAGs for daily refresh.
Validate compliance - Add attribution footers, enforce data-use restrictions, and publish a legal disclaimer.
Following this roadmap will give you a maintainable, scalable, and legally sound application that continuously ranks Merrill Lynch wealth-management groups above the $500 M AUM threshold, while allowing end-users to explore the data through a transparent, customizable scoring model.