Changelog
Every public change to HYPERNOVA is recorded here, including bugs that were fixed. A calculation tool is only as trustworthy as its willingness to admit what it got wrong — so fixes are listed as fully as new features.
The liquidation warning read 0.00 for low-priced instruments. The notice “liquidation price X sits before stop price Y” rendered both prices at two decimal places, while 29 of the 177 listed Hyperliquid perpetuals trade below $0.01 and 134 below $1. For those instruments the site's single most important warning read “liquidation price 0.00 sits before stop price 0.00”. Both figures now use the same adaptive precision as the results panel.
A failure to save the journal produced no warning at all. In private browsing, or once the storage quota is full, the write error was swallowed silently and entries vanished on reload while the user believed them saved. The failure is now reported at once, with a suggestion to export a backup first, and only once per episode.
Imported entries were not validated the way manually entered ones are. Manual entry rejects a risk of zero or less; import accepted such rows and counted them as R=0, quietly depressing expectancy. Validation is now shared, skipped rows are reported honestly, and a failure to read the file is no longer silent.
Document structure restored. The five section headings were plain divs, so a screen reader's heading outline contained only the hero title and the panel sub-headings — “Position calculator”, “Trading journal” and “Methodology” were absent entirely — and the page had no main landmark. Section headings are now h2, the principle cards h3 (previously h4, skipping a level), the content sits inside main, and a skip link has been added.
Text contrast now meets WCAG AA. The two muted greys used for result-row labels, section ledes, field hints and input placeholders measured 4.18:1 and 2.65:1 against the panel background, below the 4.5:1 required for body text. The minimum is now 4.51:1, with hue and hierarchy unchanged.
When a journal entry's risk or P&L is malformed, the form previously just moved the cursor without saying why. It now explains.
The Chinese pages carried English Twitter card titles and descriptions, so sharing them on X showed English text that did not match the Open Graph tags.
The legal and changelog pages carried no social card tags at all and produced no preview when shared. All six now do.
The 404 page has been folded into the build. It was a separately hand-written palette in which seven of eight design tokens had drifted from the rest of the site, and it still carried a long-abandoned gradient logo. Its tokens now come from the homepage and the mark matches the header.
Content Security Policy tightened: the analytics domain, never used, has been removed so the policy matches the privacy policy's statement that the site carries no analytics script.
Build scripts and page source JSON are no longer served as public assets — they are build-time files, and pages/*.json duplicates the legal page text.
The English homepage description tag has been cut from 333 characters to 158; the theme colour now matches the actual page background.
The per-trade risk presets are now 0.25% / 0.5% / 1% / 2%, replacing 0.5% / 1% / 2% / 3%: 3% has been dropped and 0.25% added, covering more conservative position sizing.
The maintenance margin rate could retain a value belonging to a previously looked-up contract. Once an instrument had been resolved, switching to one outside the listing — or clearing the field entirely — left that number in place and still feeding the calculation, even though the notice told the user to enter it manually. Carrying BTC's 1.25% over to another instrument understates maintenance margin and places the computed liquidation price further away than it really is. Automatically filled values are now distinguished from values the user typed: the former are cleared on leaving the contract, the latter are always kept. An unset rate is also no longer treated as 0%, which produced a plausible but more dangerous liquidation price; the row now reads “—” with an explicit notice. Position size, notional value and other results that do not depend on this parameter are unaffected.
The language switch on the English pages pointed at itself, so once you switched to English there was no way back to Chinese. The generator's replacement rule still targeted the pre-redesign header markup, and a replacement that matches nothing fails silently rather than raising. Every replacement in the generator now aborts the build when it fails to match, and the output is checked for a working route back to Chinese before it is written.
The language switch now names the target language in that language: Chinese pages show English, English pages show 中文. Consistent across all eight pages.
The suggestion dropdown has been removed from the instrument field. With 177 listed contracts the list was awkward either way: alphabetical order put barely-traded instruments at the front, while volume order made everything past the top twenty impossible to look up. Traders already know which instrument they are opening, so the field is now plain text. Automatic lookup of max leverage and maintenance margin on input is unchanged.
The site icon left transparent pixels outside its rounded corners, which rendered as a white ring on light tab bars. The icon is now full-bleed; rounding is left to the platform.
The header was rebuilt as a row of chips, separating the wordmark, navigation and actions, and stays on a single line on mobile.
Standalone Terms of Service and Privacy Policy pages, in both languages. The privacy policy lists item by item what the site stores on your device and what its single outbound request is.
Footer links to the legal pages, a contact address and the source repository, plus a statement of non-affiliation with Hyperliquid Labs.
Organisation details added to the structured data; the sitemap now covers six URLs with bilingual alternates.
Chinese and English now live at separate URLs (/ and /en/) with reciprocal hreflang. Previously both languages shared one URL, so search engines could only index one of them.
The 17 formula labels in the methodology section had never been translated since v3.0 — that entire section still showed Chinese labels in the English view. All are now bilingual.
Entering a symbol now fills in that contract's maximum leverage and maintenance margin rate from Hyperliquid, and caps the leverage slider at the real limit.
The maintenance margin rate previously defaulted to a fixed 0.5%, whereas the actual range is 1.25%–16.67%. That error placed the liquidation price further away than it really is — under-reporting liquidation risk, which is the worst possible direction for a tool built around liquidation warnings.
Position size is rounded to the contract's size precision, and notional value, margin, fees and net result are all derived from the rounded figure, so the numbers correspond to a position you can actually open.
The whole page could be dragged sideways on mobile. The cause was form fields below 16px, which makes iOS Safari zoom the page on focus without zooming back out. Touch devices now use 16px fields — rather than disabling zoom, which would take away the ability to magnify the page.
Several mobile layout faults: hints sharing a line with labels pushed two-column fields out of alignment, the headline figure wrapped when the symbol was long, price-structure labels overlapped at high leverage, and the journal date field was clipped.
Hero text ran to the edge of the screen, and centring left both margins ragged. Long body text is now justified.
Methodology section: all 17 formulas published, covering position sizing, liquidation price in four cases, per-leg fee calculation and the definition of R-multiples, together with the sources of divergence from any given exchange.
Visual language rebuilt towards an institutional terminal: hue-tinted neutrals, deeper semantic colours, a single hairline weight, restrained motion. The brand mark became a single-colour geometric form with no gradient.
Copy formalised across both languages in over a hundred places; the disclaimer rewritten as a proper risk disclosure.
The liquidation price used a linear approximation whose short-side result was optimistic — placing liquidation further away than it truly is. Replaced with the exact solution.
Fees previously charged both legs at the entry price. The exit leg is now charged at the actual exit price, so the fee figure reconciles exactly with the net result.
Negative values and a zero risk rate previously produced meaningless output in silence, including a double-negative display such as "−-525.00". These inputs are now rejected with an explanation.
Accessibility completed: labels associated with fields, button states exposed, and risk warnings announced by screen readers.
Sitemap, custom robots file, security headers, a complete icon set, structured data and a branded 404 page.
The privacy note claimed the site carried "anonymous visit analytics" when in fact it loaded no analytics at all. The wording now matches reality.
Take-profit direction validation, risk-rate shortcut buttons, one-click copy of results, and the price-structure visualisation.
Liquidation price displayed as 0.0000 for low-priced instruments.
Visual direction moved towards a trading terminal: near-black surfaces, tabular figures, line icons.
Trade journal: record closed trades and obtain your realised win rate, per-trade expectancy, profit factor and equity curve, with export and import. All records stay in your own browser.
Position calculator launched: derive position size, required margin, estimated liquidation price and R:R from the loss you can accept.
Bilingual interface, liquidation warnings, and an alert for an excessive risk rate.
An inverted stop (above entry for a long, below entry for a short) previously produced meaningless output; it is now caught and explained.