Skip to content

Releases: devfinwiz/Fin-Maestro-Kin

Fin-Maestro-Kin v0.4.1

02 Jun 19:39
2e089dd
Compare
Choose a tag to compare

image

Summary

Version v0.4.1 introduces the Valuation Engine module (Phase 1), enabling programmatic fair value estimation of stocks using standardized models. This release lays the groundwork for deeper financial analysis by providing endpoints for widely used valuation methods, along with a new verdict endpoint to help users assess a stock’s attractiveness. Additionally, it deprecates legacy endpoints related to options sentiment analysis.

Changes Made

  1. Introduction of the Valuation Engine

    • Added support for foundational valuation methodologies:
      • Earnings-based valuation using normalized Earnings Per Share (EPS).
      • Graham's formula valuation based on publicly available financial metrics.
    • Enables programmatic access to fair value estimation logic via dedicated API endpoints.
  2. New API Endpoints

    • /valuations/graham/{symbol}
      Computes intrinsic value using Graham’s formula.
    • /valuations/earnings/{symbol}
      Calculates valuation as per earnings for a specific stock based on its P&L statement, particularly the Earnings Per Share (EPS) metric.
    • /valuations/get-valuation-verdict/{symbol}
      Returns a verdict-style summary stating whether the stock appears undervalued, overvalued, or fairly priced based on computed valuations vs. current market price.
  3. Deprecated Endpoints

    • /sentiment/pcr-indice-analysis
    • /sentiment/pcr-stocks-analysis/{symbol}

Impact

  • Automated Investment Insights: The verdict endpoint offers an at-a-glance evaluation of a stock’s value proposition.
  • Stronger Foundations: Lays the analytical groundwork for more advanced checklist and scoring modules in future versions.

Docker Image Update

  • Pushed updated Docker image with version v0.4.1, tagged as latest, ensuring users have access to the most recent features and fixes:
    • devfinwiz24/fin-maestro-kin:v0.4.1
    • devfinwiz24/fin-maestro-kin:latest (points to v0.4.1)

Contributors

Fin-Maestro-Kin v0.4.0

28 Dec 18:49
987f4ba
Compare
Choose a tag to compare

image

Summary

Version v0.4.0 marks a significant change by deprecating NSE-related endpoints, simplifying maintenance, and fully transitioning to Screener.in as the primary data source. This release also includes updates to enhance security, stability, and data reliability.

Changes Made

  1. Deprecation of NSE-related Endpoints:

    • Removed all NSE-related endpoints, streamlining the data sources to focus on Screener.in.
    • Simplifies maintenance and ensures long-term reliability by eliminating dependencies on frequently changing NSE APIs.
  2. Enhancement of Screener.in Integration:

    • Screener.in is now the sole data source for financial data aggregation and analysis, forming the foundation for the Data Toolkit.
    • Modified the Screener endpoint to fetch financial data for consolidated entities instead of standalone data for individual stocks, improving the accuracy and relevance of results.
  3. Dependency Updates:

    • Updated key dependencies to improve performance and address security vulnerabilities:
      • requests upgraded to 2.33.0.
      • numpy upgraded to 1.27.0.

Impact

  • Streamlined Maintenance: Removing NSE-related endpoints reduces development overhead and ensures a consistent experience for users.
  • Improved Data Reliability: Screener.in is now the sole source of financial data, providing more robust and stable functionality.
  • Enhanced Security: Dependency updates mitigate vulnerabilities and improve application security.

Docker Image Update

  • Pushed updated Docker image with version v0.4.0, tagged as latest, ensuring users have access to the most recent features and fixes:
    • devfinwiz24/fin-maestro-kin:v0.4.0
    • devfinwiz24/fin-maestro-kin:latest (points to v0.4.0)

Contributors

Fin-Maestro-Kin v0.3.3

23 Sep 21:09
6b726a8
Compare
Choose a tag to compare

image

Summary

Version v0.3.3 introduces essential fixes and security updates, including resolving the issue related to gathering NSE tickers and upgrading dependencies to mitigate security vulnerabilities.

Changes Made

  1. Fix Issues Related to /equities/equity-tickers Endpoint:

    • Resolved issue #40 to address the problem of gathering a list of NSE tickers from the NSE indices. This fix ensures accurate retrieval of ticker data and improves overall API reliability.
  2. Security Vulnerability Fixes:

    • Upgraded fastapi to version 0.114.2 to address known vulnerabilities and improve framework security.
    • Upgraded requests to version 2.32.3, enhancing security for HTTP requests handling.
    • Upgraded numpy to version 1.26.4, fixing security issues and ensuring better performance.

Impact

  • Enhanced Security: Upgrading core dependencies eliminates security vulnerabilities, making the application more secure and stable.
  • Improved Data Reliability: Fixes to the NSE tickers issue ensure consistent and accurate data fetching, leading to more reliable performance for users.

