Overview
A station has six pumps. Each pump is a forecourt brand from a different country, and is tied to that country's currency. You put crew on a pump, and every 24 hours the six currencies are ranked by how they moved against the dollar. A share of the station's vault is split between the pumps according to that ranking, and each pump's share is split again between the crew standing at it.
Crew are NFTs. Holding one is not required to read the board; it is required to earn from it. Nothing on this page is hidden elsewhere in the interface.
The round
A round lasts 24 hours. It begins at a fixed timestamp set when the station was deployed, and every round after that starts exactly 24 hours later. Round numbers run from 0 upward and there are no gaps.
When a round ends, the six currencies are ranked by their move over the trading day
that round covered, and the round pays out. One round spends
1.5% of the vault. The vault is the balance the station holds. It is
never emptied by a single round, and whatever an underfilled station fails to earn
stays in it. The percentage is a setting the station owner can change.
Settlement
Nobody has to press anything. A keeper reports each day's moves to the oracle and calls the station to settle. Rounds settle in order and none can be skipped. If the keeper is late, the round settles whenever the numbers arrive and no payout is lost. The board says when it is waiting.
Days with no session
Currencies do not trade at weekends, and the feed carries no bar for a market holiday. A round covering a day with no session is closed as a no session round. Nothing is ranked, nothing is spent, and the vault is untouched. Crew stay where they are and lose nothing.
A no session round is not a round where everyone earns zero. It is a round that costs the vault nothing at all.
Weekends are on the calendar, so the board names the next session before it arrives. Holidays are not knowable in advance and appear after the fact as a closed round. The keeper decides a day had no session by reading the price data itself: if the date is missing from every ticker's daily series while that series already runs past it, the market was shut.
Ranking and the split
The six are sorted by their move over the day, largest first. Position decides the share of the round's pot. The shares are fixed and do not depend on the size of the moves.
| Place | Share |
|---|---|
| 1st | 30% |
| 2nd | 22% |
| 3rd | 17% |
| 4th | 13% |
| 5th | 10% |
| 6th | 8% |
Places rather than percentages. A currency falling three percent cannot distort the economics, negative numbers need no special handling, and last place still earns. A bad day at your pump is a smaller share, not nothing.
Ties are broken by pump index, lowest first. The move is measured in basis points against the previous close.
One currency per country
Each pump is a real forecourt brand, and each is tied to the currency of the country it operates in. Every one is quoted as US dollars per unit, so a rising number always means that currency strengthened.
| Index | Pump | Country | Currency |
|---|---|---|---|
| 0 | BP | United Kingdom | GBP |
| 1 | ENEOS | Japan | JPY |
| 2 | TOTAL | France | EUR |
| 3 | MIGROL | Switzerland | CHF |
| 4 | PETRO-CANADA | Canada | CAD |
| 5 | AMPOL | Australia | AUD |
They share a leg, and that cannot be removed
Every one of the six is priced against the dollar, so a dollar move is inside all six at once. Measured over two years of daily closes they correlate 0.59 on average, and on 39% of days all six move the same way. No choice of currencies avoids this: the common leg is the dollar itself.
It matters less than it sounds, because rank is decided by the order and not by the direction. Subtracting the same dollar move from all six cannot reorder them. What is left after that is relative strength, and the spread between the best and the worst of the six is 0.68% on a median day.
The pumps differ in variance, not in expectation
No currency dominates the way a single high volatility stock would. Over the same two years, the share of days each finished either first or last:
| Pump | Currency | Either end |
|---|---|---|
| ENEOS | JPY | 49.3% |
| AMPOL | AUD | 47.2% |
| PETRO-CANADA | CAD | 32.9% |
| MIGROL | CHF | 29.2% |
| BP | GBP | 26.5% |
| TOTAL | EUR | 14.9% |
Read that as a choice rather than a flaw. TOTAL rarely wins and rarely loses, so it mostly collects the middle places, which are worth 22, 17, 13 and 10 percent. ENEOS takes 30% or 8% far more often than the rest. Steady and swingy are both on the forecourt, and how full each one is decides what that costs.
Ranking on the move divided by each currency's own recent volatility was tried and made it worse, not better: PETRO-CANADA went from 32.9% to 44.9%. It is not applied.
Occupancy
A station needs a crew to run. Its rank share is scaled by how full it is, measured against the optimum, which is an even spread of all staked weight across the six pumps.
K = total staked weight ÷ 6
W = staked weight at this pump
occupancy = min(1, 2W² ÷ (W² + K²))
Below K a station earns only part of its rank share. The remainder is not given to anyone; it stays in the vault. At K and above it earns the full share and no more.
The fullest station is therefore not the best one to stand at. Past K the share stops growing while the number of people dividing it keeps growing. The useful position is near K, which the board draws as the marker on each bar.
K is not a fixed number
K is one sixth of everything staked, so it moves with the crowd. There is no absolute headcount at which a pump is full.
| Weight staked across the forecourt | K, the optimum for one pump |
|---|---|
| 300 | 50 |
| 1,500 | 250 |
| 3,000 | 500 |
| 30,000 | 5,000 |
The shape of the curve is identical at every one of those. A pump holding a quarter of K pays 0.47 of what it would pay at K, per unit of weight. Three quarters pays 0.96, twice pays 0.50, three times pays 0.33. Those ratios never change, whatever the size of the crowd.
What does change with the crowd is the size of a share. The round pot is a percentage of the vault, not an amount per crew member, so twice as many crew staked means half as much each. Growing the payout means growing the vault, not spreading out.
What a crew member is paid
Four multiplications, in this order.
round pot = vault × 1.5%
pump share = round pot × rank share × occupancy
your pay = pump share × your weight ÷ total weight at that pump
The board prints the last line directly under each pump as USDC per crew: what one crew member of base weight earned there in the round that just closed.
Pay is computed per pump using an accumulator, so the cost of settling a round does not grow with the number of crew. A round with one crew member and a round with ten thousand cost the same to settle.
A worked example
One round, with numbers. Everything here is made up except the rules.
The setup
- The vault holds 40,000 USDC, so the round pot is 40,000 × 1.5% = 600 USDC.
- 3,000 weight is staked across the whole forecourt, so K, the optimum for one pump, is 3,000 ÷ 6 = 500.
- Your station finishes 3rd. Third place takes 17%, which is 102 USDC.
- You have one crew member at tier 1, so your weight is 1.10.
If your station holds exactly K, its occupancy is 100% and it earns the whole 102 USDC. Your cut of that is 1.10 out of the 500 standing there:
102 × 1.10 ÷ 500 = 0.2244 USDC
The same round, with the station more or less crowded
Rank and pot are held fixed. Only the weight standing at your pump changes. The last column is what one unit of weight is paid.
| Weight at the pump | Occupancy | The pump earns | Per unit of weight |
|---|---|---|---|
| 150 | 16.5% | 16.84 | 0.1123 |
| 250 | 40.0% | 40.80 | 0.1632 |
| 500 (K) | 100% | 102.00 | 0.2040 |
| 1,000 | 100% | 102.00 | 0.1020 |
| 1,500 | 100% | 102.00 | 0.0680 |
The peak is exactly at K, and it is not a coincidence. Pay per unit of weight is the rank share times 2W ÷ (W² + K²), and that expression is largest when W equals K. Half as full pays 20% less per head. Twice as full pays half.
Rank still outweighs crowding
A first place station that is nearly empty can still beat a fourth place station sitting at its optimum, because 30% against 13% is a wider gap than the occupancy penalty. Occupancy decides where to stand among stations that finish near each other. It does not overturn the ranking.
Weight and tiers
Every crew member starts at base weight. The only thing that changes it is unbroken service at one pump.
| Tier | Rounds served | Weight |
|---|---|---|
| 0 | 0 | 1.00x |
| 1 | 3 | 1.10x |
| 2 | 7 | 1.25x |
| 3 | 14 | 1.50x |
A tier is earned by serving the rounds and applied by a separate transaction. Until it is applied it changes nothing. The card says when one is waiting.
Moving to another pump or coming off shift resets the tier to 1.00x and restarts the count. That is the trade the game is built on: follow the ranking and stay light, or stay put and grow heavy.
Traits carry no weight and no bonus. A rare hat earns what a common one earns.
Queued changes
Nothing you do takes effect immediately. Staking a crew member, moving one to another pump and taking one off shift are all queued and take effect at the next close.
This is what stops a round being decided in its final seconds. Nobody can watch the day play out and pile onto the winning pump before the close, because the crew who earn a round are the crew who were standing there when it began.
A queued change can be cancelled at any time before the close and cancelling costs only the transaction. Anything queued is stated on the card and drawn on the board, so what is arriving and leaving is public before it happens.
Claiming
Pay accrues to the crew member, not to the wallet. It sits with the token until claimed and can be claimed at any time. There is no window to miss and no deadline.
Unclaimed pay travels with the token. Selling a crew member transfers everything it has not yet claimed to the buyer. Claim before selling.
The oracle
A round's result comes from one contract whose only job is to record, per round, how the six moved. The station reads it and can settle nothing without it. The station does not fetch prices, does not trust a timestamp and does not compute a move.
What guards it
- A reported move larger than 30% in either direction is rejected. A mistyped number or a corrupt feed cannot pay out a fortune.
- Rounds must be reported in order. No skipping ahead, and no filling a gap later with a number chosen after the fact.
- A round already reported cannot be rewritten.
- Changing who may report takes 48 hours from announcement to effect, in the open. Changing which oracle the station reads takes the same 48 hours.
- A no session round is recorded explicitly rather than as six zeroes, so a settled round and a closed market are never confused.
Live percentages
Before a round has been scored, the board shows what the six currencies are doing now, read from a public quote feed and refreshed every minute. It is labelled not scored yet.
That number is the market, not a result. No place, no payout and no ranking appears until the oracle has reported a round that actually closed. The two are never mixed: once a round is scored, the board shows the scored move instead, because that is the number the payout came from.
Limits
| Round length | 24 hours |
| Pumps | 6 |
| Spent per round | 1.5% of the vault |
| Largest accepted move | 30% |
| Timelock on reporter and oracle changes | 48 hours |
| Crew per batch transaction | 50 |
| Crew read by one portfolio query | 200 |
| Rounds settled by one settle call | 64 |
The share spent per round is the one value here the station owner can change. The rest are constants.
What this is not
- Not exposure to any stock. No position in any asset is held on your behalf. Payouts are allocated by a public index of price moves and nothing else.
- Not a currency position. The codes name what the index reads. No currency is held, exchanged or tracked on anyone's behalf, and the forecourt brands are named for where each currency is spent, not as any association with those companies.
- Not advice. Nothing here recommends buying, selling or holding anything.
- Not real money for now. Rewards here carry no value.
Contracts
Three, each doing one thing.
- Crew. The characters. An ordinary NFT contract: mint, hold, transfer, sell.
- Station. The forecourt. Who stands where, what each round paid, and what is owed to whom.
- Oracle. Six moves per round, and nothing else.
All three are linked with their live addresses from the footer of the station, so what the page shows is always what is deployed.