Hacker News new | ask | show | jobs
Show HN: Pluto – AI for investing, data visualization, automation and analysis (pluto.fi)
7 points by jsnns 1109 days ago
Hey HN! I'm Jacob Sansbury, a software developer and founder of Pluto. After working at Bridgewater Associates and moving to San Francisco, I decided to combine my passion for software development and finance to create Pluto – an AI-driven platform that revolutionizes the way retail investors manage their finances. Today, I'm excited to share our beta with you:

https://pluto.fi/

Pluto is built with a combination of Next.js and Python, running on K8s and Kafka. Our AI Copilot, Plato, uses a three-part system (thinkers, actors, and communicators) to analyze data, execute actions, and communicate results to the user.

1. Thinkers: These components are responsible for gathering data and generating observations about the world. They query various data sources, such as financial markets, news feeds, or user inputs, to create specific observations (e.g., "AAPL's price is $132"). The thinkers act as the "eyes and ears" of the AI system, providing the essential information needed for decision-making.

2. Actors: The actors take the observations generated by the thinkers and use them to execute actions that change the state of the world or the system. These actions can include creating new investment strategies, adjusting existing strategies, executing trades, or running tests. The actors are the "doers" in the system, responsible for making things happen based on the information they receive.

3. Communicators: The communicators are responsible for wrapping up the observations and actions and presenting them to the user in a clear and understandable format. They may generate reports, send notifications, or provide visualizations to help users make sense of what the AI system has done. The communicators act as the "voice" of the AI system, bridging the gap between the raw data and the user's understanding.

We've faced several interesting challenges and devised innovative solutions while building Pluto:

1. Integrating with trading platforms and APIs for multi-strategy management: Our "aha moment" came when we realized users wanted each strategy to behave like a separate account with segregated performance metrics and data while also having aggregated results. However, our partners that handle custody and settlement provide a single account per user. We developed a sophisticated infrastructure to track which strategies “own” each cent and share, keeping them bucketed, and created a custom rebalance algorithm that efficiently handles allocation changes and transfers to and from all strategies. This approach allowed us to offer a unique multi-strategy management experience.

2. Building a versatile AI Copilot: To enable Plato to call almost any function in our codebase, we built DionysusDSL, a tool that uses Lark to make it simple to create new commands that both AI and Lark can understand. This allows for seamless integration of commands and handling multiple arguments with accurate type validation.

Pluto's beta version allows you to:

- Create an entire dashboard of bespoke AI data visualizations from a single prompt like "Track Finance". - Create data-driven strategies using Python or visual blocks with the help of Plato. - Talk about data with Plato including real-time feeds from 100+ sources like SEC filings, news stories, Senate trading reports, company financials, analyst forecasts, sentiment data. - Backtest strategies with 20+ years of historical data. - Build a portfolio of strategies in sandbox and live mode.

We'd love to hear your feedback, opinions, and any technical questions you might have and if you're interested in us open-sourcing any of the work we've done on getting LLMs to produce structured results.

TLDR: Try AI-driven financial management at https://pluto.fi/

6 comments

Interesting product! Do you think Pluto's users will benefit from a "Messages" tool? People can have productive discussions about investing and connect with other investors.
Hey! We have that and it's integrated with all of our tools and data!
Wow lots of insightful data at a glance. Def excited to try out more. Aesthetically pleasing as well compared to other desktop based trading platforms. Interested to see where this will go.
Super interesting stuff, I’ll give it a try.

Just curious, how did you come to the conclusion to split up the different agents? What’s the difference in each of their prompts?

Thanks for your interest! We decided to split the AI system into Thinkers, Actors, and Communicators for several reasons.

Firstly, it makes each part more reliable and easier to maintain. This division allows us to craft specific prompts for each component based on their function and the information they deal with. The segregation also allows for better data management and focused improvement in case of performance issues or potential upgrades.

Secondly, it provides a smooth data flow. The Thinker receives a prompt tied to the user's question and starts gathering relevant data. This data then flows to the Actor, which uses it to respond to the user's query or to execute tasks. For example, if a user says "build an automation to buy the dips for the top 10 stocks by market cap in the US," the Thinker first gathers the top 10 stocks from our screener, then the Actor creates the strategy.

Finally, the Communicator receives the outcomes of the actions from the Actor, and it's responsible for relaying the information back to the user in an easy-to-understand format. It ensures that the actions taken by the AI and the results are transparent and understood by the user.

Regarding the prompts for each agent, they outline the commands each agent can access, as provided by DionysusDSL. We use the inputs to these commands to form a "tree" of possible types the AI might need to use. Then, we build a prompt demonstrating these types, allowing for accurate and context-specific responses. Each agent's prompts differ based on their role and the tasks they need to perform.

I don't believe in bot/AI-trading, however the search or prompt data from SEC filings is super interesting.
I’ve found this personally very useful — it can already access tons of SEC documents, news articles, company reports, etc. What else would you like to see us add?
Wow, interesting stuff here. An innovative approach to financial management for sure — stoked to try the beta!
So cool, I wanna try it!