README
mfscreener
Description: MF Screener is a Java-based application designed to provide mutual fund screening capabilities. It allows users to fetch mutual fund data, including historical NAVs, scheme details, and portfolio information, through a set of RESTful APIs.
Setup:
Clone the repository.
Ensure Java 17, docker and gradle are installed.
Navigate to the project directory and follow steps at run-locally to start the application.
Usage:
Fetch mutual fund schemes:
GET /api/scheme/{schemeName}
Upload portfolio details:
POST /api/portfolio/upload
Calculate XIRR:
GET /api/xirr/{pan}
Acronyms
ISIN - International Security Identification Number
PAN - Personal Account Number
CAS - Consolidated Account Statement
Simplified Class Diagram Concept
This overview and class diagram provide a conceptual understanding of the project's structure. For detailed class relationships and method signatures, please refer to the source code directly.
Run tests
Run locally with docker
Run locally
Using Testcontainers at Development Time
You can run TestApplication.java
from your IDE directly. You can also run the application using Gradle as follows:
Useful Links
Swagger UI: http://localhost:8080/swagger-ui.html
Actuator Endpoint: http://localhost:8080/actuator
PgAdmin (UI for Postgres Database) : http://localhost:5050 (pgadmin4@pgadmin.org/admin)
Grafana : http://localhost:3000 (admin/admin)
JobRunr Dashboard: http://localhost:8000/dashboard/overview
Check redis keys
To check redis keys from docker issue below command
how to read CAS Data using casparser
Install phyton
install casparser using command
generate json using below command and upload to system
Here 2nd argument is the path of the pdf file, followed by password of CAS file and the output Type needed
Last updated