Questions, bug reports and feedback all reach a person. Please include your device model and iOS version, and describe what you were doing when it happened.
Ticker Room is an offline single-player simulation. You play a junior analyst at Halvorsen & Reed, a brokerage that does not exist, covering twelve companies that do not exist, in a market driven by a hidden macro state.
Every company, ticker, index, price, headline and person in the app is invented. No real security is quoted or referenced anywhere. Nothing in the app is investment advice, a recommendation, or a forecast about any real market.
There is no real money in the app. There are no in-app purchases, no subscriptions, no advertising and no wagering of any kind.
DATA NOT COLLECTED
Ticker Room has no account system, no analytics SDK, no advertising identifier, no crash reporting service, and it makes no network requests of any kind. The simulation runs entirely on your device.
| What | Where it lives |
|---|---|
| Campaign save Session number, prices, your estimates, published calls, reputation history, contact records, trading book | A single JSON file inside the app's own container on your device |
| Analyst name Typed by you during setup | The same save file |
| Analyst badge photo Optional, from camera or photo library | Resized and stored in the same save file. Never uploaded |
Camera and photo library permissions are used for exactly one thing: the ID badge on your desk profile. Declining either costs you nothing except the photograph, and you can remove a badge photo at any time from the desk screen.
Notifications are local notifications scheduled by the app on your own device. They contain your session number and the ticker of a call about to resolve. No push service is involved and no device token leaves the phone.
To delete everything: start a new campaign to overwrite the save, or delete the app. Deleting the app removes the save file, the badge photo and every scheduled notification immediately and permanently.
The full text is on the privacy policy page.
Each session gives you a fixed budget of actions. Spending them narrows your estimate of a company's fair value, and the resulting uncertainty band is drawn straight onto the chart.
| Action | Cost | What it buys |
|---|---|---|
| Screen | 1 | A fast quantitative pass. Cheap, wide error bars. |
| Channel check | 2 | Supplier and store-level colour. Slower, better. |
| Filing | 3 | The tightest read you can buy on one name. |
| Contact | 2 | Quality depends entirely on whose number you dialled. |
| Macro briefing | 2 | Tightens one macro series, which re-prices a whole sector. |
| Sector sweep | 2 | A shallow read across all three names in one sector. |
A call is a rating, a price target and a stated confidence. It resolves twenty sessions later against the realised move.
| Rating | Resolves in band when the move is |
|---|---|
| Strong Sell | ≤ −9% |
| Sell | ≤ −3.5% |
| Hold | within ±5.5% |
| Buy | ≥ +3.5% |
| Strong Buy | ≥ +9% |
Calls are log-scored on the confidence you stated. Right at 90% pays roughly three times what right at 60% pays. Wrong at 90% costs about four times what wrong at 60% costs. Every published call also carries a small flat cost, and confidence below 62% carries an extra penalty, so a portfolio of fifty-fifty hedges bleeds reputation slowly no matter how careful it looks.
| Reputation | Unlocks |
|---|---|
| 24 | Source grading on the wire |
| 30 | Sector sweep action |
| 38 | A seventh action per session |
| 48 | A trading book of your own, $25,000 |
| 62 | An eighth action per session |
| 74 | Footnote access — materially tighter filings |
That is the design, not a bug. The trading book and the analyst record are scored separately. If a position profits on a call that broke, the desk logs the profit and the broken call, and only the broken call moves your reputation. The tension between being profitable and being correct is the point of the game.
Bands widen by roughly two percent a session. Knowledge decays. A name you read three weeks ago is not a name you know today.
Every contact has a hidden reliability. The unreliable ones deliver biased readings with exactly as much confidence as the good ones. After 24 reputation the wire starts printing their hit rate, but that rate is built from your own call history — you have to spend on them to learn it.
Because those five series are published estimates: lagged by a few sessions and noisy on top. The true macro state is never printed anywhere in the app. A macro briefing buys you a tighter read on one series.
Not until the campaign ends. On session eighty the desk unseals the true-value line and draws it over the price history for every name, with the widest gaps measured. That reveal is the reward for finishing.
Desk → Settings → Start a new campaign. You get a fresh macro path, fresh earnings and fresh arcs. Your analyst name and badge photo are kept.
Check Settings → Notifications → Ticker Room on your device, then turn Session alerts back on inside the app under Desk → Settings. If the app shows "denied in settings", iOS is blocking them and they have to be re-enabled at the system level first.
It only works offline. There is no server component and no online mode.
Ticker Room runs on iPhone and iPad, in portrait and landscape, on iOS 16 and later. Layouts above 700 points wide use a two-column terminal arrangement. All body text is rendered at a contrast ratio of 7:1 or better against the background, and every scrolling region fades at its edges rather than cutting content off mid-line.
Audio is split into an ambient bed and interface clicks, each independently mutable under Desk → Settings. The game is fully playable in silence.
| Typeface | JetBrains Mono, SIL Open Font License 1.1 |
| Ambience | CC0 / public domain |
| Simulation | Original, offline, no server |