Docker Image Update

  • Pushed an updated Docker image with version v0.3.3, tagged as latest, ensuring users have access to the most recent version of the application with the latest fixes and enhancements.

Contributors

Fin-Maestro-Kin v0.3.2

09 Jun 08:25
8831c5e
Compare
Choose a tag to compare

image

Summary

Version v0.3.2 brings crucial fixes and enhancements, including modifications to the nseindices/ratios and nseindices/returns endpoints and the addition of a new method to process the response of the nseindices/ratios endpoint. These updates aim to improve the functionality and reliability of the application.

Changes Made

  1. Fix Issues Related to nseindices/ratios Endpoint:

    • Resolved issues affecting the nseindices/ratios endpoint to ensure accurate and consistent data retrieval.
    • Adjusted the response keys to standardize the output format, enhancing the usability of the data.
  2. Fix Issues Related to nseindices/returns Endpoint:

    • Addressed problems in the nseindices/returns endpoint to improve data accuracy and endpoint reliability.
    • Ensured that the returned data aligns with user expectations and maintains consistency across different requests.
  3. Add Method to Process Response of nseindices/ratios Endpoint:

    • Implemented a new method to process the response of the nseindices/ratios endpoint.
    • Enhanced the handling of response data to provide a more streamlined and user-friendly output.

Impact

  • Improved Data Accuracy: Fixes to the nseindices/ratios and nseindices/returns endpoints ensure more accurate and reliable data retrieval, improving overall application performance.
  • Enhanced Data Processing: The addition of a method to process the response of the nseindices/ratios endpoint enhances data handling, making the data easier to work with and more user-friendly.

Docker Image Update

  • Pushed an updated Docker image with version v0.3.2, tagged as latest, ensuring users have access to the most recent version of the application with the latest fixes and enhancements.

Contributors

Fin-Maestro-Kin v0.3.1

12 May 11:17
cc4b276
Compare
Choose a tag to compare

image

Summary

Version v0.3.1 introduces significant enhancements, including the implementation of an optimized caching strategy for Trend Detector module, resolution of a critical startup issue, and the addition of graceful shutdown functionality for Redis. These improvements aim to optimize performance, reliability, and resource utilization.

Changes Made

  1. Optimized Caching for Trend Detector Module:

    • Contributed by @devfinwiz in PR-35.
    • Implemented an optimized caching strategy to improve response times and reduce computational overhead for the Trend Detector module.
    • Utilized a dynamic cache expiration mechanism based on the time until the next data update from the data source.
    • Calculated the expiration time dynamically based on the time remaining until the next scheduled data update, ensuring users have access to the latest trend analysis results.
    • Leveraged Redis for caching, facilitating efficient storage and retrieval of cached data.
  2. Fix for Container Startup Issue:

    • Contributed by @devfinwiz in PR-35.
    • Resolved a critical issue causing the container to exit immediately after startup due to a problem in the entrypoint script.
    • Adjusted the entrypoint script to ensure smooth container startup and operation, improving overall reliability.
  3. Graceful Shutdown for Redis:

    • Contributed by @devfinwiz in PR-35.
    • Added graceful shutdown functionality for Redis to maintain data integrity during container shutdown.
    • Implemented a script (shutdown.sh) to stop Redis gracefully before the container stops, ensuring proper handling of cached data.
  4. Cleaning of Responses from Screener Related Endpoints:

    • Contributed by @SuyashDM in PR-34.
    • Implemented cleaning of responses from screener-related endpoints to ensure consistency and readability of the output.
    • Removed unnecessary information and formatted responses to improve user experience.

Impact

  • Improved Performance: The implementation of the optimized caching strategy enhances response times and reduces computational overhead, improving overall performance for trend analysis.
  • Enhanced Reliability: The resolution of the container startup issue ensures smooth operation and prevents unexpected exits, enhancing application reliability.
  • Data Integrity: Graceful shutdown functionality for Redis ensures data integrity by properly handling cached data before container shutdown.

Docker Image Update

  • Pushed an updated Docker image with version v0.3.1, tagged as latest, ensuring users have access to the most recent version of the application with the latest enhancements and fixes.

Contributors

Fin-Maestro-Kin v0.3.0

02 May 09:50
2fc4304
Compare
Choose a tag to compare

image

Summary

This release introduces a smart caching mechanism for the Sentiment module, enhancing efficiency and responsiveness. Additionally, minor code improvements have been made to address issues highlighted by Code Factor.

