Documentation
FN2 is an AI analyst for the markets. Ask a question in plain English and it pulls the prices, earnings calls, filings, and macro data it needs, then answers with the sources attached. This guide covers how to ask, the tools the model reaches for, and how to put that work on a schedule.
What FN2 is
FN2 is a chat box. You type a question about a stock, a sector, the economy, or an earnings call, and the AI answers. What makes the answer worth trusting is everything behind the chat box: live quotes, a large library of earnings-call transcripts, Federal Reserve data, the open web, and a backtesting engine. The model decides which of those it needs for your question, fetches the data, and cites it.
You can work two ways. In chat, you drive the conversation and get answers in real time. With an agent, you hand the same work to a schedule: FN2 runs the research on its own and emails, messages, or texts you the result.
Ask in plain English
"What did Microsoft say about AI spending last quarter?" The AI does the reading and answers with quotes and a source list.
Real data, not guesses
Prices, earnings transcripts, FRED macro data, prediction markets, and the open web. Every number traces back to the tool that fetched it.
Put it on a schedule
Turn any research task into an agent. It runs every morning, after the close, or on a custom cron, and reports back.
Get it where you work
Agent results arrive by email, Discord, or text. Wire up a channel once and point any agent at it.
FN2 is a research tool, not a broker. It reads, analyzes, and reports. It does not connect to your brokerage or place trades, and nothing it says is financial advice.
See it in action
Here are real questions and the answers FN2 gave. Click any one to open the live chat. No signup needed.
You do not need special syntax. Plain questions work. But a little specificity pays off, because it tells the model which tools to reach for. Name the ticker, the timeframe, and what you actually want to know.
After each answer, FN2 suggests follow-up questions. They are a fast way to go deeper without typing, and a good hint at what the model can do next.
Quickstart
The fastest way to understand FN2 is to ask it something. Here is the path from sign-up to a scheduled agent in about five minutes.
Create an account
Sign up with email or Google. New accounts start a free trial with access to every tool, so you can test the real thing before picking a plan.
Ask your first question
You land on the chat screen with live index charts. Type a question and send it. The answer streams in, often with a chart or a source card.
Show me NVIDIA over the last six months and what's driving itFollow up
FN2 keeps the thread of the conversation, so you can build on the last answer without repeating yourself.
Now compare it to AMD, and pull the latest from both earnings callsCheck the sources
Numbered markers like [1] appear inline in the answer. Click one to see exactly which transcript, filing, or page it came from.
Hand it to an agent
When a question is worth asking every day, make it an agent. You can even set one up from chat.
Create an agent that emails me a market briefing every weekday at 8amHow FN2 works
Here is what happens after you hit send. FN2 is a language model with a research desk attached. When your question arrives, the model decides which tools it needs, runs them, reads what comes back, and writes an answer grounded in the results. You never call a tool by name. You describe what you want, and the model wires up the steps.
The tools are grouped into skills. A skill is a bundle of related tools the model loads when your question calls for it. Asking about an earnings call loads the transcript-search skill; asking for the macro backdrop loads the FRED skill. This keeps the model focused on the right tools for the job instead of juggling all of them at once.
Two things make the output trustworthy:
- Grounding. Figures come from a tool that fetched them, not from the model's memory. If the data is not available, FN2 says so rather than inventing it.
- Citations. The model marks claims with inline
[N]references that link to the underlying source. Citations that do not resolve to a real source are dropped before you ever see them.
If you ever want to know how FN2 reached an answer, just ask: "What did you check for that?" It will tell you which tools and data it used.
Talking to FN2
You ask, FN2 answers, and an answer can carry more than just text: interactive price charts, company cards, earnings transcripts, news, macro tables, and prediction-market odds, depending on what you asked.
The welcome screen
Open the chat and you see live charts for the S&P 500, NASDAQ, and Dow, plus a search bar for jumping straight to any ticker. Click an index to open its panel, with the chart, a read on why it moved, and the key numbers for the day. Your recent agent runs sit just below, one click away.
What an answer can contain
- Text formatted with headers, lists, and emphasis.
- Charts you can zoom and re-range (1D through 5Y).
- Company cards with logo, price, and key metrics.
- Earnings transcripts with the relevant passage highlighted.
- News with source, date, and a one-click "Ask AI".
- Macro tables from FRED with year- and month-over-year changes.
- Citations linking each claim to its source.
History and shortcuts
Every conversation is saved. Search past chats by keyword or browse by date, and pick up any one where you left off. A few keys speed things up:
| Shortcut | Action |
|---|---|
| Enter | Send message |
| Shift + Enter | New line |
| Esc | Close panels and search |
Citations & sources
When an answer leans on data, FN2 marks the claim with a numbered reference like [1]. Click it to open the source: the exact earnings passage, the filing, the news article, or the web page the model read. This is on by default; there is nothing to turn on.
Citations are a grounding safeguard, not decoration. The model proposes them as it writes, and the server checks each one against a real, stored source before saving. Any citation that does not resolve gets dropped, so a number in your answer always points to something you can open and verify.
Models & file uploads
Choosing a model
A dropdown in the chat input lets you pick which AI model answers. They trade off speed against depth: some are quick for everyday lookups, others reason harder for tougher analysis. Which models you see depends on your plan.
Uploading a document
Attach a PDF or text file and ask about it. Click the attachment button or drag the file into the input. FN2 extracts the full text and reasons over it, which is handy for a 10-K, a research note, or a slide deck.
- Supported: PDF and plain text (
.txt). - Up to 20 MB, one file per message.
Tools the AI can use
The model has a set of tools for fetching real data and running real analysis, and it picks them automatically based on your question. You will never type a tool name; you just ask, and the right tool runs behind the scenes.
Here is the full set, with an example of what triggers each and where it is available.
| You ask for… | Example | Available in |
|---|---|---|
| Quotes & charts | "Chart NVDA over six months" | Chat & Agents |
| Technical analysis | "Run technical analysis on AAPL" | Chat & Agents MAX |
| Market screening | "Top 10 gainers today by volume" | Chat & Agents |
| Earnings transcripts | "What did MSFT say about AI capex?" | Chat & Agents |
| Macro data (FRED) | "Give me the macro snapshot" | Chat & Agents |
| Prediction markets | "Polymarket odds on a September cut" | Chat & Agents MAX |
| Web search & browsing | "Find and read the latest on Tesla" | Chat & Agents |
| X / Twitter search | "What's the chatter on $NVDA on X?" | Chat & Agents MAX |
| Backtesting | "Backtest a 50/200 SMA crossover on SPY" | Chat & Agents MAX |
| Your watchlists | "What's in my tech watchlist?" | Chat & Agents |
| Document parsing | (attach a PDF) "Summarize this 10-K" | Chat |
| Manage your agents | "List my agents and pause the macro one" | Chat |
The same tools power chat and agents. The difference is the trigger: in chat you ask in the moment, while an agent calls them on a schedule. A few tools are scoped to one mode, noted where they come up.
Quotes & charts
The everyday tool. Ask for a price and FN2 pulls the history and renders an interactive chart you can zoom and re-range. Give it a date window, an exact range, or "the last N days", and name more than one ticker to compare them on a single chart.
Chart AAPL year to date
Compare NVDA, AMD, and INTC over the last 12 months
What's SPY doing intraday right now?You can also jump straight to a ticker with a URL:
/chat?ticker=AAPLTechnical analysis MAX plan
Ask for technical analysis and FN2 builds a study chart with the standard indicators overlaid: moving averages (SMA and EMA), RSI, MACD, and a volume panel. This is an on-request tool. Everyday price charts stay clean, and the indicators show up only when you ask for them. Technical analysis is available on the MAX plan.
Run technical analysis on TSLA
Show me RSI and MACD for the S&P 500 over the last yearThe indicators are computed server-side and drawn onto the study chart. The standard in-chat price chart does not have toggleable on-chart overlays; ask for technical analysis to get the indicator view.
Market screening
When the question is about the whole market rather than one stock, FN2 queries a price-history workspace to find the names that fit: biggest gainers and losers, volume and dollar-volume leaders, the largest movers in a window. It is read-only and answers breadth questions a single quote lookup can't.
What are today's biggest gainers above $5?
Show me the top dollar-volume leaders right now
Which large caps fell the most this week?Earnings transcripts
FN2 searches a large library of earnings-call transcripts by meaning, not just keywords, so you can find what management actually said about a topic even when they used different words. You can pull quotes, track how a company's story shifts across quarters, or count how many companies are talking about a theme.
Search earnings calls for AI monetization guidance this year
How has Nvidia talked about China over the last six quarters?
What did Costco's CFO say about membership fees on the last call?
How many S&P 500 companies mentioned tariffs last quarter?You can also open a specific report directly:
/chat?ticker=AAPL&quarter=Q4&year=2024Macro & prediction markets
For the bigger picture, FN2 reads Federal Reserve data (FRED) and prediction markets.
Macro snapshot (FRED)
Ask for the macro backdrop and you get a current read on unemployment, inflation, rates, the yield curve, the VIX, credit spreads, consumer sentiment, and GDP, with historical comparisons. You can also pull any individual series over time.
Give me a macro snapshot
Plot the 10-year Treasury yield over the last two years
How has core CPI trended this year?Prediction markets (Polymarket) MAX plan
FN2 reads live and resolved Polymarket markets, so you can fold real-money odds into your view. It is read-only: FN2 reads the markets, it does not trade them. Prediction-market search is available on the MAX plan.
What does Polymarket say about the next Fed decision?
Show me the odds history on that market as a chartWeb & X search
Web search and browsing
For anything happening now, FN2 searches the web, opens pages, and reads them as clean text, including many paywalled and bot-protected sites. It can also pull tables out of a page as structured data. This is how the model handles current events that are not in the markets or transcript data yet.
Find the latest reporting on the OpenAI funding round and read me the top piece
Pull the guidance table from this press release: X / Twitter search MAX plan
FN2 can search recent public posts on X (Twitter) for market chatter and sentiment. It only runs when you explicitly ask about X, Twitter, tweets, or social sentiment, and it filters for quality (verified accounts or posts with links) so you are not reading noise. A search returns up to about 10 recent posts.
What are people saying about $PLTR on X this week?
Check Twitter sentiment on the new Fed minutesX search is a premium feature on the MAX plan. Each search is billed per result returned, which is why it only runs when you ask for it by name. It is not a substitute for general news search; use web search for that.
Backtesting MAX plan
Describe a trading strategy and FN2 will test it on historical data. The AI writes the strategy as code, runs it in a sandbox, fixes its own errors, and reports back the return, the number of trades, and the win rate. You steer it in plain language; you do not write any code yourself. Backtesting is available on the MAX plan.
Backtest a 50/200-day moving-average crossover on SPY over five years
Test buying QQQ when RSI drops below 30 and selling above 70The backtester covers US-listed equities on daily or minute bars, one symbol per run by default, with $100,000 of starting cash. The sandbox has no internet access and runs under a time and memory limit. It is a conversational engine driven by the AI, not a point-and-click strategy builder, and the results are simulations, not live trading.
Your watchlists
Your saved watchlists (called collections) double as context for the AI. Ask portfolio-aware questions and FN2 reads your real lists. It can also edit them for you: add or remove tickers, create a new list, rename or delete one, all from chat.
What's in my watchlist and how did it do this week?
Add NVDA and AMD to my Semis list
Make a new collection called Dividends with KO, PEP, and JNJThe AI only ever reads and edits your collections. You can also manage them by hand in Settings → Portfolio.
Scheduled agents
An agent is the same AI with the same tools, running on a schedule without you in the chair. Point it at a research task and it executes on its own, then delivers the result. Morning briefings, earnings monitors, thesis trackers, macro watchdogs: anything you would ask in chat, you can ask on a timer.
Starting an agent
Open the Agents panel and start from a template or a blank prompt. You can also just describe it in chat and FN2 will set it up:
Create an agent that texts me if AAPL drops more than 5% in a day
Set up a weekly Monday-morning briefing on my watchlist and email it to meTemplates
- Morning Briefing: a pre-market summary of overnight moves, news, and your watchlist.
- Earnings Monitor: tracks upcoming and recent earnings for the companies you follow.
- Thesis Tracker: watches for developments that support or undercut a thesis you describe.
- Sector Scanner: ranks names in a sector by the metrics you care about.
- Macro Watchdog: keeps an eye on Fed policy, inflation, the yield curve, and other macro signals.
Configuration
Each agent has a prompt, a model, a maximum run time, and a set of tools it is allowed to use. You can label agents to keep them organized, and shared agents respect roles, so a viewer can't edit or delete the owner's agent.
Output
Every run keeps its full transcript, so you can always reopen an agent and read exactly how it reasoned, and an agent can look back over its own past runs to compare against what it found last time. You choose what gets delivered: the full transcript, a summary, just the final message, or a formatted PDF report.
Schedules
New agents default to a recurring weekly run, Monday at 9am in your timezone, with an email to you turned on. Change any of that in the wizard. The scheduling options are:
- Recurring: hourly, daily, weekdays, weekly, or a custom cron schedule.
- Market-aware: run at the open (9:30am ET) or close (4:00pm ET), with an optional offset like "15 minutes before the close".
- Run Once: a single run at a future time, for example the morning a company reports. It shows up as a scheduled card you can cancel before it fires.
- Timezone-aware: every schedule respects your configured timezone.
- End date: optionally stop a recurring agent on a date you set.
Custom schedules use standard five-field cron syntax:
0 13 * * 1-5 runs at 1:00pm every weekdayAgent memory
Recurring agents can remember across runs. A monitor records what it reported last time, then on the next run it compares against fresh data and surfaces only what is genuinely new, instead of re-sending the same headline every morning. Memory is per-agent and kicks in when the agent's job calls for it.
You can see what an agent has stored in a chat's Statistics view, under Agent Memory.
A normal chat is different: it keeps context within the conversation, but it starts fresh next time.
Delivering results
When an agent finishes, it can push the result to you over email, Discord, or text. Email is the default and the most fully featured, so this section walks the email path end to end, then covers Discord and SMS and what to do when a notification does not arrive. This is the technical version, for power users wiring up agents.
How an agent email is built and sent
A delivered email is the end of a fixed pipeline. Nothing in it is improvised by the model except the words:
- The run completes. A scheduled or one-off agent run finishes and produces a structured result, not free text.
- A completion hook fires. The agent calls its delivery tool, for a briefing that is
send_briefing_email, which carries the result plus the hook's event and condition. - mcp-hooks forwards it. The hook service checks the condition, resolves the recipient, and posts to the server. It is also where an unsubscribe or a disabled email type stops the send.
- The server renders the template.
send_agent_template_emailvalidates the payload, renders one of the fixed layouts, and attaches the unsubscribe headers. - The provider delivers it. The rendered email goes out through Mailgun from
notifications@fn2.ai.
Anatomy of a hook
A completion hook is what turns a finished run into a notification. You attach one under Advanced → Hooks when you create or edit an agent, and an agent can carry several at once. Each hook has four parts:
- Event — when it fires.
on_completeruns after the agent finishes a run. - Condition — a filter on whether to send.
successsends only when the run succeeded; a material-change condition stays quiet on a run that found nothing new. - Action — the channel:
email,discord, orsms. - Template and recipients — a
template_id(briefing,earnings, oralert) and who receives it. Leave recipients empty (to:[]) and the server resolves them to your own account address. The model never chooses who gets the mail.
What the email contains
Three layouts cover the agent email types, each rendered from the structured fields the agent filled in:
- Briefing — a headline, a short intro block in the agent's own words, a row of KPIs, a table, labelled sections, and an optional pull quote.
- Earnings — a headline, the quarter's KPIs, a quote from the call, and sections of detail.
- Alert — a tight headline, a one-line summary, and the supporting details.
Every email is structurally validated before it is sent. A payload with nothing renderable, no headline and no table, sections, or KPIs, is rejected at the server rather than delivered. You never receive a blank email: a misfiring agent sends nothing instead of an empty shell.
The header carries quick links, Help, Edit, and New Agent. While you are signed in they jump straight to the agents view. If your session has expired, the Edit and New Agent links sign you back in through a single-use magic link, so you land where you were going instead of on a login wall. You can turn that off under Settings → Notifications.
Turning email on, off, and unsubscribing
There are two independent layers of control over agent email:
- Notification toggles. Each email type can be switched off under Settings → Notifications. A disabled type is dropped at send time, before the provider is ever called.
- Per-agent unsubscribe. Every agent email footer carries an Unsubscribe link with a signed, per-agent token; clicking it silences that one agent, not all of FN2. Standards-compliant
List-Unsubscribeand one-click headers are set too, so your mail client's native Unsubscribe button works.
Every agent email also ends with the standing disclaimer: results are for educational purposes only and should not be considered financial advice.
Discord
Post agent results into a Discord channel. The simplest setup is a channel webhook: paste the webhook URL in Settings → Integrations and FN2 posts a rich embed to that channel. If you link the FN2 Discord app, or add the FN2 bot to your server, you can also get results as a direct message or have them posted to a chosen server channel.
Text message (SMS)
Get a one-line alert texted to your phone. SMS is a Pro feature, with a 30-day trial on new accounts. Verify your number in Settings → Integrations first (with consent), then point an agent at it, or simply ask the chat agent to text you. Texts always go to your own verified number, never an address the model chose. Standard STOP / HELP / START replies work, and there is a daily limit of about 20 texts.
When a notification does not arrive
Agent notifications are deliberately quiet, so a missing one is usually working as intended. Check these in order:
- The hook condition held it back. A
successcondition skips a failed run, and a material-change condition skips a run that found nothing new. This is the most common reason and it is by design. - The email type is switched off. Check Settings → Notifications.
- You unsubscribed from that agent. The footer link is per-agent; re-enable it from the agent.
- Test the hook. Trigger the agent with Run Once, then check the run in the agents view, it records whether the notification was sent, skipped, or suppressed.
FN2, not the AI, decides who a message goes to. The model writes the content; recipients are resolved on the server from the destinations you set up. A single run will not double-send, and an agent that finds nothing material skips the notification entirely rather than send an empty one.
News
The News page is a curated financial feed you can filter by topic: Markets, Economy, Earnings, Crypto, Commodities, Politics, or Tech. Switch between a grid layout (a lead story plus cards) and a list. Each story shows its headline, source, and timestamp, and an "Ask AI" button hands the article straight to chat for analysis. A live ticker bar across the top tracks the major indices.
Market heatmap
The Market page shows an interactive treemap of the S&P 500. Stocks are grouped by sector and industry, sized by market cap, and colored by the day's performance. Click a sector to zoom in, and hover any tile for the price change and peer context.
Macro dashboard
Ask for a macro snapshot in chat and FN2 lays out a dashboard of the key indicators with current values and recent changes, grouped into labor, inflation, growth, rates, and credit. It also matches the present against historical analog periods, to give the current reading some context. Ask about any single indicator to get its full time series.
Sharing & export
Share a conversation or take it with you.
- Public link: generate a view-only link anyone can open, no account needed.
- Email invite: give specific people access by email, and revoke it any time.
- Export: download a chat as a PDF, Markdown, or plain text, or have it emailed to you.
Languages
FN2 speaks eight languages: English, Chinese, Spanish, French, Italian, Japanese, German, and Korean. The whole interface translates, and the AI answers in your chosen language too.
Switch from the globe in the footer or from Settings → Profile → Locale. If you are signed out, FN2 picks a language from your browser automatically. English is always the fallback.
Accounts & sign-in
Sign-in methods
- Email and password with a verified email address.
- Google for one-click sign-in.
Forgot your password
If you signed up with email and password, use "Forgot password" on the login page. You'll get an emailed link to set a new one. Resetting a password signs out your other sessions. Accounts created with Google are pointed back to "Sign in with Google" instead, since they have no password to reset.
Sessions
A sign-in lasts about 8 hours by default, and you can change that in Settings (up to "stay signed in"). If a session expires while you are mid-chat, FN2 sends you to the login page and brings you right back to the same conversation after you sign in.
Settings
Tune FN2 from the Settings page in the user menu.
- Profile: your name, avatar, timezone, and language.
- Appearance: light or dark mode, and chart density (Standard, Detailed, or Maximum), which controls how many data points AI-generated charts use. The default is Maximum.
- Notifications: how and when you get alerts.
- Integrations: connect Discord and verify a phone for SMS. These are the destinations your agents deliver to.
- Privacy: control your data settings.
A Changelog in the account menu lists recent product updates. It stays out of your way unless you opt into the on-sign-in notice.
Portfolio
Keep the tickers you care about in collections, a set of simple ticker lists. Create as many as you like for different strategies, and add or remove symbols by typing them. The editor lives in Settings → Profile → Portfolio.
Collections do double duty as context for the AI. Your agents and chats can read them ("how is my watchlist doing?"), and the AI can edit them for you on request. See Your watchlists for what the AI can do with them.
API access
Manage API keys from the Developer section in Settings. Create keys with a name and a read or write scope, set an optional expiry, and watch usage per key (request counts, tokens, and last-used time). Activate, deactivate, or delete a key at any time.
Authenticate with a bearer token:
Authorization: Bearer <your-api-key>The chat endpoint streams responses as Server-Sent Events. Each event carries a content type that tells you whether it is text, a chart, earnings data, news, or another payload:
data: {"type": "text", "content": "NVIDIA closed at ..."}
data: {"type": "chart", "symbol": "NVDA", "points": [ ... ]}Treat API keys like passwords. Don't share them or commit them to version control. If a key leaks, deactivate it in Settings and issue a new one.
Plans & billing
The table below loads from the same plan catalog used at checkout, so it always reflects current pricing.
Loading current plan catalog…
Every plan includes the full data set: earnings transcripts, FRED macro data, real-time market data, and inline source citations. Higher tiers raise your usage limits and add scheduled-agent capacity. The MAX plan also includes the premium tools: technical analysis, backtesting, prediction markets, and X search.
Paid plans start with a free trial; cancel before it ends and you won't be charged. Payments run through Stripe, and you can update your card, see invoices, or cancel from the Account section in Settings.
Frequently asked questions
Can FN2 place trades?
No. FN2 is a research tool. It analyzes markets and reports back, but it does not connect to a brokerage or execute orders. Backtests are simulations on historical data, not live trading. Nothing FN2 produces is financial advice.
How accurate is the analysis?
Answers are built from real data with the sources cited inline, so you can check the underlying transcript, filing, or page yourself. Treat the output as research assistance and verify anything you act on.
What data does FN2 use?
Real-time and historical market data, a large library of earnings-call transcripts, Federal Reserve (FRED) macro data, and the open web, where it reads news, SEC filings, and other primary sources on demand. Some tools are reserved for the MAX plan: technical analysis, backtesting, prediction markets, and X (Twitter) search.
Does FN2 remember me between conversations?
A chat remembers everything within that conversation, but a new chat starts fresh. Scheduled agents are different: they keep memory across runs, so a daily monitor can tell what is new versus what it already reported.
Can I upload my own documents?
Yes. Attach a PDF or text file (up to 20 MB) in chat and ask about it. FN2 reads the full document to answer.
What languages are supported?
Eight: English, Chinese, Spanish, French, Italian, Japanese, German, and Korean. The interface and the AI's answers both follow your choice.
Is my data secure?
Data is encrypted in transit and at rest. Your history, watchlists, and agent configurations are private. Payments are handled by Stripe; FN2 never stores your card details.
Can I cancel anytime?
Yes. Cancel from Account settings whenever you like and keep access through the end of the current billing period.
Troubleshooting
Answers are slow
Questions that span many transcripts or pages take longer; FN2 shows what it is working on as it goes. Narrowing the question (one ticker, one timeframe) usually speeds it up.
A chart isn't loading
Charts need JavaScript. If one comes up blank, refresh the page and check that scripts aren't being blocked.
An agent isn't finishing
Agents have a maximum run time. If one keeps timing out, simplify the prompt, narrow its scope, or raise the time limit in the agent's settings.
A file upload failed
Make sure the file is a PDF or TXT under 20 MB, then try again.
Contact
Reach us at:
- Support: support@fn2.ai
- Enterprise: enterprise@fn2.ai
- Feedback: feedback@fn2.ai. We read every message.
We aim to respond within 24 hours, with priority support for Enterprise customers.