What this is and its limits
What Sphinx Risk is — an analysis tool, not investment advice — where its market data comes from, what each number means and what happens to your data.
On this page
What this tool is
Sphinx Risk computes risk metrics, portfolio construction, and technical and fundamental analysis from two things: the trades you record, and a cache of market prices.
It is not a financial adviser and it places no orders. A broker connection only reads, and only if you connect your account; it never trades, and no function in this program can buy or sell anything. Nothing it returns constitutes investment advice or a personal recommendation. Decisions about your money are yours, and so is the responsibility for them.
It is not a custodian, an exchange, a wallet or a trading service. Sphinx Risk does not provide custody, exchange, wallet, staking or trading services. For crypto it works as it does for shares: you record the coins you already hold somewhere else and it measures them; it never buys, sells, lends, stakes or holds any digital asset.
If you need advice fitted to your situation, get it from a professional licensed to give it.
Who calculates and who explains
Every figure is computed by a deterministic engine written in Python, covered by automated tests, which given the same inputs always produces the same result. That engine uses no artificial intelligence at any point.
The copilot is a language model (Claude, by Anthropic) and its job is to explain, not to calculate. It has access to nothing except that engine's tools: when it answers with a number, that number comes from a real execution, and under every answer you are shown exactly which tools were called and with what arguments, so you can check.
That said, with the honesty this deserves: a language model can go wrong interpreting or wording things even when the underlying number is right. It can emphasise the wrong part, drop a caveat, or build a sentence that implies more certainty than there is. The tool trace lets you verify the figures; read the reasoning around them with the same judgement you would apply to any analyst's.
Your questions to the copilot, together with the portfolio data needed to answer them, are sent to Anthropic's API for processing. If that is not acceptable to you, the rest of the tool works without using the copilot at all.
Market data
Prices come from one of two places, and which one is written down. Without a key of your own, from Yahoo Finance, via the yfinance library, fetched when you ask for the prices of your own holdings. Yahoo's terms allow personal use, which is what that is.
With your own free Alpaca key, connected in your account, prices of US-listed stocks and ETFs are fetched with that key. They are stored under your account and used only for your portfolios; the automatic daily refresh of the paid plans runs on them. The licence for that data is yours, and we do not resell it to anyone.
Crypto prices come from Yahoo Finance, via the yfinance library, fetched when you ask for the prices of your own holdings. Yahoo's terms allow personal use, which is what that is. A data key of your own covers US-listed stocks and ETFs only, so coin prices always come from Yahoo.
The index, currency and commodity prices used to value a CFD are fetched each night from Yahoo Finance by the product itself: the whole closed list of 30 series, whether or not anyone holds them. Exchange rates are fetched each night only for the currency pairs the portfolios here need, and when prices are updated or a file is imported. The days Yahoo lacks are filled from the Federal Reserve's H.10 exchange rates (public domain, via FRED). These series are used only inside each person's own figures and are never shown on a public page.
Fundamentals and filings come from SEC EDGAR — the documents companies submit to the regulator themselves, which are public domain.
Their accuracy, timeliness and availability are not guaranteed. Days can be missing, the provider can be wrong, and it can stop updating without notice. The tool includes coverage and gap checks precisely because this happens, but no check replaces confirming an important number against the official source before acting on it.
Prices are retroactively adjusted by the provider for splits and dividends, so the historical series can change between two queries. The trades you record, by contrast, keep the price you actually paid, unadjusted.
What the paid plans charge for is the analysis, the automation and the copilot — not market data. No plan sells prices: the free source serves your own requests, and what your key fetches stays yours.
What the numbers mean, and what they do not
Past returns do not predict future ones. This is not a courtesy formula: every metric here describes one specific window of the past and contains no information about what comes next.
- Volatility, Sharpe, VaR and the rest are computed over a historical window. Change the window and you change the number, so every result travels with the period it was computed over. A figure without its window is incomplete.
- Optimised portfolios are unstable. Maximising the Sharpe ratio requires estimating future returns, and that estimate is mostly noise. This is why the equal-weight portfolio is always shown alongside: so you can see how far the "optimal" answer moves.
- The regime model describes the past, it does not announce the future. Per-regime returns are annualised from short samples: they are for comparing regimes against each other, not for forecasting.
- Machine learning models report whether they beat doing nothing, and right now the drawdown classifier does not. It is shown anyway, because that is the honest information.
- Valuation multiples compare a price against the last published accounting period. When those two dates are far apart, the multiple mostly measures that distance.
- The equity curve counts dividends as cash on the day the share goes ex-dividend, so it is a total return. It excludes commissions and taxes, so it overstates what would have been left in your pocket.
Your data
Your trade history is personal financial information, and it is treated as such.
Every portfolio belongs to one account. Ownership is part of the database query itself rather than a check performed afterwards, which means there is no code path that can read another account's portfolio — including by changing the number in a URL. There is an automated test that proves exactly that.
Passwords are never stored. What is stored is an Argon2 hash, from which the password cannot be recovered — by us or by anyone who obtained the database. This is also why there is no way to have your password sent back to you: nobody has it.
Your data leaves this machine only in the cases listed on the privacy page: a question to the copilot goes to Anthropic together with the portfolio data needed to answer it; email goes through Resend; a payment goes to Stripe; a connected account sends its read-only key to that platform to download your statements; and a market data key of your own sends Alpaca the symbols of your holdings. Market data comes in by symbol and says nothing about who asked. Every other part of the tool runs without sending anything about you anywhere.
Visits are counted, not people. Each time a page is opened, one counter goes up for that day: which page, in which language, which site the visitor came from (the domain only, never the full address) and whether they were signed in. No cookie is set for it, no IP address or browser detail is kept, and nothing in it is linked to an account or to anyone's trades.
Who runs this, and how to reach us
Sphinx Risk is operated by Sergio Caceres, a private individual in Switzerland. For anything — your data, a figure that looks wrong, a refund — write to support@sphinxrisk.com. We answer within two working days.
Payments are processed by Stripe, the merchant of record. The agreement is in the terms of service and refunds follow the refund policy.
Last reviewed: 10 October 2026. This page describes the current version and will change when the tool does.
