What AGENCY is
In one breath
A kit for building trading agents. You write the rules, other people put their capital behind them, and you keep a share of what they make.
The feeling we are selling
Not excitement. Standing behind your own work. Somebody had an idea about how markets behave, wrote it down as rules that anybody can read, and let it run in public where it could be wrong. What we sell is the record that comes out of that, and the nerve it takes to publish one.
Everything visual follows from that. Paper and ink rather than screens and neon. Records, files, a roster. One red, used the way a stamp is used. Nothing that looks like a trading terminal, because a terminal sells urgency and we are selling the opposite: a thing that gets more valuable the longer you leave it alone.
If a page could be mistaken for a live-trading dashboard, it is wrong. If it could be mistaken for a contract, a case file, or a league table, it is right.
Tone of voice
Six rules. They are the ones the rest of this site was actually written against, not an aspiration for later.
Say the number
Never “strong returns” when you can write +7.99%. A range beats an adjective, and a figure someone can check beats both.
Name the cost
Every choice gives something up. If the defensive agent trades return for drawdown, that sentence appears next to the number, not three paragraphs later.
No superlatives
No “revolutionary”, no “seamless”, no “the future of”. If it is genuinely first, say what it is and let the reader conclude that.
Admit what does not exist
Say no capital is deployed, none of this is audited, nothing has been bought back, and say it in the same size type as everything else.
British spelling, plain words
Prefer the ordinary word. Book over allocate, rules over strategy parameters, gets out over de-risks.
The vocabulary is an agency’s
A talent agency already has a word for every step, so we use theirs. Sign, roster, book, commission, division, board. Never invent a word where one exists.
In practice
Logo and wordmark
A serif wordmark in small caps proportion, preceded by a red diamond. The diamond is a square turned forty-five degrees. A seal, not an arrow and not a chart.
Rules
- The diamond sits left of the wordmark, vertically centred, at 45% of the cap height.
- Clear space on every side is one diamond width. Nothing enters it.
- Minimum width is 96 px on screen. Below that, use the diamond alone.
- On red, the whole lockup goes to the paper colour. Never red on red.
- The wordmark is always AGENCY in full. There is no abbreviation and no monogram.
Do not
Colour
Warm paper, ink, and a single red. The values below are read from the running stylesheet, so this page cannot describe a palette the product has moved on from. Contrast ratios are computed live against the current theme.
Core
The ratio rule
Red never exceeds about five percent of a view. It marks one primary action, the active state, and losses, and nothing else. A page with two red buttons has no primary action.
Roughly the proportion a page should land at: paper, ink, and a stamp.
Red does double duty, on purpose
The same red is the brand colour and the loss colour. That is a decision, not an oversight: brand red only ever appears as a filled surface (a button, a stamp), and loss red only ever appears as text or a line. The two contexts never meet, and two nearly-identical reds side by side would be worse than one clear one.
Data colours
Series colours are a separate system. They are checked against the common forms of colour blindness in both themes, do not change them without checking again, and never introduce a fourth series colour by picking something that looks nice next to the other three.
Typography
Three roles, no webfont. Everything is a system stack: the site loads no font files, which keeps it fast, keeps it working offline, and means a page never renders in a fallback nobody designed for.
Rules
- Every number is mono and tabular. A column of figures that does not line up is a column nobody reads.
- Headings are serif, body is sans. Never a serif paragraph and never a sans heading.
- Small caps labels are mono, uppercase,
0.11emtracking. They label; they never carry meaning on their own. - Measure caps at about 76 characters. Longer is unreadable, shorter looks like a poster.
- No italics for emphasis. Use bold. Italics are for the odd term or aside.
Imagery
There are no photographs. Not of people, not of offices, not of screens. A stock photograph of someone smiling at a laptop is a claim about a company that does not exist yet, and this project’s whole argument is that it does not make claims it cannot back.
What we use instead
- Charts. The equity curve is the hero image. It is drawn from real numbers or it is not drawn.
- Agent marks. Generated from the agent’s name. Symmetric, muted, reproducible. Nobody stands there blank and nobody uploads a face.
- Tables. A well-set table is imagery here. It is what a roster looks like.
The same name always produces the same mark, on any machine.
Hatching means recalculated
Diagonal hatching under a curve, with a red Backtest tag, means the numbers were computed after the fact. A plain curve with a green Ran, not recalculated tag means it happened. This is the most important visual rule on the site. Blur it and the product loses the only thing that separates it from a screenshot.
Motion
Restrained, and every piece of it earns its place. Motion here shows that something was computed or that something is current. It never decorates and it never asks for a decision faster than a reader can make one.
| Allowed | Duration | Why |
|---|---|---|
| State changes on hover and focus | 120 ms | Confirms the thing is interactive. Below 100 ms it reads as a glitch. |
| Tooltip fade | 100 ms | Stops a crosshair from flickering as it crosses points. |
| The price ticker | 70 s per loop | The one continuous motion on the site. Pauses on hover. |
| Anchor scrolling | native | Keeps a reader oriented when a link jumps. |
| Live pulse on a chart | 1.9 s loop | Sits on the last point. Marks where “now” is while a figure is being recomputed. |
| Chart line drawing in | 850 ms, once | Once per render, never on scroll. Shows the line was computed rather than placed. |
| Sections easing in | 500 ms, 14 px | Guides the eye down a long page. Small enough that nobody waits for it. |
| A figure flashing on change | 450 ms | Only the figures that actually changed, so a moved slider is legible. |
Never
- Numbers that count up. A figure that animates from zero is a figure being sold to you. Ours flash once when they change and land on the true value immediately.
- Parallax, or anything that moves faster than the page scrolls.
- Motion that delays reading rather than following it.
- Loading spinners where a plain sentence would do.
Every transition on the site is disabled under prefers-reduced-motion. The ticker stops and becomes a scrollable strip, the pulse holds still, and
sections appear without easing. The reveal is applied by script rather than in the
markup, so a page with no JavaScript shows everything rather than nothing. Anything
added later respects both rules or it does not ship.
Downloads
Generated on the spot from the same code the site runs on, so a downloaded asset is never a stale copy of the real one.
Using the mark elsewhere
You may use the wordmark and diamond to refer to AGENCY. In an article, a deck, a list of tools. Do not use them to suggest a partnership, an endorsement, or that something is an official product. Do not put them on a token, a pool or a website that is not ours.