The Monthly Stock Picker is a personal finance and investment assistant that analyzes an individual's monthly transactions to calculate potential savings. Using these savings, it constructs a personalized investment portfolio based on the 100-minus-age principle for asset allocation. From the portion allocated to stocks, the tool identifies and recommends the top stock to purchase each month. This approach integrates automated financial analysis with data-driven stock selection, helping users optimize their monthly savings and make informed investment decisions with minimal manual effort.
In today’s fast‑paced financial world, many individuals struggle not only with consistently tracking their monthly expenses and savings, but also with translating those savings into meaningful investment decisions. The Monthly Stock Picker bridges that gap by offering a streamlined, automated workflow:
First, it analyzes a user’s monthly transactions to determine how much is being saved each month.
Next, it allocates that savings into an investment portfolio informed by the “100 minus age” rule — ensuring that, as you age, your allocation to stocks is adjusted conservatively and in alignment with long‑term financial health.
Finally, from the portion of funds earmarked for stocks, the tool selects a top stock to purchase each month — enabling regular, disciplined investment without manual stock‑screening burden.
By integrating personal finance tracking with portfolio‑construction logic and stock‑selection automation, Monthly Stock Picker empowers users to turn recurring monthly savings into purposeful, actionable investment opportunities — making financial growth more accessible, systematic and data‑driven.
The Monthly Stock Picker employs a multi-agent architecture to automate the end-to-end process of personal finance analysis and monthly stock recommendation. The workflow is divided into three specialized agents, each responsible for a specific task:
Agent 1 – Transaction Analyzer:
This agent analyzes the user’s monthly transaction data provided in PDF format.
Using a custom PDF reading tool, it extracts income and expense details, computes total savings for the month, and prepares the data for further processing.
Agent 2 – Portfolio Builder:
Based on the savings calculated by Agent 1, this agent constructs a personalized investment portfolio.
It employs a custom portfolio builder tool and applies the 100-minus-age principle to determine the appropriate allocation between stocks and other assets.
Agent 3 – Stock Picker:
Focused on the stock portion of the portfolio, this agent identifies the top stocks suitable for the allocated amount.
Currently, it uses a search tool to select stocks and suggests which one to purchase for the month.
In future versions, it is planned to integrate with Zerodha API to enable actual stock purchases automatically.
All three agents collaborate sequentially and share state information to maintain continuity across the workflow. The LangGraph framework is used to manage the global state, ensuring smooth coordination between agents and consistent updates throughout the process.
This multi-agent methodology allows the system to combine financial analysis, portfolio construction, and stock selection in a structured, automated, and reproducible manner.
The experiments conducted for the Monthly Stock Picker demonstrate its ability to process financial data, construct personalized portfolios, and recommend stocks effectively.
Transaction Analysis Experiment:
Sample PDF bank statements from multiple months were provided to the system.
The Transaction Analyzer (Agent 1) successfully extracted income, expenses, and computed monthly savings.
Accuracy of savings calculation was validated against manual computation.
Portfolio Construction Experiment:
Using the monthly savings data, Portfolio Builder (Agent 2) created portfolios based on the 100-minus-age principle.
Portfolio allocations were checked to ensure stock allocation decreased appropriately with age, demonstrating adherence to the principle.
Stock Selection Experiment:
Stock Picker (Agent 3) received the allocated stock portion from the portfolio and recommended top stocks based on suitability and affordability.
Recommendations were compared against historical stock performance to validate practical relevance.
Future experiments are planned with Zerodha API integration to automate actual stock purchases and evaluate investment outcomes.
The system is effective in automating monthly financial analysis and investment recommendations.
Modular agent design allows testing and refinement of individual components independently.
Performance and accuracy of stock selection can be improved further with live market data and integration with brokerage APIs.
The Monthly Stock Picker provides an automated, data-driven approach to personal finance management and investment decision-making. By analyzing monthly transactions, calculating savings, constructing a personalized portfolio using the 100-minus-age principle, and recommending top stocks to buy, the system bridges the gap between financial planning and actionable investment strategies.
The multi-agent architecture ensures that each step—from transaction analysis to portfolio building and stock selection—is modular, accurate, and reproducible. Using LangGraph for state management allows smooth collaboration between agents, maintaining continuity across the workflow.
Overall, the tool demonstrates how automation and AI-driven analysis can simplify financial decision-making, helping users optimize their monthly savings and invest intelligently with minimal manual effort. Future enhancements, including real-time brokerage integration, will further streamline the investment process and make the system fully operational for live trading.