{"count":41,"newest":"2026-10-16","entries":[{"id":"2026-10-16-private-companies-the-holdings-the-funds-filed-and-version-1-left-out","date":"2026-10-16","title":"Private companies: the holdings the funds filed and VERSION 1 left out","body":"The private companies in US funds, at https://tickerinside.com/private-companies/, now count the holdings funds file without the private placement mark or under another asset category, once two funds hold the company as a marked private placement, and the closed-end and interval funds that file without a series. On the 2026q3 data set, OpenAI is held by 83 funds instead of 69, ARK Innovation ETF (ARKK) among them, and Anthropic by 120 instead of 110. A fund holding a vehicle that names the company, as Destiny Tech100 (DXYZ) holds Anthropic through Magnitude ANC III, LLC, is listed apart on the company's page and in its file, under through_vehicles, and never counted among its holders. The history since 2019 is read again with the same rule.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-16-the-privacy-policy-names-two-more-pages-and-four-more-answer-engines","date":"2026-10-16","title":"The privacy policy names two more pages and four more answer engines","body":"The ETF flows page at https://tickerinside.com/etf-flows/ and the pages under https://tickerinside.com/private-companies/ now write the same usage record as the fund pages, and only in the same cases: an assistant fetching one for a person, a visitor arriving from an answer engine, or a program asking for it as Markdown. Visitors arriving from gemini.google.com, search.brave.com, duckduckgo.com and chat.mistral.ai are counted with the engine's domain, as those from chatgpt.com and bing.com were. Daily totals made from the records, such as how many requests and callers asked for each fund or stock on a day, carry no caller's code and are kept beyond the records' three months. https://tickerinside.com/privacy/ says it.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-15-vanguard-s-funds-are-served-from-their-sec-filings","date":"2026-10-15","title":"Vanguard's funds are served from their SEC filings","body":"TickerInside no longer reads Vanguard's website. The 67 Vanguard ETFs read from it, VOO, VTI, VXUS and VGT among them, are now served from their newest SEC Form N-PORT filing, as every fund read from SEC filings is: the SEC's data set of the second quarter of 2026 holds their portfolios of 28 February to 30 April 2026, and the nightly read of EDGAR serves a newer filing as it reaches each fund. Their pages, and the written comparisons that name one of them, stay at the same addresses, built from that filing and dated by it. Their holdings history no longer includes the files read from Vanguard's website, and their quarterly history since 2019 stays under /api/v1/quarterly/. The issuers read from their own files are iShares, SPDR, Invesco and Global X.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-14-us-etf-flows-every-market-day","date":"2026-10-14","title":"US ETF flows, every market day","body":"A new page, https://tickerinside.com/etf-flows/, gives how much money went into and out of the US ETFs read daily from their issuers' files on the latest market close: each ETF's net creations and redemptions in dollars, measured from its own holdings and published when the two measures of it agree, with the largest inflows and outflows, the last five closes, the totals by issuer and by category, and what the same ETFs bought and sold. The figures are in /api/v1/etf-flows.json and its CSV twin, every ETF's flow on each of the last 20 closes in /api/v1/etf-flows/series.json, one item per close in /feeds/etf-flows.xml, and the MCP tool get_etf_flows gives an ETF's own flows with its ticker and the day's with none.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-13-an-a2a-agent-beside-the-mcp-server","date":"2026-10-13","title":"An A2A agent beside the MCP server","body":"Agents that speak A2A (Agent2Agent), versions 1.0 and 0.3, find TickerInside by its agent card at https://tickerinside.com/.well-known/agent-card.json and ask at https://tickerinside.com/a2a: what a US ETF or mutual fund holds, which ETFs hold a stock, the overlap of two ETFs, what a portfolio of ETFs holds underneath, and what ETFs bought or sold on the latest close. A question in plain words with its tickers in capitals is answered with one sentence and the tool's full answer as data, with the same dates, sources and citation as the MCP server's.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-13-the-python-client-credits-its-tables","date":"2026-10-13","title":"The Python client credits its tables","body":"tickerinside 0.5.0 on PyPI: a result's DataFrame carries its source, citation, licence and dates in df.attrs, kept through copies and in the Parquet files pandas writes; result.to_html() gives the table with the line \"Data: TickerInside (CC BY 4.0)\" under it, linked to the page or file of the figures; and a result shown in a Jupyter notebook shows that line under its table.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-13-us-mutual-funds-from-fxaix-to-the-growth-fund-of-america","date":"2026-10-13","title":"US mutual funds, from FXAIX to the Growth Fund of America","body":"The API answers US mutual funds at the same address as the ETFs, https://tickerinside.com/api/v1/fund/{ticker}.json: the 1,474 largest stock mutual funds by net assets, 6,357 share classes between them, each with the holdings of its latest SEC Form N-PORT (FXAIX, the Fidelity 500 Index Fund: 503 positions, Nvidia first at 7.89%), and the mutual fund classes of a fund that also has an ETF class, such as VFIAX and VTSAX, with the holdings of VOO and VTI. Every share class holds its fund's portfolio; its cost and price are its own and are not given. The list is https://tickerinside.com/api/v1/mutual-funds.json, and the MCP tools read them too.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-13-tickerinside-mcp-1-13-0","date":"2026-10-13","title":"tickerinside-mcp 1.13.0","body":"The npm package tickerinside-mcp 1.13.0 answers as https://tickerinside.com/mcp has since 12 October 2026: get_etf_holdings_history gives a fund's quarterly SEC reports since 2019, and get_etf_portfolio_risk measures a portfolio on every ETF that has a year of weekly prices, naming the others.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-12-what-us-etfs-held-quarter-by-quarter-since-2019","date":"2026-10-12","title":"What US ETFs held, quarter by quarter, since 2019","body":"The holdings of 2,850 of the US ETFs listed today, in each of the 46,179 quarterly reports they filed with the SEC on Form N-PORT from the end of 2019 to June 2026, read from the SEC's own data sets, each company under its ticker today (Facebook's holdings of 2019 read META). Each ETF page opens a section on what the fund held since 2019, its largest position then and now: VOO's went from Microsoft at 4.29% on 30 September 2019 to Nvidia at 7.51% on 30 June 2026. Each stock page counts how many of today's US stock ETFs held it, quarter by quarter. Every report is at https://tickerinside.com/api/v1/quarterly/{ticker}.json and every position at a date at https://tickerinside.com/api/v1/history/{ticker}/{date}.json, under CC BY 4.0, and the MCP tool get_etf_holdings_history answers with them. A new data set of the SEC is read the night it comes out.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-12-pages-for-65-of-the-etfs-asked-for-most","date":"2026-10-12","title":"Pages for 65 of the ETFs asked for most","body":"65 of the ETFs without a page that the most programs and assistants asked the API for over the last three weeks have their page: leveraged and option income ETFs (NVDL, NVDX, SOXL, TSLL, NVDY, GOOY, MAGS) with their exposure from their SEC filing, thematic ETFs (JETS, ARKK, KWEB, URA, LIT, OIH, UFO, ROBO), Schwab's fundamental index ETFs, and the bond ETFs SCHP, SPHY and TIP.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-12-figures-first-on-every-page-and-every-shared-link","date":"2026-10-12","title":"Figures first, on every page and every shared link","body":"The figures of each page's opening answer are set in bold, and a link to an ETF or a stock page shares a card with three key figures: for an ETF, its positions, the weight of its ten largest and its largest position; for a stock, how many of today's US stock ETFs held it at the end of 2019 and in their latest reports, and its largest weight.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-12-portfolio-risk-measures-every-etf-it-can","date":"2026-10-12","title":"Portfolio risk measures every ETF it can","body":"get_etf_portfolio_risk, the MCP tool, measures a portfolio on all its ETFs that have a year of weekly prices here, names the others, and states the share of the portfolio its figures cover.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-12-a-page-for-every-large-etf-issuer","date":"2026-10-12","title":"A page for every large ETF issuer","body":"Every issuer with ten listed US ETFs or more has a page at https://tickerinside.com/etf/issuer/{name}/, 85 of them tonight, from iShares (481 ETFs) and First Trust to Avantis, ARK Invest and DoubleLine: how many ETFs it lists, how many have their holdings here, its groups and categories, what its ETFs cost, and every one of them with its category, expense ratio and the source and date of its holdings, linked to its page or its data file. An ETF's issuer is the brand its name opens on. The five issuer pages the site had keep their addresses and now list every listed ETF of the issuer, not only those with a page. US ETFs in numbers lists them all under Who issues US ETFs.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-12-which-etfs-hold-them-pages-for-150-more-companies","date":"2026-10-12","title":"Which ETFs hold them: pages for 150 more companies","body":"150 more companies get their page, the list of the covered US ETFs that hold each one with its weight, rank, source and date: the companies without a page held by the most covered funds, from Honeywell (333 ETFs) to Dominion Energy (251), among them General Motors, UPS, Vistra, Exelon, Zoetis and Schlumberger.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-12-us-etfs-in-numbers-and-pages-for-18-of-the-largest-bond-etfs","date":"2026-10-12","title":"US ETFs in numbers, and pages for 18 of the largest bond ETFs","body":"A new page, https://tickerinside.com/us-etfs/, gives the US ETF market in figures, rebuilt every night from universe.json and funds.json: how many ETFs are listed in the US by Nasdaq Trader's symbol directory, how many fall in each group of categories (US stocks, bonds, option strategies, leveraged and inverse and the others), the categories with the most ETFs, how their expense ratios are spread and the lowest in each group, the newest ETFs by the date of their prospectus, and where the holdings of each come from and how old they are. Eighteen of the 100 largest US ETFs had no page, all of them bond ETFs (BNDX, SGOV, VTIP, VCIT, BSV, BIV, VCSH, VTEB, VGIT, IEF, BIL, MUB, GOVT, IUSB, VGSH, MBB, JPST and LQD): they get the bond page, with their holdings by issuer, coupon and maturity from their latest SEC Form N-PORT filing.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-12-the-mcp-server-answers-which-etfs-diversify-a-portfolio","date":"2026-10-12","title":"The MCP server answers which ETFs diversify a portfolio","body":"The MCP server, at https://tickerinside.com/mcp and in the npm package tickerinside-mcp from 1.12.0, gains a thirteenth tool, find_diversifying_etfs. Given 1 to 6 US ETFs held, with an amount for each or for none, it gives the answer of https://tickerinside.com/api/v1/diversify?have= for them: from a fixed, published list of 30 large US ETFs in six groups, the ETF of lowest weekly correlation with the portfolio in each of the 3 groups whose lowest is lowest, with its correlation on the weeks the portfolio fell, the portfolio's volatility with 10% in it and its overlap by weight, then the next ETFs of the list. Every answer carries the note that it is a measurement of past co-movement, not investment advice. The panels of the MCP App also name their page under openai/outputTemplate and declare openai/widgetCSP and openai/widgetDomain.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-10-diversify-ranks-a-published-list-of-30-large-us-etfs-against-the-etfs-you-hold","date":"2026-10-10","title":"Diversify ranks a published list of 30 large US ETFs against the ETFs you hold","body":"https://tickerinside.com/api/v1/diversify?have=VOO:60,QQQ:20,VXUS:20, with have alone, answered 400 missing_parameter and now answers 200 in a new shape, mode find (DiversifyFind in openapi.json). It ranks the 30 large US ETFs of a list chosen on 2026-10-10, in six groups (US stocks, sector stocks, international stocks, emerging market stocks, bonds and commodities), by the correlation of their weekly returns with the portfolio's over up to 156 weeks, compared before rounding, leaving out any ETF held. lowest gives the ETF of lowest correlation in each of the 3 groups where it is lowest, each with its correlation on the weeks the portfolio fell, its volatility, the portfolio's volatility with 10% in it, its breakdown or what it holds, a sentence to quote, and its overlap by weight with the portfolio when the files fit one answer; otherwise overlap is not_measured and overlap_answered_by names the check that answers it. lowest_by_group gives the lowest of every group, ranked every ETF of the list, list the list itself with its date, and rule the rule in words. The ranking is a sort of measurements by that published rule, the same list for every portfolio, and asks nothing about the person. The answers with try, the check of the ETFs you name, keep their shape and gain one field, mode, which reads compare. Two families of files are new: https://tickerinside.com/api/v1/diversify/candidates.json, the list with its groups, its rule and each ETF's weekly returns and breakdown, and /api/v1/diversify/weekly/{ticker}.json, one ETF's weekly returns and breakdown with its own ranking against the list, for every ETF with at least a year of weekly returns; the reference documents both under diversify, and openapi.json as DiversifyList and DiversifyWeekly. https://tickerinside.com/diversify/?have=VOO gives the same answer in the page, in HTML or Markdown, and the x-ray of a portfolio links it.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-10-the-mcp-server-draws-its-answers-as-figures-in-hosts-that-support-mcp-apps","date":"2026-10-10","title":"The MCP server draws its answers as figures in hosts that support MCP Apps","body":"The MCP server, at https://tickerinside.com/mcp and in the npm package tickerinside-mcp from 1.11.0, is now an MCP App. In a host that supports MCP Apps, five answers come with a figure drawn beside the conversation: get_etf_holdings (an ETF's largest holdings), compare_etfs (the overlap by weight of two ETFs, each ETF's share of its weight held in common and their largest holdings in common), get_etf_overlap_matrix (each pair of three or four ETFs as a bar, with the larger share of the pair that overlaps most under them, such as 92.9% of QQQ's weight in companies VOO holds, the matrix of every pair from five ETFs while it keeps to the figure's height, else the largest pairs with the matrix behind Expand), get_etf_portfolio_lookthrough (the largest holdings underneath, each with what every ETF brings to it, 0.00 where it brings nothing, the largest holding of an ETF that brings none of those drawn, and the count of holdings by ticker, as the site counts them) and get_etf_portfolio_risk (each ETF's share of the risk as a dot beside its share of the capital as a ring). Each figure has a title that says what it shows, the dates and sources of its files under it, one chart and a caption of figures, about 250 to 300 pixels tall; Expand shows the rest of the answer, in full screen where the host offers it, and the footer opens the answer's page on the site. A figure fits the height the host gives it, follows the host's light or dark theme and fetches nothing. The server declares the extension io.modelcontextprotocol/ui and resources, lists the four pages under resources/list and serves them under resources/read as text/html;profile=mcp-app, on every protocol revision it speaks, and each of the five tools names its page in _meta.ui.resourceUri. Each company of get_etf_portfolio_lookthrough and /api/v1/lookthrough gives weight_pct_2dp, its weight to two decimals rounded once from the unrounded sum, the figure the x-ray page and the look-through figure print; weight_pct keeps its three decimals. A host without MCP Apps, Claude Code among them, reads the same text and structured answer as any other.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-10-mcp-answers-open-on-the-web-page-that-prints-their-figure-where-the-site-has-one","date":"2026-10-10","title":"MCP answers open on the web page that prints their figure, where the site has one","body":"Every answer of the MCP server now opens on page_url, the page on the site whose HTML prints the answer's figure without JavaScript: the fund's page for get_etf_holdings, the stock's page for find_etfs_holding_stock, and for compare_etfs the written comparison of the pair when there is one (https://tickerinside.com/compare/voo-vs-qqq/), else its \"Does it diversify me?\" answer. The look-through and the risk of a portfolio, and get_etf_overlap_matrix, open on the x-ray the site wrote of the same ETFs, such as https://tickerinside.com/xray/?p=VOO:60,QQQ:40, which prints every figure; a matrix of two ETFs opens as compare_etfs does. page_url is null where no page prints the figure yet: the look-through, the risk and the matrix of any other portfolio, a pair too large for \"Does it diversify me?\" or of two bond funds, compare_stocks, get_etf_ownership, the holdings history and changes, get_etf_flows and list_etfs. An answer about one fund or stock with a page then gives that page as subject_url. The answers about several funds (compare_etfs, get_etf_overlap_matrix, get_etf_portfolio_lookthrough and get_etf_portfolio_risk) add share_url where a page reproduces the whole answer in its HTML: the \"Does it diversify me?\" answer of a pair, or the x-ray the site wrote of the ETFs, its weights in percent to 0.01 point, as the site writes them, never an amount. /api/v1/overlap and /api/v1/lookthrough give page_url and share_url too. cite_as names a web page in every answer: the page that prints the figure when its address has no query, else the site's address and the file, never an address with a query. The licence of every source block reads CC BY 4.0, as the data files state it; until now it said a credit by name alone was accepted, which the files no longer say.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-10-a-refusal-of-api-v1-overlap-or-api-v1-lookthrough-names-what-answers-it-in-a-field-too","date":"2026-10-10","title":"A refusal of /api/v1/overlap or /api/v1/lookthrough names what answers it in a field too","body":"When /api/v1/overlap or /api/v1/lookthrough refuses a call as too_large, its message already names what answers the same question. The answer now gives the same in answered_by, so that a client can follow it without reading the sentence: mcp, the MCP server's tool at https://tickerinside.com/mcp with the arguments of the call (compare_etfs, get_etf_overlap_matrix or get_etf_portfolio_lookthrough); for two funds that \"Does it diversify me?\" answers, diversify and page, its JSON answer and its page, as for AVUV and VXUS; and for a portfolio whose x-ray the site writes, page. It names only addresses that answer with their figures, weights in percent and never an amount. The limits of one call do not change.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-10-a-portfolio-with-a-bond-fund-answers-in-the-x-ray-and-every-answer-opens-on-its-figures","date":"2026-10-10","title":"A portfolio with a bond fund answers in the x-ray, and every answer opens on its figures","body":"A portfolio that holds a fund with no shares to look through, such as VTI 60%, VXUS 30% and BND 10%, now answers in the page: the funds that hold shares are looked through at their weights among themselves, as the MCP tool and /api/v1/lookthrough answer it, the risk, the growth of $100 and the cost count every fund at its weight, the bond fund's 10% included, and one sentence of the note names the fund set aside. The same funds in another order open the answer written for them, and /api/v1/lookthrough answers them in any order, with top up to 25 and the currency given. On every answer of Diversify and X-ray the answer comes right under the question, then the byline and the actions, and the page's styles load with it. A refusal names only an address that answers with its figures, or the MCP tool, and a check of Diversify past the limits of one call opens on the overlap of each pair, computed in the browser. The Markdown of /status/ carries the page's figures, and the US ETFs covered are one figure on every page and in the MCP server.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-09-the-portfolio-x-ray-answers-at-its-own-address-every-block-in-the-page-and-in-its-downloads","date":"2026-10-09","title":"The portfolio x-ray answers at its own address, every block in the page and in its downloads","body":"A shared x-ray, https://tickerinside.com/xray/?p=VOO:60,QQQ:20,VXUS:20, now opens on its question and its answer in the page itself, readable without a script, and as Markdown at /xray/index.md with the same p. The page keeps every block it had (the key figures, where the risk comes from with its four figures and its table, the correlation and covariance matrices, which pairs hold the same companies, every pair listed) and adds the 10 largest holdings with the part through each fund, the growth of $100 held at the weights and brought back to them every week, what the funds cost at those weights, the portfolio's sectors and countries, answers to quote that name the funds with their weights, a step to Diversify, and a link, an image and a citation. The field reads a ledger, one fund per line with what it is worth, a broker's table pasted as it is, and shows how it read each line. The address carries weights only: amounts typed stay in the browser after the #, and an old link with amounts is sent to the weights. The PDF and the Markdown hold every block, and the CSV every holding and the other tables. The x-rays people share most are written into the page by the nightly build; any other portfolio names its funds and the dates of their files, and the visitor's browser computes its figures from the same files with the same module. Every address has one spelling: any other, and the utm, fbclid, gclid and ref parameters, are one permanent redirect to it; a fund not covered, or one that holds no shares to look through, answers 404 and a malformed address 400, and neither page repeats what was typed. Two files list what the x-ray reads before any fund file, https://tickerinside.com/api/v1/xray/funds.txt and https://tickerinside.com/api/v1/xray/names.txt.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-09-diversify-answers-in-one-table-each-week-drawn-one-address-per-answer","date":"2026-10-09","title":"Diversify answers in one table, each week drawn, one address per answer","body":"Each answer of https://tickerinside.com/diversify/ opens on its question and a one-line answer: of the funds you are considering, the one with the lowest overlap and the one with the lowest weekly correlation, with their period. A table follows, one row per fund with its overlap, its weekly correlation on all weeks and on the weeks your funds fell, its weight in mega-cap tech, its largest sector and its largest country outside the United States, and a row for your funds; each fund links its page. Under it, one panel per fund draws each week of the correlation, the weekly return of your funds across and the fund's up. The questions and answers name the funds on both sides, the method is printed once, and the links to the answer's Markdown and JSON keep its funds. https://tickerinside.com/api/v1/diversify gives the same line as answer, and its sentence for each fund says has an overlap of where it said shares; a too_large refusal gives what each fund's file weighed (files) or the lines of each fund (holdings_by_fund), and the page offers the checks that fit. Every answer has one address: any other spelling of a query, and the utm, fbclid, gclid and ref parameters a platform adds to a link, are one permanent redirect to it; a fund not covered answers 404 and a malformed query 400, and neither page repeats what was typed. The header lists Diversify, and below 821 pixels its sections fold behind a menu button.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-09-the-x-ray-s-address-carries-each-fund-s-weight-never-the-amounts-typed","date":"2026-10-09","title":"The x-ray's address carries each fund's weight, never the amounts typed","body":"A result of https://tickerinside.com/xray/ is shared by its address, which now gives each fund's weight in percent, two decimals that add up to 100, as in /xray/?p=VOO:61.54,QQQ:38.46. The amounts typed go after the # sign, which a browser does not send to any server, so a reload in the same browser shows the money again, while the link the Copy the link button copies and the one the PDF prints give the weights alone. A link made before, with amounts in its query, still opens its result, and the page then rewrites its address into the new form. A run without amounts keeps an address of tickers alone. The look-through of the Python client, pip install tickerinside, gives the same link with the weights alone as its page_url and in its citation from version 0.4.0, where 0.3.0 wrote the amounts into it. The privacy policy says the same.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-09-does-it-diversify-me-an-answer-for-the-funds-you-hold-and-the-funds-you-might-add","date":"2026-10-09","title":"Does it diversify me? An answer for the funds you hold and the funds you might add","body":"https://tickerinside.com/api/v1/diversify?have=QQQ:40,SMH,IBIT&try=AVUV,VXUS is a fifth answer computed when asked, beside overlap, lookthrough, batch and screen, with the same cache, the same budget of reads and the same too_large refusals. For each fund to try it gives the share of its weight the funds held already hold, looked through at their weights; the correlation of its weekly returns with the funds held, on all weeks and on the weeks they fell, with the dates; its weight in mega-cap tech, its sectors and the markets of its lines, all from its fund file's breakdown; and one dated sentence to quote. The funds to try are listed by overlap, then correlation, which the answer says is no recommendation. A trust, a derivative-based fund or a bond fund counts by its prices alone, and the answer says why a figure is missing. Up to six funds a side, with weights for all or none. https://tickerinside.com/diversify/ with the same query is the same answer written into the page, so a shared link reads without JavaScript, in HTML or in Markdown. The MCP server offers the prompt does_this_etf_diversify_my_portfolio, and get_etf_portfolio_risk reads trusts and derivative-based funds from their prices. The reason code funds_not_covered now also answers under /diversify.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-09-seventeen-more-fund-pages-with-pages-of-their-own-for-bond-derivative-based-and-trust-funds","date":"2026-10-09","title":"Seventeen more fund pages, with pages of their own for bond, derivative-based and trust funds","body":"Cohort 2 publishes 17 fund pages. Seven were asked about in a thread of 9 October 2026 on r/ETFs: AVUV, AVDV, AVES, AVEE, AVLV, IBIT and MSTX. Six are large US ETFs that had no page: BND, AGG, TLT, JAAA, TQQQ, and GLD, the gold the same thread weighed. Four were chosen for cohort 1 and waited for a price history: IJH, IJR, JEPI and JEPQ. A stock fund outside the price data now has its page from its holdings alone, with concentration and cost in place of returns and risk. Bond funds (BND, AGG, TLT, JAAA) have a page of their kind: debt by kind, the largest issuers, maturities, coupon and duration, the country of each issuer and the overlap by issuer with the other bond funds that have a page; their filings give no credit rating, and the page says so. Derivative-based funds (MSTX, TQQQ) show their exposure by underlying and by contract, never as shares held, and trusts (IBIT, GLD) what their own filing says they hold. Each page opens on one dated sentence from the fund's latest filing. Stock pages whose holders now have a page link to it.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-09-tickerinside-s-own-fund-categories-replace-the-market-data-s-and-the-category-fields-change-meaning","date":"2026-10-09","title":"TickerInside's own fund categories replace the market data's, and the category fields change meaning","body":"Until this change the site printed, for 1,263 funds, the category the market data gave: Morningstar's, read through Yahoo Finance, which TickerInside had no licence to republish. Every fund with a file now has TickerInside's own category, set every night from its own file by rules published with every threshold at https://tickerinside.com/etf/category/, with the sentence that placed it in its file's new category block (id, label, group, asset class, rule, the figures measured and the date of the file). This changes the meaning of fields of v1, which the contract says a field never takes: funds.json c, the categories of funds-columns.json, the category column of funds.csv, the category of /api/v1/screen, cat in the compare files and the category of a stock file's membership gave the market data's category, and now give TickerInside's. The old values could not stay published. So that a program written before keeps working, the nine US size and style categories keep in funds.json c, funds-columns.json, funds.csv and the screener the names those fields gave them, Large Blend to Small Value (the label of US Large Blend is Large Blend there); every other category has a new name, Foreign Large Blend now International Large Blend. New fields give the id, which never changes meaning: cat_id in funds.json, category_ids and category_labels in funds-columns.json, category_id in funds.csv and in the screener. The screener reads a category by its id, its name or its label, and reads an old name as the category it maps to (category_aliases in funds-columns.json) for as long as v1 is served; /api/v1/deprecations.json lists both. Categories have pages at /etf/category/{id}/ that list their funds with a page, and the 39 category pages of before answer 301 to the nearest one. A fund's category reads the same sector and country of each company as its breakdown.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-09-each-fund-file-gives-its-sectors-mega-cap-tech-the-ten-largest-us-companies-and-its-countries","date":"2026-10-09","title":"Each fund file gives its sectors, mega-cap tech, the ten largest US companies and its countries","body":"Every fund file of the two stock layers, under /api/v1/fund/, now carries breakdown: the fund's weight in each of eleven sectors (sectors_pct), with the weight no sector was found for and the share of its stock weight a sector was found for; its weight in mega-cap tech, a fixed list (Apple, Microsoft, Nvidia, Alphabet, Amazon, Meta Platforms, Broadcom and Tesla); its weight in the ten largest US companies of /api/v1/ownership.json; its weight in each country; and one dated sentence to quote, which the fund's page prints under its first answer, with a table of sectors and, for a fund with 1% or more outside the US, of countries. A company's sector is the one the sector funds the site reads vote for, else the sector of its SEC industry code. A line counts under the country a single-country index fund places it in, else under its market, else under the country of its company's SEC filings, so a depositary receipt counts with its company; a receipt traded over the counter whose company files nothing with the SEC counts under no country (no_country_pct). The method is at https://tickerinside.com/how-the-numbers-are-produced/#sectors. get_etf_holdings passes the object on unchanged, and the answer /fund/ composes for a fund of the other layers gives breakdown null.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-09-every-fund-and-stock-file-names-its-security-by-identifiers-that-never-change","date":"2026-10-09","title":"Every fund and stock file names its security by identifiers that never change","body":"Every fund file and stock file now carries identifiers: the asset type, the exchange it is listed on, its composite and share-class FIGI, its SEC CIK and, for a fund, its SEC series and class ids. https://tickerinside.com/api/v1/identifiers.json and its CSV twin list them in one row per fund and stock with a file, with the sources they come from. A FIGI, a CIK, a series id and a class id never change and are never given to another security, while a ticker can change hands, so a program that keeps one of them follows a security across a change of ticker. The FIGIs are read from OpenFIGI by ticker on US exchanges, and kept only when exactly one US listing of the right kind answers; the CIKs and the series and class ids from the SEC's own lists. An identifier that cannot be read with certainty is null.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-09-six-use-case-pages-with-code-that-runs-before-each-publication","date":"2026-10-09","title":"Six use-case pages, with code that runs before each publication","body":"Six pages each answer one question with the API: what an ETF holds (https://tickerinside.com/etf-holdings-api/), how much ETFs overlap (https://tickerinside.com/etf-overlap-api/), which ETFs hold a stock (https://tickerinside.com/which-etfs-hold-a-stock-api/), what changed in a fund's holdings from one file to the next (https://tickerinside.com/etf-holdings-history-api/), what a portfolio of ETFs holds underneath and where its risk comes from (https://tickerinside.com/portfolio-exposure-api/), and which ETFs pass a screen (https://tickerinside.com/etf-screener-api/). Each shows a live example read from the night's files with their dates, the shortest working code in cURL, Python and JavaScript, a Google Sheets formula where one exists, the fields to read and the limits. Every block of code is a file that runs against each night's build that has the files it reads, through the Worker that serves the API, before the build is published. All six are in one file for agents, https://tickerinside.com/api/sections/use-cases.md, and their cURL requests are in llms-full.txt.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-09-each-build-publishes-a-manifest-of-its-files-and-the-api-states-its-contract","date":"2026-10-09","title":"Each build publishes a manifest of its files, and the API states its contract","body":"Every nightly build now writes /api/v1/manifest.json last: the build's date, a digest of the API's shape, the version of the calculations, each source with its version, date and age in days, and one sha256 per family of files. The sha256 of every file under /api/v1/ is in /api/v1/sha256sums.txt.gz, in the format of sha256sum, so a copy is checked with one command. /contract/ states what the API promises inside v1, with /api/v1/changelog.json (these entries, each with an id), /api/v1/deprecations.json and the corrections registry, /api/v1/corrections.json. Every 404 under /api/v1/ now carries a reason code: a fund address with no file gives not_in_directory for a ticker that Nasdaq Trader's directory of US-listed funds does not list, or the code universe.json gives a listed one, which index.json lists under without_file. The MCP server at https://tickerinside.com/mcp gives the same codes in reason_codes, and the age of the holdings in days beside their date. The written comparisons name their overlap method, ti-overlap/1, published in /api/v1/methods.json with its test vectors.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-09-an-mcp-answer-for-a-ticker-that-is-not-covered-gives-its-reason","date":"2026-10-09","title":"An MCP answer for a ticker that is not covered gives its reason","body":"A tool of the MCP server asked about a ticker it does not cover answers as before, with covered false and no error, and now adds reason, one sentence: get_etf_holdings, compare_etfs, get_etf_overlap_matrix, get_etf_portfolio_lookthrough and get_etf_portfolio_risk say that no covered US ETF trades under the ticker and which tools answer for a stock, and compare_stocks names the tickers with no stock or fund file. find_etfs_holding_stock, asked about a ticker with no stock file that no covered fund holds, now says covered false with its reason, beside funds_holding 0; a stock with a file that no covered fund holds keeps its answer. A call that ends that way is counted as not covered, never as a failure, on every protocol revision.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-09-a-privacy-policy-and-terms-of-service","date":"2026-10-09","title":"A privacy policy and terms of service","body":"/privacy/ sets out what a request to the site, the API or the MCP server records: one pseudonymous usage record of thirteen fields, kept three months, with no IP address and no cookie, and for a call to a tool of the MCP server its name and up to eight of the tickers it asks about, never an amount or any other argument. It names who processes the records and on what basis, and how to ask to see, correct or erase them, at contact@tickerinside.com. /terms/ sets out the terms of the site, the API and the MCP server, including when an assistant calls it. Both are linked from the legal notice, the API reference and the assistant page. The legal notice called the daily caller code an anonymous identifier: it is pseudonymous, a hash of the IP address and the User-Agent that changes every day, and the notice now says so and names Simple Analytics, which counts the visits to the pages.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-09-the-etf-ownership-index","date":"2026-10-09","title":"The ETF Ownership Index","body":"TickerInside publishes the ETF Ownership Index, method ti-ownership-index/1. For each US stock with a figure in the ETF ownership ledger, /api/v1/ownership-index.json and its CSV twin give the share of its shares outstanding held by the covered US ETFs, at least, the funds counted, and the share of their holdings held by the three funds holding the most, published when 6 funds or more are counted and no sum the stock file publishes gives back one fund's count by difference with it. A market line, and a line for each sector the price data gives, weigh the companies by market cap, one line per company. The daily history, /api/v1/ownership-index/history.json and its CSV twin, gives the lines by market close from the first complete close of the ETF flows and each stock's change over 5 and 20 market days, from the net shares the funds read daily bought and sold as the flows publish them; it is under the history terms. The methodology, with its formulas, sources, limits and a worked example, is at /etf-ownership/methodology/, and the method with its test vectors is in /api/v1/methods.json. /etf-ownership/ now prints the market and sector lines and the concentration of each figure it lists.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-08-the-mcp-server-offers-five-prompts","date":"2026-10-08","title":"The MCP server offers five prompts","body":"The MCP server, at https://tickerinside.com/mcp and in the npm package tickerinside-mcp from 1.10.0, now answers prompts/list with five prompts. Each returns one user message that asks a question in plain words and names the tool that answers it: what_does_this_etf_hold (ticker, answered by get_etf_holdings), which_etfs_hold_this_stock (ticker, find_etfs_holding_stock), do_my_etfs_overlap (tickers, compare_etfs for two funds and get_etf_overlap_matrix for more), what_is_inside_my_etf_portfolio (holdings such as VOO:60,QQQ:40, get_etf_portfolio_lookthrough) and are_etfs_buying_this_stock (ticker, get_etf_flows). A missing, unknown or malformed argument is answered with the JSON-RPC error -32602 and the reason. In Claude Code each prompt is a command named after the server, for example /mcp__tickerinside__what_does_this_etf_hold VOO for a server added as tickerinside. Claude Code passes a prompt's argument up to its first space, so a list is typed there without spaces, as VOO,QQQ,SCHD, and a list that ends with a comma is refused with that reason. The tools and their answers are unchanged. Fund pages, stock pages and the home page now link TickerInside's page in Claude's connector directory.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-08-the-mcp-tools-are-named-for-what-they-do-with-etfs","date":"2026-10-08","title":"The MCP tools are named for what they do with ETFs","body":"The tools of the MCP server, at https://tickerinside.com/mcp and in the npm package tickerinside-mcp from 1.9.0, have new names: list_etfs, get_etf_holdings, compare_etfs, get_etf_overlap_matrix, get_etf_portfolio_lookthrough, get_etf_portfolio_risk, find_etfs_holding_stock, get_etf_ownership, get_etf_holdings_history and get_etf_holdings_changes, and compare_stocks keeps its own. What each tool takes and answers is the same. The older names (list_funds, fund_profile, compare_funds, overlap_matrix, look_through, risk_decomposition, stock_exposure, etf_ownership, fund_history and fund_changes) still work and give the same answers; tools/list shows the new names only.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-05-every-security-the-funds-hold-answers-under-api-v1-sec","date":"2026-10-05","title":"Every security the funds hold answers under /api/v1/sec/","body":"A security covered funds hold that has no stock file, such as a stock the price data does not list (UTHR, United Therapeutics) or a line listed abroad (7203.JP), answered 404 under /api/v1/sec/, and its holders were only in the holders shard of its first character. It now answers 200 in the shape of a stock file without prices: its holders from issuer files and from SEC filings, each dated, with \"coverage\": \"holders_only\" first. Its CSV twin lists the same holders, the heaviest first, and a share class written with a hyphen, such as BRK-A, reaches its answer at brk.a.json. That answer has no etf_ownership, holders_all, synthetic_exposure or answer field, so a program that reads /sec/ should test coverage before it reads them; the OpenAPI description types it as SecurityHoldersOnly. A 404 under /sec/ now means that no covered fund holds the key, and an old key written before lines listed abroad carried their market, such as 7203, gets the keys it reads as now in reads_as. A ticker held this way and asked for as a fund answers 404 with the reason has_security_file and the address of that answer.","url":"https://tickerinside.com/changes/"},{"id":"2026-10-04-schwab-s-funds-are-served-from-their-sec-filings","date":"2026-10-04","title":"Schwab's funds are served from their SEC filings","body":"TickerInside no longer reads Schwab's website for the holdings files of SCHD, SCHG, SCHX, SCHB, SCHF, SCHA and SCHV. Each of the seven is now served from its newest SEC Form N-PORT filing, as every fund read from SEC filings is: the SEC's data set of the second quarter of 2026 holds their portfolios of 28 February 2026, filed on 24 April 2026, and the nightly read of EDGAR serves a newer filing as it reaches each fund. Their fund files under /api/v1/fund/ keep their prices, returns and risk figures and name the filing as their source, as every fund read from SEC filings does. Their pages, and the written comparisons that name one of them, stay at the same addresses, built from that filing and dated by it. The holders of a stock, its ownership figure and whether SCHD holds it now read that filing, each with its date. The holdings history of each of the seven keeps the Schwab files archived since September 2026, up to the last one read, and its ended field says so. The issuers read from their own files are iShares, SPDR, Vanguard, Invesco and Global X.","url":"https://tickerinside.com/changes/"},{"id":"2026-09-29-the-api-reference-is-written-for-agents-and-two-addresses-answer-differently","date":"2026-09-29","title":"The API reference is written for agents, and two addresses answer differently","body":"A written comparison asked for in the other order, such as vti-vs-voo, now answers 301 to its file instead of 404. Any other pair answers 404 with the reason no_written_comparison and the two fund files to compute the overlap from. An address under /api/v1/holders/ that is not a shard answers 404 with the reason not_a_shard and the shard to read. funds.json gains each fund's issuer and size, aum_b, and for the funds read from SEC filings their net_assets, so every fund of one issuer with its size is one request. index.json names the holders shards under endpoints, as holders_shard. The /api/ reference now lists every answer an address can give in one table, which its Markdown twin, llms.txt, llms-full.txt, AGENTS.md and the OpenAPI description share. Each endpoint has a Markdown file of its own under /api/sections/endpoints/, and every code example is a plain file under /api/examples/. The terms of the holdings history now name the files they cover, /api/v1/history.json and /api/v1/history/, and say that the other files may be fetched and kept each night under CC BY 4.0.","url":"https://tickerinside.com/changes/"},{"id":"2026-09-28-preferred-shares-have-a-key-of-their-own","date":"2026-09-28","title":"Preferred shares have a key of their own","body":"Most issuer files write a preferred share under its issuer's common ticker: Invesco's PGF and PGX list JPMorgan's preferred shares as JPM, iShares' PFF lists Alphabet's as GOOGL, and the SEC filings of Global X's preferred funds do the same. Preferred stock funds were therefore listed among the holders of JPMorgan's common stock, and of Bank of America's, Wells Fargo's and Alphabet's. Such a row is now keyed as the ticker and .PFD, as in JPM.PFD, a US line apart from the common stock: three letters after the dot, which no market code has. Each fund's weights sum as before, the preferred funds hold JPM.PFD, named JPMorgan Chase & Co preferred stock, rather than JPM, and the holders of a common stock are the funds that hold it. In a preferred stock fund the key also covers the other income securities it files under the ticker, such as a business development company's listed notes. The holdings history reads the step to the first file keyed this way as a restatement, not as trades. Each stock file also gains what a reader asks first: every holder in one list with the stock's rank in the fund and the value held, the funds with the most dollars in it, whether VOO, SPY, IVV, QQQ, VTI and SCHD hold it, the issuers holding the most, the cheapest exposure per $1,000, and one sentence to quote.","url":"https://tickerinside.com/changes/"},{"id":"2026-09-28-every-line-listed-abroad-now-has-a-key-of-its-own","date":"2026-09-28","title":"Every line listed abroad now has a key of its own","body":"A line listed outside the United States was keyed by its local code alone, and a code is not a company: 7203 was Toyota in Tokyo and Elm in Riyadh, SAN was Banco Santander in Madrid and Sanofi in Paris, SU was Schneider Electric in Paris and Suncor in Toronto. A fund that held both saw them added together, and the Malaysia fund, where TM is Telekom Malaysia, was listed as the heaviest holder of Toyota's TM. Each line abroad is now keyed by its local code and its market (7203.JP, 7203.SA, SAN.ES, SAN.FR), read from what each issuer's file says about the row, and US tickers do not change. One Korean company written two ways, 005930 and A005930, is one key again, so two funds that wrote it differently, such as EEMX and EEM, now overlap on it. The funds read from SEC filings follow the same keys, the holders index lists what each earlier key reads as now, and the pages whose figures moved carry the date of the change.","url":"https://tickerinside.com/changes/"}],"contract":"https://tickerinside.com/contract/","docs":"https://tickerinside.com/api/#versions","license":"CC BY 4.0","attribution":"Credit TickerInside with a link to this file, or to the page that shows the figure, wherever the medium allows a link, and by name where it does not. How you mark the link is up to you."}