Changes Made

  1. Smart Caching for Sentiment Module:

    • Implemented a smart caching strategy to enhance the efficiency and responsiveness of the Sentiment module.
    • During market hours, the cache is updated every 15 minutes to ensure users have access to the latest sentiment data.
    • Outside of market hours, when sentiment values remain static, the cache is configured to expire within a 24-hour timeframe, optimizing resource utilization.
    • Leveraged Redis to implement this caching mechanism, significantly improving performance while minimizing computational overhead.
    • The cache is not limited to container lifecycle; data will be persisted even if the container restarts, ensuring continuity of sentiment data availability.
  2. Code Improvements:

    • Addressed minor issues highlighted by Code Factor to improve code quality and maintainability.

Docker Image Update

  • Pushed an updated Docker image with version v0.3.0, tagged as latest, ensuring users have access to the most recent version of the application with the latest enhancements and fixes.

Contributors

Impact

  • Improved Performance: The implementation of smart caching ensures faster response times and reduces computational overhead, enhancing overall performance.
  • Real-time Data Access: Users have access to up-to-date sentiment data during market hours, providing valuable insights for informed decision-making.
  • Optimized Resource Utilization: By configuring cache expiration based on market hours, resource utilization is optimized, leading to better efficiency.

Important Note for Users

  • Updated Docker Run Command: Starting from this version, users are required to run the container using the following command, as a volume is now being used for caching:
docker run -d -p 8000:8000 -p 6379:6379 -v redis-cache:/redis-cache devfinwiz24/fin-maestro-kin:latest

Fin-Maestro-Kin v0.2.6

27 Apr 13:40
5518107
Compare
Choose a tag to compare

image

Summary

This release represents a comprehensive restructuring of the project's module organization and a significant refactoring of existing code to enhance maintainability, readability, and scalability.

Details

  1. Module Reorganization:

    • Restructured the data_toolkit module to have separate submodules for different aspects of data processing, namely nse and screener.
    • Each submodule now hosts a single file encapsulating all related functionality, promoting better code organization and management.
  2. Refactoring NSE Operations:

    • Consolidated equities and indices related operations into a unified module named nse_operations.py.
    • Introduced classes NSEEquities and NSEIndices within nse_operations.py to encapsulate related operations, promoting code modularity and clarity.
    • Transferred shared helper methods to a common Helper class within nse_operations.py, enhancing code reusability and reducing redundancy.
  3. Screener Equities Module:

    • Combined functionalities into a single class named ScreenerEquities.
    • Incorporated shared helper methods into a common Helper class within screener_equities.py, streamlining code organization and maintenance.
  4. Sentiment Module:

    • Refactored the SentimentAnalyzer module to utilize a class-based approach, encapsulating PCR analysis functionalities within the SentimentAnalyzer and PCR class.
  5. Trend Detector Module:

    • Refactored the Trend Detector module to utilize a class-based approach, encapsulating trend analysis functionalities within the TrendDetector class.
    • All trend analysis methods, including signals_generator and generate_plot, are now part of the TrendDetector class, promoting better encapsulation and code organization.
  6. New Project Logo:

    • Introduced a new project logo, enhancing visual identity and branding. The updated logo is now reflected in the project's README and release notes.

Docker Image Update

  • Pushed an updated Docker image with version v0.2.6, tagged as latest, ensuring users have access to the most recent version of the application with the latest enhancements and fixes.

Contributors

Impact

  • Codebase Structure: The restructuring of modules and adoption of a class-based approach improve code organization, making it easier to navigate and maintain.
  • Code Readability: By encapsulating related functionalities within classes, the codebase becomes more readable and understandable.
  • Maintenance Efficiency: Shared helper methods and consolidated functionalities reduce redundancy and make maintenance tasks more efficient.
  • Visual Identity: The new project logo enhances visual identity and branding, contributing to a more professional presentation of the project.

Fin-Maestro-Kin v0.2.5

20 Apr 20:26
435845c
Compare
Choose a tag to compare

Fin-Maestro-Kin v0.2.5 Release Notes

Summary

The v0.2.5 release of Fin-Maestro-Kin introduces new endpoints to support additional data retrieval from Screener.in, enhancing the capabilities of the data-toolkit module. These new endpoints enable users to access a wider range of financial data, empowering them with comprehensive insights into equities listed on the NSE and BSE. Furthermore, the documentation has been updated to reflect these changes, ensuring users have access to accurate and up-to-date information.

Details

  1. New Endpoints:

    • Added new endpoints to support more data from Screener.in, expanding the functionality of the data-toolkit module. The following endpoints have been introduced:
      • /screener-equities/shareholding-pattern: Retrieve shareholding pattern data for individual stocks.
      • /screener-equities/cash-flow: Access cash flow statements for in-depth financial analysis.
      • /screener-equities/balance-sheet: Retrieve balance sheet data to evaluate a company's financial health.
      • /screener-equities/annual-profit-loss: Access annual profit and loss statements for comprehensive performance analysis.
      • /screener-equities/ratios: Retrieve various financial ratios to assess key performance indicators.
      • /screener-equities/key-metrics: Retrieve key financial metrics based on a feature request by Shreyaan.
  2. Documentation Updates:

    • Made appropriate changes to add the new endpoints to the documentation of Fin-Maestro-Kin, ensuring users have access to comprehensive information about the available features and functionalities.

