This repository contains analytical and educational financial models (DCF, WACC, trading comparables, precedent transactions, and LBO scenarios) implemented in Python, Excel, and Jupyter notebooks.
It is not a production system, API, or deployed service, and it does not process live user data.
The code and models are provided under the MIT License for learning, research, and demonstration purposes only.
This repository does not maintain versioned releases with ongoing security patches.
Users are expected to:
- run the code locally,
- inspect dependencies before installation, and
- update Python packages as needed via
requirements.txt.
This repository may include development-time or transitive dependencies that trigger automated vulnerability alerts. These advisories are reviewed and addressed using a risk-based, usage-aware security posture.
A Dependabot advisory exists for nbconvert related to PDF conversion on Windows
platforms involving uncontrolled search paths.
Impact assessment:
- Affects Windows systems only
- Requires local execution (
jupyter nbconvert --to pdf) - Not applicable to macOS or Linux environments
- Not used in automated, CI, or production workflows
Mitigation:
- PDF export is not required to run or reproduce this project
- Documentation artifacts are exported as HTML or PNG
- Users on Windows are advised to avoid PDF conversion via
nbconvert
A denial-of-service (DoS) vulnerability has been reported in
google.protobuf.json_format.ParseDict() related to recursion depth bypass when
parsing nested google.protobuf.Any messages.
Context:
protobufis included only as a transitive dependency (e.g., via market-data libraries such asyfinance)- This repository does not parse or deserialise untrusted JSON into protocol buffer messages
- The vulnerable API (
google.protobuf.json_format.ParseDict()) is not invoked anywhere in the codebase
Mitigation:
- No untrusted JSON is parsed into protobuf structures
- No protobuf
Anydeserialisation logic is used - Dependency updates are monitored, and parent libraries are kept current
- Risk is mitigated through constrained usage rather than forced pinning, given the absence of an upstream patch at the time of writing
A security advisory affecting older versions of urllib3 was flagged via
automated dependency surveillance.
Mitigation:
- The project explicitly enforces
urllib3>=2.6.3inrequirements.txt - Local environments have been updated accordingly
- No custom HTTP client logic is implemented beyond the standard library implementation
This repository does not process untrusted user input, does not deserialise arbitrary JSON into protocol buffer messages, and does not expose network-facing services.
Dependencies are used in a constrained, research-oriented context and are kept up to date where feasible. Known upstream vulnerabilities without patched releases are mitigated through controlled usage, scope limitation, and continuous dependency surveillance.
If you believe you have identified a security issue (e.g. malicious dependency behavior, unsafe file handling, or unintended data exposure), please report it responsibly.
- Open a private GitHub security advisory, or
- Contact the repository maintainer directly via GitHub profile messaging.
- A clear description of the issue
- Steps to reproduce (if applicable)
- Any relevant logs or screenshots
- You can expect an acknowledgement within 7 days
- If accepted, the issue will be addressed or documented
- If declined, a brief explanation will be provided
This repository does not constitute investment advice.
All valuation outputs are:
- illustrative,
- assumption-driven, and
- subject to material uncertainty.
No responsibility is accepted for decisions made based on these models.