
The Monster Model
The laboratory-grade corporate treasury and Bitcoin simulator.
A fully parameterized model of Strategy, Bitcoin, and the reflexive loop between them. Change any assumption and watch the whole system respond in a fraction of a second.
The model
Explore how the system evolves under various scenarios by simulating the dynamics within Strategy's business, and between the company and Bitcoin itself. The Monster Model was engineered for this purpose down to its foundation.
245 input parameters
The Monster Model is heavily parameterized with 245 input parameters. Everything from assumed weekly STRC net proceeds to target amplification, mNAV variant, and Bitcoin hodler flows is included. Parameters that depend on a checkbox or radio switch automatically disappear or disable when they are unused.
Weekly cadence
Tracking data by week rather than by month (or quarter) more naturally aligns with the cadence with which Strategy announces (via 8-K filings) new Bitcoin purchases, ATM share issuances, changes in USD reserve, and related updates. This finer granularity also allows the user to see underlying rhythms in certain business expenses, such as convertible bond interest payments and preferred stock dividend payouts (quarterly vs monthly), relative to the interim periods where capital may (or may not) be raised.
Historical data (2024+)
The model contains static (or quasi-static) data for common share issuance, basic shares outstanding (BSO), assumed diluted shares outstanding (ADSO), and BTC holdings going back to January 2024. For the weeks after Strategy began disclosing regular ATM updates (starting mid-November 2024), the Monster Model uses the data from the 8-K filings exactly; for weeks prior to that date, the data history is occasionally estimated or interpolated using the less frequent 8-K filings and information from strategy.com.
Convertible bond accounting
The model tracks all of Strategy's convertible bonds, including bonds that have since been retired, along with those bonds' converted share equivalents. This allows for an optional fourth type of accounting alongside BSO, ADSO, and FDSO — effective shares outstanding (ESO) — based on the option delta computed via the Black-Scholes formula. Parameters control how eager bondholders are to exercise put rights or conversion rights, as conditions allow, as well as whether Strategy prefers to call the bonds as soon as possible (subject to certain conditions, such as the share price trading for a period of time at a 30% premium to the bonds' conversion price).
Automatic amplification, mNAV, and USD management
The underlying framework uses intelligent logic to throttle preferred stock issuance when the amplification ratio (or multiple) is high. It also adjusts common stock issuance depending on the AR/AM and mNAV relative to its buyback and issuance thresholds, and other adjustable parameters. And it allocates and manages USD assets based on minimum months of dividend and interest coverage.
Multiple Bitcoin price paths
Bitcoin's future price trajectory serves as a basic input. One way to specify that input is to choose from among a pre-defined set of power law (or power law-like) price paths. Currently supported trajectories are: (1) a classic power law, whose parameters were published in a Decrypt.co article citing Giovanni Santostasi; (2) a power law variant constructed from parameters published at Bitcoin.com; (3) a power law variant constructed from parameters published at BitcoinFairPrice.com; (4) Michael Saylor, Shirish Jajodia, and Chaitanya Jain's Bitcoin24 model; (5) TheRealPlanC's Q1 (first quantile) power law floor; (6) Stephen Perrenod's 8-parameter log-periodic curve (combining the power law, fundamental mode, and synthetic first+second harmonic); and (7) a custom path that may be specified as a composite of a power law, an S or Gompertz adoption curve, a linear incline, a periodic wave, a decreasing exponential, or Perrenod's 8-parameter log-periodic curve. Each of these curves may be scaled with a single input parameter. Additional Bitcoin growth trajectories may be added in the future.
Embedded reflexive supply-and-demand Bitcoin model
The model supports two Bitcoin modeling modes: simple and reflexive. Simple mode uses one of the aforementioned price paths for Bitcoin as a predetermined input that is unaffected by intermediate model outputs. Reflexive mode uses a highly parameterized supply-and-demand price clearing model with multiple composable influence dynamics to simulate supply (based on projected mining emissions, Strategy purchases, other hodler withdrawals to illiquid storage, hodler releases from illiquid storage, and current liquid float) and demand (based on an overall demand trajectory and current market conditions), which in turn affects other components of the model framework that use Bitcoin price as input (e.g., Strategy BTC Reserve and BTC acquisition rate, as well as downstream consumers such as mNAV). As such, this supply-and-demand sub-model is reflexive both internally (as a standalone Bitcoin price model) and externally (relative to Strategy-specific BTC purchase dynamics).
Credit collateral model
An experimental subsystem attempts to model adoption of Bitcoin as credit collateral, where some of that new credit may be recycled back into Bitcoin over time in the form of additional demand. The framework models this as a series of adoption curves that take into account potential carry spreads, as well as several other parameters such as the fraction of non-Strategy Bitcoin eligible for credit, the fraction of those Bitcoin that are pledged as credit, and a base LTV ratio required by lenders.
Five different mNAV variants
The model framework supports five different definitions of mNAV. The first is mEV, exactly as Strategy reports on their strategy.com dashboard. The second, third, and fourth use basic, effective, or assumed diluted shares in the numerator and subtract out both debt and preferreds (less cash) from the BTC reserve value in the denominator. The fifth is the fully diluted multiple of Net Reserve (FDSO mNR), which uses fully diluted shares in the numerator and subtracts only out-of-the-money debt, along with the preferreds (less in-the-money convertible preferreds and cash), from the BTC reserve value — a variant of the diluted treatment in which out-of-the-money convertible bonds count as debt rather than as future shares. The choice of which mNAV variant to use automatically affects the method of accounting chosen for shares outstanding as well as for liabilities — that is, whether and to what degree convertible bonds are treated as debt (basic), future shares (assumed diluted), an effective combination (effective), or as debt according to whether they are in- or out-of-the-money (fully diluted).
mNAV expansion simulation
The framework currently supports four ways to manage the selected mNAV as the model unfolds forward in time: (1) a constant mNAV expansion scalar that causes the mNAV to gap up or down and stay there; (2) a static oscillating sinusoid with parameterized period, phase offset, amplitude, vertical displacement, and cutoff minimum; (3) a multiple of the break-even mNAV; and (4) a parameterized BTC sentiment algorithm that uses a fast and slow SMA in addition to the week-over-week price movement of Bitcoin to incrementally increase or decrease (or leave unchanged) the expansion factor.
STRC volume cycle modeling
STRC's observed volume history reveals a regular pattern whereby the stock trades at or above par in the days leading up to the record dates, with the latter portion of that period exhibiting generally rising volume. ATM capture rates also appear to increase as the record date approaches. The model is capable of taking this into account, producing a rhythmic pattern to the projected STRC capital raises.
One-off equity events
The framework can simulate a hypothetical one-off equity event for STRC and MSTR — an issuance or a buyback, at any share count and transaction price, scheduled for any future week. The proceeds flow through the same allocation rules as any other raise, so an issuance funds Bitcoin purchases and reserves while a buyback creates a weekly deficit that must be funded by cash reserves, BTC sales, or other equity sale proceeds. Try pinning a chart readout to the Monday after the chosen event date and then adjusting the number of shares transacted from zero to see the relative impact. The same mechanism models the hypothetical exercise of traditional warrants, though Strategy does not currently have any outstanding.
The interface
The model is only half of it. The other half is a dashboard built to be lived in — every parameter reachable, every chart arrangeable, and very nearly the whole thing operable without a mouse.
Every parameter, exposed
All 245 inputs are editable, thoughtfully organized into tabs and collapsible sections. Choose Auto mode to recompute on every parameter change, or Manual to batch your edits and apply them all at once to see the combined impact of multiple changes. In Manual mode the Update button glows while the model is stale, so you can see at a glance that the screen is behind what you typed, and it disables itself when a run would change nothing. A runtime readout tells you what each recomputation cost.
Everything explains itself
Hover any parameter's info icon and you get a description of what it does — a paragraph or more, and its valid range and default value if you want those shown. Or click an info icon and the description stays open until you dismiss it. Hover a series in a chart legend and you get the same for that series: what it measures, how it is derived, what it means when it moves. Every chart carries a description too, in the picker where you choose it.
That is all 245 parameters, all 92 series you can plot directly, and all 21 supported charts — around 28,000 words, written to be read at the moment you need them rather than parked on a documentation page you have to go and find.
The intent is a model you can explore rather than only watch. Change something you do not recognize, find out what it is, and watch how it affects the projection. And once you know your way around, chart tooltips and series descriptions can be switched off.
Watching the lines move is genuinely fun. Understanding why they moved is the point.
Six workspaces
Keep several parameter sets side by side and switch between them — name one "bear case" rather than "3". Five are yours to use however you like; the sixth is reserved for shared links, so opening someone else's scenario never disturbs your own work. Copy parameter sets between workspaces, reset individual tabs, or clear them when you want to start over. Import and export one or more workspaces when moving between browsers or computers, or as a just-in-case backup. Enable syncing with new defaults if you want your untouched parameters to be updated whenever the model adjusts one of its default values, or leave syncing disabled to lock the original default values in place.
A grid of charts you arrange yourself
Charts covering price, market capitalization, treasury holdings, capital flows, share counts, convertible debt, amplification, and per-share metrics — plus Bitcoin itself.
Drag to reorder, insert a slot anywhere, select several and delete them together with undo. Star the ones you use into a Favorites list. Fluid sizing stretches charts to the width you have; rigid sizing takes exact dimensions from a drag, an arrow key, or a typed number. Embiggen one chart to full pane and the rest stop recomputing behind it, so a parameter change costs one chart's work rather than the whole grid's.
Charts that follow your parameters
A chart plots only the series its current parameters call for. Set Bitcoin to a simple static curve and the supply series leave the reserve charts, because supply plays no part in that model. Set the treasury to constant growth and amplification's target bands leave, because nothing is being steered toward them.
Switch amplification between a ratio and a multiple and the chart relabels its axis, reformats its ticks from percentages to multiples, swaps in the other measure, and brings its matching target band with it — in one step, with no state where the label and the numbers disagree.
Pin a reading and watch it move
Hover any chart to read every visible series at that date. Press to pin the readout in place: it holds while you change parameters, so you watch a number move rather than remembering it and comparing by eye. The readout carries a change column that reports how far each series moved since the last model run.
Synchronize the charts and one press freezes the whole grid at a single date, each chart reading its own series there. Pin a date from before the modeling window and every changed value is marked with a dagger — those rows are recorded history, and no parameter you can reach will move them.
If the readout overlaps a series, no problem — drag it elsewhere; the app will remember where you last placed it.
Switch to "Click drops box only" mode to allow the marker to float freely, and watch the numbers update with your cursor's movement.
Shareable links
A shareable link encodes your entire parameter set into the URL. Generate one for the current workspace by clicking the link icon, or generate one for a specific workspace from its menu. Send it and the other person can see exactly the output that you see — no screenshots, no lists of settings to retype.
It arrives in that reserved workspace rather than overwriting anything, so you can open a link, look around, and go back to what you were doing.
Keeping those links short enough to actually post required a bespoke encoding. A link does not spell out all 245 parameters: it records only the ones you changed, and packs each into the smallest number of bits its own range and step size allow — a quantized binary representation rather than text. Several encodings are considered for every link, and the shortest one wins. A scenario that differs from the defaults in a dozen places travels in around 50 characters (excluding the domain name).
Copy a chart as an image
Every chart has a copy button. One click puts the chart on your clipboard as an image, ready to paste straight into a post, DM, or anywhere else. On a smartphone the same button opens the share sheet, with a link to the chart alongside the image.
What you get is not a screenshot. It is composed for the purpose: its own title, its own legend, its own margins, and none of the surrounding interface — no buttons, no cursor, no half-visible neighboring chart. The frame closes on the chart itself rather than padding it out to a standard size, so there is no dead space down the sides.
It shows exactly what you were looking at. Series you hid stay hidden. Logarithmic axes stay logarithmic. If you have a readout pinned, it is included with the image — the marker line and the numbers beside it. And a chart copied from a small grid slot comes out as sharp as one copied full-size.
Each copied image carries the date the model was last updated, and the wordmark takes whichever corner is least obtrusive. Faint gridlines make it easier to estimate levels off the chart.
One thing worth knowing if you are posting for people on phones. The axis labels, legend, and title come out larger when you copy from a small chart than from a large one, because the image is drawn at a fixed width either way. If you want text that reads without zooming, copy from a narrow slot rather than from a chart filling the pane. Or, if you would prefer every copy was a standard size, the gear icon has a setting for it.
Send someone a chart (with your parameters)
Every chart's menu has "Copy link to this chart". What you paste opens the site on that chart, full-size, with your parameters already loaded — so whoever you send it to sees what you were looking at rather than a description of it.
If the chart is not on their grid when they view the link, it is appended to their grid.
Operable from the keyboard
Not "most of it, if you try" — every control, every menu, every modal. Walk the parameter pane with the Tab key. Trigger model updates in Manual mode with Ctrl+Enter (Cmd+Enter on Mac), or let the model rerun automatically when you adjust each parameter. Walk a chart's readout with the arrow keys, pin it with Enter, let go with Escape. Drive every synchronized chart from any one of them. Browse the chart picker, star and unstar charts, resize, embiggen, manage workspaces, generate a share link. Focus goes somewhere sensible when a modal opens and returns where you left it; Escape unwinds one thing at a time. Select all charts with Ctrl+A (Cmd+A on Mac), or just a single chart with Space; hold Shift and use the Up/Down arrow keys to highlight a range. Remove charts with the Delete key.
Even repositioning a chart on the grid works without a pointer: focus its drag handle, press Enter to lift it, move it with the arrow keys, and press Enter again to drop it — or Escape to put it back where it was.
Control the Monster from your phone
All of the Monster Model's core features are preserved in the mobile experience.
Slide the parameter pane out to half- or full-screen. Switch and manage workspaces, switch tabs, edit parameters, and generate shareable links by tapping.
Tap anywhere on a chart's plot and the marker lands on that date with the readout beside it — the equivalent of arriving with a cursor. Drag your finger left and right and the marker sweeps with it, every value updating as it goes. Tap again — anywhere on the plot — to pin the marker. Drag the readout around; tap its "×" to let it follow the marker again; tap outside the chart to dismiss it.
"Click drops box only" reads the same way under a thumb — the box stays where you left it while the sweep keeps its numbers current.
Model against live prices
The model's history ends on the last completed week, so between that week and the first projected one there is a gap: the week you are actually in. A special row occupies this period, during which balances are carried forward, activity that has not happened yet is held at zero, and prices are taken from the market.
By default, live prices flow into the model as they move, so metrics such as mNAV, amplification and reserve value reflect where things stand now rather than last Monday's close. Switch it off and the row holds the last settled prices instead, which gives you the neutral "what if nothing else happens" baseline.
Because it causes the model to move, live pricing is limited to Auto mode. In Manual mode the model always holds the neutral row, so a controlled comparison is never disturbed by the market moving underneath it.
Personalize how the live prices are marked on charts; choose from multiple price dot animation styles, together with a pulse that fires when new prices enter the model. Even with the price dot animation set to "None", the affected charts will update and rescale automatically to account for the model's response to the new price inputs.
The systems map
Hover or focus a system to read it
Eight systems
The framework attempts to model eight fundamental systems that are core to Strategy's business as well as the reflexivities between those systems (to the extent practical with weekly time steps). This section provides a high-level overview of how the systems are interconnected. Note that some of the systems' dependencies change based on system-level input parameters.
Acknowledgements
While developing the Monster Model, I drew on the knowledge, inspiration, and support of multiple individuals and sources. Some are named here because their work is built into the model; others because they gave time, attention, or encouragement when none was owed.
Origins
The weekly model framework behind the Monster Model began as an unpublished monthly model during the summer of 2025. I decided to create that original version after seeing Dan Hillery's MSTR price model spreadsheet, which he has shared with his audience via video several times. Thank you for the inspiration, Dan!
Early supporters
I'm sincerely grateful to the people who graciously and cheerfully offered their time, attention, and support prior to release so that I could collect feedback: AngryBuhda, Zaid, Bobby Tierney, BitStrategy, and MartianLawyerB.
And BTCStrategist, GregBoomer, ₿itcoin₿ulldog, Alec, MonSTeR, Skipper, TerriTortuguero, Emperor Lightyear, ₿itcoin ₿eliever, ChadBTC, AA, Eric, Saad Ghazi, ElGuapo, Colleen, George Kao, Satoshi Guapamoto, MarylandHODL, ASST Voyager, diglloyd, Zynx, and Alex were all reliable supporters during those long days and weeks when my progress was invisible. Thank you for placing your faith in me.
And at least twice, LaDoger served as a point of contact to report technical issues with Strategy's website, which provides critical inputs to the Monster Model every week. I appreciate you so much, Doger!
I also want to thank Cris Reed and Grain of Salt for welcoming me and my comments on their Spaces.
And there were many others beyond those mentioned here; this list is by no means exhaustive!
Authorship and tools
The model
The algorithmic framework that powers the Monster Model was created entirely by hand in Google Sheets, beginning in late summer 2025. As a general rule, no formulas were added unless I understood how they worked and believed that they served a useful purpose in the framework. This was a standard I was not willing to compromise on.
That said, I found ChatGPT's guidance particularly helpful for certain aspects of the math, including:
- reasoning through how to best implement S and Gompertz curves in Google Sheets;
- considering when and where I should use numerical dampeners to prevent certain extreme conditions from developing in the Bitcoin supply & demand model;
- developing a realistic credit collateral subsystem within the Bitcoin supply & demand model;
- developing a parameterizable equation for the STRC volume and ATM capture model.
ChatGPT was also very helpful when:
- researching the scenarios under which bondholders can exercise their put rights, when they can convert to shares, and, similarly, when Strategy can force conversion via early redemption;
- understanding nuances behind Google Sheet syntax;
- learning how to use certain functions like
index(),match(), andfilter()to write certain complex functions; - investigating and optimizing performance bottlenecks.
The UI
After the workbook was largely finalized, Claude.ai was used extensively to plan the development of the website implementation.
Claude Code was used for the following tasks:
- writing and maintaining various data pipeline scripts;
- performing dependency analysis between Excel-exported workbook formulas;
- translating the workbook formula logic into TypeScript;
- writing the website front-end UI code (Next.js, Tailwind CSS).
I designed the nav bar, parameter pane, tab layouts, charts, and chart UI options, with technical guidance from Claude.ai and Claude Code. I also designed the mobile version of the site.
The auto/manual update options and auto-saving workspace paradigm were my ideas, with edge cases fleshed out by Claude.ai. The URL sharing feature was co-designed, with me proposing the ideas and Claude suggesting certain implementation details. The "Synchronize all charts" feature was Claude's suggestion, with the chart hover modes and chart hover box + pin drop modes being co-designed.
The documentation
The hover-over, tooltip-style documentation for each input parameter was also written and revised by hand, with ChatGPT proposing draft descriptions for a few of the more sophisticated parameters in the Advanced Modifiers and Credit Collateral sections of the Bitcoin tab.
The tooltip documentation for each series (shown when hovering over chart legend entries) was written largely by ChatGPT using a combination of my manually written briefs and descriptions along with context from the workbook and the aforementioned parameter descriptions.
The content on this page was written mostly by hand.
Other
The monster_models profile picture, the website welcome banner, and the artwork at the top of this page were created using ChatGPT, with some manual fine-tuning within GIMP.
Claude suggested Bebas Neue for the MonsterModels.live wordmark after I described the overall feeling I wanted to evoke.
FAQ
Who is the Monster Model meant for?
Anyone who wants to explore scenarios for how Strategy's business operations, most notably their Bitcoin treasury operations, might unfold under a range of hypothetical assumptions and dynamics will likely find the Monster Model an invaluable tool in their research. This will naturally include current and prospective investors, analysts, spreadsheet enthusiasts, and anyone with more than a passing interest in Strategy, Bitcoin, or financial models.
Is the Monster Model a forecasting tool?
Not quite. The Monster Model is not making any specific prediction. It tells you how the future could unfold under a simplified set of dynamics and rules about how treasury companies like Strategy operate, and how those operations interconnect and form dynamic, non-linear relationships with the Bitcoin market as a whole (which is modeled under a different simplified set of dynamics and rules).
Also, note that the framework is not a probabilistic model. It neither asserts nor reveals anything about which outcomes, or ranges of outcomes, are more likely to occur than others.
Instead, it is analogous to a physics simulator for Bitcoin and corporate finance. It starts with a set of initial conditions and runs a forward simulation of the environment according to a set of rules that govern how elements of the system behave and interact with one another.
What do you mean when you call the model "reflexive"?
Suppose Strategy sells a large amount of STRC. They turn around and use the proceeds to buy Bitcoin. Those Bitcoin purchases reduce the liquid float, which increases the price of Bitcoin, which increases the value of the BTC reserve and decreases amplification, which makes more space on the balance sheet for more Bitcoin, which allows more purchases, which unlocks new pockets of variable releases from illiquid supply, which pushes back down on price, which increases amplification but allows Strategy to buy more Bitcoin at lower prices...
Simply put, "reflexive" in this context means everything (potentially) affects everything, all the time. This is why I sometimes refer to the Monster Model as a corporate finance physics simulator.
What kind of math is employed by the Monster Model?
To put it in lay terms, it's a bunch of interacting feedback systems that evolve week by week. Some of the relationships follow basic accounting rules; others are mathematical approximations of how we think markets behave, such as supply-and-demand responses.
To use more technical terms, the model is a nonlinear, discrete-time dynamical system, implemented through recursive difference equations, accounting identities, and nonlinear response functions.
The key feature is that the Monster Model has a state that evolves through time. Each weekly model step takes quantities inherited from the preceding week — Bitcoin supply, lost coins, hodled coins, liquid float, prices, corporate balance sheet holdings, credit conditions, and so forth — and computes the next state according to the model's parameters and defined relationships among its series. Because many of those relationships feed the output of one part of the system back into another, complex behavior can emerge from relatively simple equations.
Can I use the site on mobile devices?
Yes, the Monster Model does support mobile web browsers!
That said, for the best experience I recommend accessing the site on a laptop or desktop computer, where larger screens, wider aspect ratios, and a keyboard provide a more expansive environment in which to explore.
Did you use AI to create the model?
The shortest, one-word answer in two parts:
- Did I use AI to create the original spreadsheet implementation? No.
- Did I use AI to create the website implementation of the spreadsheet? Yes.
But the question deserves a longer, more nuanced answer.
I'm a curious person by nature, and over the course of my career I've found that the best way for me to understand something is to build it myself. Developing the math behind the model by hand, incrementally, allowed me to not only expand and sharpen my own knowledge of the subject matter but also end up with a final product whose deterministic logic and calculations I fully understood and, therefore, could trust and explain to others.
So the computational logic behind the model framework was created manually within a 440-column, 380-row Google Sheet workbook, referencing AI occasionally to brainstorm around certain corners of the model that were particularly complex.
The Google Sheet workbook then served as the single source of truth for the website model during most of its development. But as someone with a background in numerical computing, building the website felt much more ambitious to me, specifically because it did not directly lean on any of my career experience. For that reason, I leveraged AI extensively when building the website code: Claude.ai was used extensively for feasibility/exploration/planning, and Claude Code scaffolded the website, developed most of the Next.js/Tailwind code behind the front-end UI (which was almost entirely designed by me), and translated the Google Sheets computational logic into high-performance TypeScript.
For more details on how I used AI, see the Authorship and tools section.
Legal
© 2025–2026 MonsterModels.live.
The content on this site is for informational and educational purposes only and does not constitute financial advice, investment advice, tax advice, or any other kind of advice.
This site is provided as-is and without warranty.