Docker Image Update

  • Pushed an updated Docker image with version v0.2.5, tagged as latest, ensuring users have access to the most recent version of the application with the latest enhancements and fixes.

Contributors

Impact

  • Users can now access a wider range of financial data from Screener.in, enabling more thorough analysis and evaluation of equities listed on the NSE and BSE.
  • The inclusion of key metrics based on a feature request enhances the platform's versatility and responsiveness to user needs.
  • Updated documentation ensures that users have accurate and up-to-date information about the platform's features and functionalities, facilitating ease of use and enhancing the overall user experience.

Fin-maestro-Kin v0.2.4

15 Apr 19:26
Compare
Choose a tag to compare

Fin-Maestro-Kin v0.2.4 Release Notes

Summary

This release focuses on enhancing endpoint functionality, introducing custom interactive documentation, and improving user experience by redirecting the /docs endpoint to the newly developed custom documentation. Additionally, the Docker image has been rebuilt and tagged for version v0.2.4, ensuring users have access to the latest updates.

Details

  1. Endpoint Fix:

    • Fixed the /equities/most-active-securities endpoint, resolving issues that prevented it from returning any response. Adjustments were made to accommodate changes in the NSE's API, ensuring reliable and accurate data retrieval.
  2. Custom Interactive Documentation:

    • Designed and released custom interactive and dynamic documentation for Fin-Maestro-Kin using Apidog. The new documentation provides users with an intuitive and user-friendly interface to explore the available endpoints and their functionalities.
  3. Custom Documentation Redirection:

    • Implemented a feature to redirect the /docs endpoint to the newly developed custom documentation of Fin-Maestro-Kin. Users accessing the /docs endpoint will now be seamlessly redirected to the custom documentation, improving accessibility and usability.
  4. Alternative Documentation Link:

    • Provided an alternative documentation link for users who want to access the documentation in read-only mode without running the server. Users can access the documentation at https://fin-maestro-kin.apidog.io/.

image

Docker Image Update

  • Pushed an updated Docker image with version v0.2.4, tagged as latest, ensuring users have access to the most recent version of the application with the latest enhancements and fixes.

Impact

  • Users can now rely on the fixed /equities/most-active-securities endpoint to retrieve accurate data on the most active securities from the NSE.
  • The introduction of custom interactive documentation enhances user experience by providing a more intuitive and informative way to explore Fin-Maestro-Kin's capabilities.
  • Redirection of the /docs endpoint to the custom documentation improves accessibility and ensures that users have access to up-to-date and comprehensive documentation.
  • Users have the option to access the documentation in read-only mode via the alternative documentation link, even when the server is not running.

Fin-maestro-Kin v0.2.3

13 Apr 07:33
36c0d6e
Compare
Choose a tag to compare

Fin-Maestro-Kin v0.2.3 Release Notes

Summary

Fin-Maestro-Kin v0.2.3 introduces new features, enhancements, and infrastructure updates to improve data availability, endpoint functionality, and documentation. Additionally, the Docker image has been updated to ensure users have access to the latest version of the application with the recent enhancements.

Details

New Features

  1. Introduced a new data source named "screener" to the "data-toolkit" module, enhancing data availability.
  2. Added support for gathering quarterly results for individual stocks from screener.in within the new "screener" submodule.
  3. Implemented a new endpoint for the "screener" submodule in the "data-toolkit" module, enabling access to quarterly results data.

Documentation Changes

  1. Updated documentation to reflect the new changes and renamed the "Equities" router tag to "NSE Equities" to prevent confusion between Screener Equities and NSE Equities methods.

Testing

  1. Conducted thorough testing of all existing endpoints to ensure compatibility and stability with the new changes.

Docker Image Update

  1. Pushed an updated Docker image with version v0.2.3, tagged as latest, ensuring users have access to the most recent version of the application with the latest enhancements and fixes.

Contributors

Impact

  • Users can now benefit from enhanced data availability with the inclusion of quarterly results gathering from screener.in.
  • The new endpoint provides access to quarterly results data, expanding the capabilities of the application for financial analysis and decision-making.
  • Documentation updates and renaming of the router tag improve clarity and usability for developers and users.
  • Thorough testing ensures that existing functionality remains reliable and stable.
  • The updated Docker image simplifies deployment and allows users to access the latest version of the application with the recent enhancements and fixes.