Standard MAISNER branding. No customisation.
Settings are saved in your browser for future exports.
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading news...
Select a portfolio to load news for its tickers.
Add tickers to your watchlist to see their news.
Enter ticker symbols and share quantities. The system fetches prices, builds an RMT-cleaned covariance matrix, runs optimisation, and produces a full rebalancing plan.
Add mixed assets with their current dollar allocation. The optimizer finds the best target weights, and shows a rebalancing plan to move from current to optimal.
Enter current holdings (ticker + shares) + constraint rules. Prices are fetched automatically. Produces a constrained-optimal rebalancing plan.
Overrides the default 40% sector cap. Leave empty to use defaults.
Enter L/S positions — ticker, quantity, direction, and purchase price. Live prices are fetched automatically. Choose a mode to adjust how action signals are generated.
Marginal Sharpe — signals based on each position's contribution to portfolio risk-adjusted return.
| T | DIR | QTY | ENTRY | LIVE | P&L $ | P&L % | W | RC% | mSR | μ | σ | YLD | ACT |
|---|
Enter tickers to optimise. Applies Marchenko-Pastur covariance cleaning, quality scoring, and sector caps.
Add any asset — stocks, options (call/put, American/European), bonds, futures, commodities, crypto. Type is auto-detected, extra fields appear per type.
Enter tickers + constraint rules. No shares required — the optimizer finds the best weights within your rules. Load a saved portfolio to prefill tickers.
Overrides the default 40% sector cap. Leave empty to use defaults.
Long/Short optimizer — allows negative weights (short positions). Uses separate engine, does not modify long-only results. Borrow cost is subtracted from expected return of short positions.
| Ticker | Weight | Return | Vol |
|---|
| Ticker | Weight | Return | Vol |
|---|
| SECTOR | ETF | W.P | W.B | R.P | R.B | ALLOC | SELECT | INTER | ACT |
|---|
| T | SECTOR | W | R | R.B | XS | CONTRIB |
|---|
| L | μ_L | σ_L | SR | DECAY | NET |
|---|
| EVENT | MKT | LEV LOSS | LOSS $ | MC |
|---|
| T | DIR | W | σ 1D | STOP% | ENTRY | STOP PX | RISK $ | KELLY $ | P(HIT) | REENTRY |
|---|
| STRATEGY | ES_α | VaR_α | μ.LOSS | σ.LOSS | K.PUT | K.CALL | H* | QTY | COST | ΔES |
|---|
| Ref. | Mode | Note | Timestamp | Assets | Value | Status |
|---|---|---|---|---|---|---|
| Loading... | ||||||
| Factor | Category | Mean IC | ICIR | Hit Rate | IC Trend | L/S Spread | Periods |
|---|
| Period | Ann. Return | Volatility | Sharpe | Sortino | Max DD | Calmar |
|---|
| Signal | Category | IC (1M) | IC (3M) | Hit Rate | L/S Spread | T-Stat | p-value | Ann. Spread |
|---|
Loading…
Loading…
| Member | Role | Today | This Week | Total | Top Feature | Last Active |
|---|---|---|---|---|---|---|
| Loading… | ||||||
Loading…
Loading...
No alert rules yet. Click "+ New Rule" to create one.
Loading...
Loading...
Loading...
Loading…
Loading…
Loading...
Loading...
Enter purchase price (cost basis) per share. Purchase date enables long/short-term classification.
| TICKER | TYPE | DIRECTION | SHARES / UNITS | PURCHASE PRICE ($) | PURCHASE DATE |
|---|
Our quantitative engines are independently validated across 786 tests covering 37 analytical modules — Markowitz+RMT optimisation, PRIIPs block bootstrap, GBM barrier probabilities, Paleologo stop-loss construction, Yu & Sun hedging simulation, and more. Every formula is verified against independent Python reference implementations with no shared code paths. The complete validation report is published at /validation.
We stand behind the mathematical correctness of every computation this platform produces. What no analytical software can control is the behaviour of markets, the accuracy of third-party data providers, or the investment outcomes of decisions made using our outputs. The sections below define that boundary precisely.
MAISNER is developed and maintained to professional software standards, with documented uptime monitoring, security audits, and ongoing analytical validation. As with all software-as-a-service platforms, access is provided "as available" — we cannot guarantee uninterrupted service or that every feature will suit every specific use case.
Nothing MAISNER produces constitutes investment advice, portfolio management, or any regulated financial service — regardless of who is using it or how outputs are applied. In keeping with MiFID II (Directive 2014/65/EU) and applicable regulation, the analytical work is ours; the investment decision, suitability assessment, and any fiduciary duty remain entirely yours.
If you manage assets on behalf of others, you are solely responsible for compliance with all regulations governing your advisory, management, or trading activities.
The operator is not authorised, licensed, or supervised by any financial supervisory authority (including, without limitation, the AFM in the Netherlands, BaFin in Germany, FINMA in Switzerland, or the Estonian Financial Supervision Authority). MAISNER is a software analytics product, not a regulated financial service.
MAISNER is designed for two groups of users:
By accessing the platform you represent and warrant that:
MAISNER is not appropriate for persons with no financial market experience who are seeking investment recommendations rather than quantitative tools.
To the maximum extent permitted by applicable law:
You agree to indemnify, defend, and hold harmless the operator and its affiliates, officers, and agents from and against any claims, liabilities, losses, damages, costs, and expenses (including reasonable legal fees) arising out of or related to: (i) your use of the platform; (ii) your violation of these Terms; (iii) any investment decision you make based on platform outputs; (iv) your violation of any applicable law or regulation.
Market data is sourced from third-party providers (Financial Modeling Prep, Polygon.io, Yahoo Finance). The operator does not control, verify, or guarantee the accuracy, completeness, timeliness, or fitness for purpose of any third-party data.
You agree not to: (i) use the platform for any unlawful purpose; (ii) share, sublicense, or resell access to any third party; (iii) reverse-engineer, decompile, or extract the platform's source code or algorithms; (iv) use automated means to scrape or harvest data from the platform; (v) attempt to circumvent security controls or access other accounts.
Subscriptions are billed monthly or annually in advance. You may cancel at any time; cancellation takes effect at the end of the current billing period. Pricing may be modified with thirty (30) days' notice. Except as set out below for consumers, fees are non-refundable except where required by mandatory applicable law.
Pricing & VAT. Prices quoted to business customers are exclusive of VAT; VAT or the reverse-charge mechanism is applied as legally required. Prices charged to consumers (natural persons acting outside any trade, business, or profession) are inclusive of applicable VAT.
Consumer right of withdrawal (distance contracts). If you are a consumer, you have the right to withdraw from this contract within fourteen (14) days without giving any reason, in accordance with Directive 2011/83/EU on consumer rights. The withdrawal period expires 14 days after the day the contract is concluded. To exercise the right, you must inform the operator of your decision by a clear statement (e.g. an email to the contact address in the Legal Notice). You may use the model withdrawal form, but it is not obligatory. To meet the deadline, it is sufficient to send your communication before the withdrawal period has expired.
Effect on digital services & loss of the right. Because the platform is supplied as a digital service that begins immediately, by subscribing and requesting immediate access you expressly consent to the operator beginning performance during the withdrawal period and you acknowledge that you lose your right of withdrawal once the service has been fully performed (Art. 16(m) Directive 2011/83/EU). If you withdraw after performance has begun with your consent but before it is complete, you must pay an amount proportionate to the service provided up to the moment of withdrawal (Art. 14(3)). Where you validly withdraw, the operator will reimburse all payments received without undue delay and no later than 14 days from being informed of the withdrawal.
The operator processes personal data as data controller in accordance with Regulation (EU) 2016/679 (GDPR). The legal basis for processing is performance of contract (Art. 6(1)(b) GDPR) — processing is necessary to provide the platform services you have subscribed to. Where processing goes beyond contract performance (e.g. security logging, fraud prevention), the legal basis is the operator's legitimate interests (Art. 6(1)(f) GDPR).
Data collected: account credentials (name, email address, bcrypt-hashed password), session tokens, usage logs (actions, timestamps, IP addresses), and portfolio data you voluntarily upload. No special-category data (Art. 9 GDPR) is collected or required.
Your rights under GDPR (Arts. 15–21): You have the right to access, rectification, erasure, restriction of processing, data portability (Art. 20 — receive your data in a structured, machine-readable format), and to object to processing based on legitimate interests. To exercise any right, contact maisnerplatform@gmail.com. Requests will be handled within 30 days.
Supervisory authority: You have the right to lodge a complaint with the Estonian Data Protection Inspectorate (Andmekaitse Inspektsioon) at aki.ee or any competent supervisory authority in your EU member state of habitual residence.
Personal data is not sold, rented, or disclosed to third parties except where required by law or strictly necessary for service delivery (e.g. hosting infrastructure). Data is retained for the duration of the subscription plus a maximum of 24 months thereafter, unless earlier deletion is requested.
The platform does not use advertising, profiling, or cross-site tracking cookies, and therefore does not display a cookie-consent banner. No personal data is stored in cookies.
Essential browser storage: The platform stores a small amount of data in your browser's local storage strictly to operate the service you have requested — namely your session authentication token and role, an onboarding-completion flag, your watchlist, and interface preferences. This storage is technically necessary for the platform to function and is exempt from prior-consent requirements under Art. 5(3) of the ePrivacy Directive 2002/58/EC (as transposed into national law).
Analytics: The operator uses a self-hosted, privacy-preserving analytics tool (Umami) that does not set cookies, does not use cross-site identifiers, and does not collect personal data. Only aggregate, anonymous usage statistics (e.g. page views and referrers) are recorded to improve the platform.
Third-party resources: Certain interface assets (web fonts and charting libraries) may be loaded from third-party content-delivery networks, which necessarily receive your IP address as a technical requirement of delivering the requested content. These requests set no cookies.
You can clear browser storage at any time through your browser settings; doing so will sign you out and reset your local preferences.
The platform's underlying software, algorithms, quantitative models, source code, and trademarks are the exclusive intellectual property of the operator and are protected by applicable IP law. No licence to copy, adapt, or redistribute any part of the platform is granted except as expressly stated in these Terms.
Outputs generated by the platform (optimized portfolio weights, risk metrics, scenario results, factor scores, PDF reports, PRIIPs KID drafts, and any other analytical outputs) belong to the user who generated them. The operator asserts no ownership over user-generated outputs.
User data (portfolios, ticker lists, constraint settings) remains the property of the user at all times. The operator processes this data solely to deliver the contracted service and does not use it for any other purpose, including model training or benchmarking, without explicit written consent.
Where a user (e.g. a wealth manager, RIA, or family office) inputs personal data relating to their own clients or third parties into the platform, the user acts as data controller and the operator acts as data processor within the meaning of Art. 4(8) and Art. 28 GDPR.
In this capacity, the operator: (i) processes such data only on documented instructions from the controller; (ii) ensures persons authorised to process the data are bound by confidentiality; (iii) implements appropriate technical and organisational security measures (Art. 32 GDPR); (iv) assists the controller in fulfilling data subject rights requests; (v) does not engage sub-processors without prior written authorisation; (vi) deletes or returns all personal data upon termination of services.
Enterprise and Professional subscribers who process client personal data must execute a formal DPA before doing so. A standard DPA is available upon request by emailing maisnerplatform@gmail.com. Failure to execute a DPA does not relieve the controller of its GDPR obligations; it is the user's responsibility to ensure a compliant processing relationship is in place before uploading any client personal data.
These Terms are governed by the laws of Estonia. Any dispute shall be submitted to the exclusive jurisdiction of the competent courts of Estonia (Harju County Court, Tallinn). Nothing in this clause deprives a consumer of the protection of mandatory provisions of the law of their country of habitual residence, nor of the right to bring proceedings in the courts of that country.
These Terms may be updated at any time. Material changes will be communicated via the platform or by email. Continued use after the effective date of any modification constitutes acceptance of the revised Terms.
If any provision of these Terms is found to be unenforceable, the remaining provisions shall continue in full force and effect. These Terms constitute the entire agreement between you and the operator regarding the subject matter hereof and supersede all prior agreements, representations, and understandings.
MAISNER pulls 10 years of monthly price history and fundamentals for every ticker in your database. When you run an analysis, it builds a covariance matrix cleaned with Random Matrix Theory (Marchenko-Pastur filter), then runs a Markowitz Mean-Variance optimisation tilted toward quality factors — ROE, margins, and debt coverage.
The result is not just optimal weights — it's a full rebalancing plan with exact share counts, Monte Carlo projections, sector exposure, and correlation maps.
MAISNER is in closed beta. All outputs are for informational purposes only and do not constitute investment advice. Always verify results independently before making any financial decision.
US tickers work out of the box (AAPL, MSFT, NVDA…). European tickers are auto-resolved: just type the base symbol (e.g. SAP, ASML, ENI) and the system will find the right exchange suffix (.DE, .MI, .L, .PA etc.).
ETFs are fully supported and get a combined 50% sector cap to prevent over-indexing.
When entering portfolio weights manually in Stress Test, Leverage Analyzer, Stop Loss Calculator, or Advanced Stress Test, always enter weights as percentages (0–100), not fractions.
When loading a saved portfolio into these tools, weights are converted automatically — no manual entry needed.
Analyzer uses shares (not percentages). Optimizer uses tickers only — the system finds the optimal weights.
The terminal lives in the right-hand dock and follows you across every module. Top to bottom: the session log (every command, launch and system message), LAST COMMANDS (the 10 most recent — click one to reuse it), and the C:\MAISNER> prompt.
Press F10 or / to focus the prompt, type a command, press Enter. Tab auto-completes, Arrow Up / Down walks history, Escape clears. The prompt path shows where you are (e.g. C:\MAISNER\OPT>); HOME returns to the standby screen, CLS clears the log.
Compute trace: whenever an engine runs (optimizer, analyzer, leverage, stop loss, hedging, …) the log streams its computation stages — data sync, covariance build, RMT cleaning, SLSQP optimization, Monte Carlo — and prints the headline numbers (Sharpe, μ, σ, top weights) when the run completes. [ OK ] marks success, [FAIL] an error.
Sub-modes as a second word: ANL MULTI (multi-asset), ANL CON (constrained), ANL CVAR, ANL LS (long/short) — same switches for OPT. LEV MULTI and SL MULTI open the multi-asset variants. PROFILE (also ME / ACCOUNT) opens your account.
Type SET to see your individual optimizer parameters, or set them directly — they apply to every calculation you run:
The TZ setting moves the top-bar clock and the TIME command to your timezone — accepts a UTC offset (2, -5.5) or an IANA zone name (Europe/Berlin, America/New_York). It is stored per account.
Variables — name the baskets you use every day and reuse them in any command. Stored per account in this browser:
Ticker arguments — modules load straight from the prompt; append RUN to launch immediately:
History — the last 100 commands persist per account. H lists them numbered, !! re-runs the last, !7 re-runs line 7, !OPT re-runs the most recent command starting with OPT. H CLEAR wipes.
Run registry — every completed engine run this session is kept in memory: RUNS lists them (newest first), DIFF compares the last two — Sharpe, μ, σ, max DD and per-ticker weight moves (DIFF 2 4 for any pair), and USE 3 retargets OUT / PDF / SAVE / TRACK / KELLY at run #3.
Tab now completes arguments too: OUT s⇥ → SEC / STOPS, SET m⇥ → MAXW, OPT m⇥ → MULTI, and $c⇥ → your variables.
After any optimizer / analyzer run, the result stays in memory and can be printed straight into the console:
Inline calculators — engine formulas, straight from the prompt:
The support desk is wired into the console. SUPPORT prints your message thread into the log; SUPPORT <text> transmits a message straight from the prompt (e.g. SUPPORT my optimizer run hangs on 12 tickers); SUPPORT OPEN opens the chat window; SUPPORT CLEAR wipes the thread from your view. Incoming replies are announced in the log as [MSG ] SUPPORT.LINK.
The home screen carries a second terminal on the left: MKT.SYS, a live market monitor. It keeps three feeds on screen — PULSE (major indices), your WATCHLIST (quotes with day change, stored on your account), and the latest ALERTS — refreshed every 60 seconds while the home screen is visible. It has its own MKT> prompt with a dedicated command set:
From the main prompt, MKT jumps home and focuses the monitor. The watchlist is shared with the News › Watchlist tab.
DIR — list all commands · HELP — this guide · CHART — portfolio chart · TERMS — terms & disclaimer · CLS — clear the log · VER · TIME · EXIT — log out.
F5 (refresh), F11 and F12 are left to the browser.
Curr % — your current allocation based on market value of shares held.
Opt % — the mathematically optimal allocation for your selected mode.
Δ Shares — exact number of shares to buy (+) or sell (−) to reach optimal weights.
10,000 simulated paths over 10 years based on the portfolio's expected return and volatility. Shows the 5th percentile (pessimistic), median, and 95th percentile (optimistic) outcomes.
Use the median as a rough planning number, not a guarantee.
Shows pairwise return correlations between positions. Low correlation means better diversification. High correlation (>0.8) means two positions move together and you're not getting real diversification benefit.
Standard covariance matrices contain noise — random correlations that look real but aren't. MAISNER applies Random Matrix Theory (Marchenko-Pastur filter) to separate signal from noise before optimization.
When there are too few observations, it blends RMT with Ledoit-Wolf shrinkage to ensure the matrix is stable and invertible.
The optimizer doesn't purely maximize Sharpe. It applies a quality tilt: tickers with higher ROE, stronger margins, and lower debt get a small expected return bonus. This biases the result toward fundamentally strong companies.
No single sector can exceed 40% of the portfolio. ETFs have a combined cap of 50%. This prevents the optimizer from concentrating everything in one hot sector.
For portfolios with fewer than 8 tickers, sector caps are disabled to avoid infeasibility.
Optimized portfolio drawdown significantly smaller than current portfolio. Recovery time shorter. Max loss within acceptable range for your risk tolerance.
Optimized portfolio performs similarly to current during a crisis — means concentration risk is still present. Consider adding uncorrelated assets (bonds, gold, low-vol stocks).
X-axis — Annualized Volatility (risk). Lower is safer.
Y-axis — Annualized Expected Return. Higher is better.
The curve is the efficient frontier — portfolios on it cannot be improved (you can't get more return for the same risk). Portfolios below the curve are suboptimal.
Your current portfolio dot shows where you sit relative to the frontier. The optimizer moves you onto it.
Each ticker has a slider that lets you manually override its weight. As you move sliders, your portfolio dot moves on the frontier in real time — you can see exactly what trade-off you're making.
Use this to understand how much return you sacrifice by constraining a position (e.g. "I want at most 10% in NVDA").
Computes 11 quantitative factors for every ticker and analyzes their predictive power. Shows which factors historically predicted returns best in your universe.
Write a simple strategy in plain text, then run a full walk-forward backtest against 10+ years of price history.
IS/OOS split: results are split into In-Sample (training) and Out-of-Sample (test). A strategy that only works IS is overfit. Good strategies maintain Sharpe OOS.
Tests each factor as a trading signal. Shows hit rate (% of times a top-ranked stock actually outperformed), long/short spread, statistical significance (T-stat), and turnover cost estimate.
The Ensemble section finds optimal weights to combine all signals using OLS regression — giving you a composite score that's better than any single factor alone.
MAISNER uses a beta-adjusted benchmark for fair comparison. If your portfolio has Beta 0.6, comparing against raw SPY is unfair — the benchmark becomes:
This means you're compared against a portfolio with the same market exposure as yours — not against a fully-invested equity benchmark.
MAISNER uses a strict IS/OOS (In-Sample / Out-of-Sample) split. The default is 60/40: 60% of history is used to calibrate the strategy, 40% is held out as a true test.
A strategy that looks great IS but collapses OOS is overfit to historical noise. Good strategies maintain meaningful Sharpe ratios on data they've never "seen".
Standard MVO optimizes all positions freely. The Constrained Optimizer lets you pin certain assets and only optimize what's left. This is how institutional managers handle client mandates, regulatory requirements, or high-conviction positions they don't want touched.
The engine uses the same RMT-cleaned MVO as the standard optimizer — locked positions are included in the full covariance structure, they just aren't moved.
All locked weights are summed first. The remainder — the free budget — is what gets optimized. For example, if you lock AAPL at 15%, MSFT at 20%, and BRK.B at 10%, the remaining 55% is distributed by the optimizer across all free positions.
Sector constraints apply to the full portfolio, including locked positions. If AAPL (locked at 15%) + MSFT (locked at 20%) already puts Technology at 35%, the sector cap of 40% leaves only 5% more for free tech positions.
Adding a locked position — even at zero weight — changes the covariance matrix size and the T/N ratio used by the RMT filter. This means metrics like Sharpe Ratio will shift slightly compared to running the same portfolio without that asset. This is mathematically correct, not a bug.
If your constraints are impossible to satisfy — for example, locked weights sum to more than 100%, or a sector floor conflicts with a sector ceiling — the optimizer will return an error message specifying which constraint is violated. It will never silently relax your constraints.
The Standard Optimizer gives the mathematically unconstrained optimal portfolio — useful for discovering what the model produces with no human input.
The Constrained Optimizer gives the best portfolio achievable within your real-world requirements. The Sharpe Ratio will typically be lower than the unconstrained solution — the difference tells you exactly how much you are paying for your constraints in risk-adjusted return terms.
When options are present, MAISNER computes portfolio-level Greeks — the net Delta, Gamma, Theta, Vega, and Rho of all option positions combined. This tells you the portfolio's aggregate sensitivity to price, time, and volatility moves.
Options max allocation is capped at 30% of total portfolio by default.
For portfolios with options, standard Mean-Variance Optimization is replaced with CVaR optimization using 5,000 Monte Carlo scenarios. This correctly handles the non-linear payoff structure of options — Markowitz cannot.
A broad S&P 500-like shock applied to all equity positions. Enter as a percentage (e.g. −30 for a crash scenario, +15 for a bull run).
Apply additional shocks to specific sectors on top of the market shock. Use + Add sector to add rows. E.g. a banking crisis might apply −50% to Financials while the broad market falls −20%.
Override any individual position with a precise shock. E.g. you expect AAPL to fall −40% in a specific scenario — add a ticker shock to override the sector result.
Enter your positions (ticker, shares, purchase price, purchase date). The system fetches the current market price, calculates your unrealized P&L, and identifies positions with losses that qualify for tax-loss harvesting.
For each candidate, it suggests a substitute security — a highly correlated but legally distinct asset you can buy immediately to maintain market exposure while the wash sale clock runs.
MAISNER flags positions that may trigger wash sale rules and marks them clearly. The tool does not execute trades — always confirm with your tax advisor before acting.
The chart reconstructs historical portfolio performance assuming you held the current weights from the start of the selected period. Each day, it computes the weighted return of all positions and chains them into a cumulative index starting at 100.
This is a static-weight backtest, not rebalanced. The actual past performance of a rebalanced portfolio would differ — use the Backtest module for that.
Auto-refresh: while the panel is open, the chart updates automatically every 5 minutes with the latest prices. Drag to scroll history, scroll to zoom.
X-axis: Underlying price (±30% from current spot)
Y-axis: Days to expiry (1 day → current DTE)
Z-axis / Color: The selected value (P&L, Delta, or Gamma)
Two reference planes are drawn: ■ Gold = strike price, ■ Green = current spot. You can rotate and zoom the 3D chart freely.
Displays current Greeks computed at the live spot price and current DTE using Black-Scholes. If a market price was stored with the option, Implied Volatility is back-solved via Brent's method before computing all Greeks.
Each news item is matched against a library of 23+ geographic regex patterns (company names, index names, central banks, currencies) and a map of 35+ regional ETF tickers. Matches place a glowing dot on the corresponding country or region.
Stories that don't match any pattern are distributed across 24 known financial city locations worldwide — so the globe stays populated even with mixed news feeds.
The Leverage Analyzer translates your portfolio's return and volatility into three concrete outputs: how much leverage Kelly theory suggests (f*), how far the market has to fall before a margin call, and the probability of being liquidated within the simulation horizon — computed from 5,000 GBM paths.
Rather than picking stops arbitrarily, MAISNER sizes them to the position's own daily volatility: stop = k × daily_σ × √T where k is your multiplier (1.5–2.5×) and T is the horizon. A tighter stop at k=1.5 catches real losses quickly but generates more false exits; k=2.5 is wider and tolerates noise.
For short positions, the stop is placed above the entry price (stock rising hurts a short). The barrier probability formula is also inverted — the engine uses the upper-barrier GBM formula automatically.
Attribution breaks the gap between your portfolio return and the benchmark into three effects: did you outperform because you over-weighted the right sectors (allocation), because your stock picks beat the sector ETF (selection), or from a combination of both (interaction)? The three always sum exactly to active return.
Benchmark = SPY sector weights (Technology 30%, Financials 13.2%, Healthcare 12.8%, …) applied to sector ETF returns (XLK, XLF, XLV, XLY, XLI, XLC, XLP, XLE, XLB, XLU, XLRE). SPY actual return is shown as a reference. Sector classification uses FMP profile data as the primary source.
The Monitor fetches live prices from FMP Professional (with Yahoo Finance fallback) and computes cost basis, current value, and P&L for each position. Currency is inferred from the ticker suffix — .DE/.PA → EUR, .L → GBP, .ST → SEK, no suffix → USD — and converted to USD at current FX rates.
Live option values are estimated as intrinsic value + time value (simplified Black-Scholes with 25% assumed vol). Expired options (past expiry date) are marked to zero with an EXPIRED badge and shown in red. For precise option analytics, use the dedicated Options Pricing engine.
Positive weights = long positions (green in the table). Negative weights = short positions (red). Gross exposure is the sum of absolute weights — values above 1.0 mean leverage. Net exposure is the algebraic sum — 1.0 for long/short mode, 0.0 for market neutral.
The optimizer may decide not to short any position if the borrow cost exceeds the expected alpha — in that case it returns an all-long portfolio and the L/S ratio shows as "Long only".
Long: P&L = qty × (live_price − purchase_price). Positive when price rose.
Short: P&L = qty × (purchase_price − live_price). Positive when price fell.
The position detail table shows P&L in dollars and as a percentage of the initial cost.
Each historical scenario (GFC 2008, COVID 2020, Rate Shock 2022, Dot-com 2000–02, Black Monday 1987) applies a market-level shock adjusted by each stock's beta. Short positions profit from market declines — the table shows the hedge effectiveness of your short book.
If you hold Q units of a commodity or equity at spot price P₀, you face two risks: the price falling (price risk) and an additional source of volatility unrelated to price — crop yield, weather, operational risk — called background risk. The Hedging Optimizer tells you exactly how many put options to buy (at what strike) and how many futures contracts to sell to minimise the Expected Shortfall of your terminal wealth at the horizon.
An amber badge appears when H* > 1. This is not an error — it is a mathematical result of the Yu & Sun (2017) model under certain parameter configurations. It occurs when: (a) β is close to 1 (multiplicative background risk causes correlated amplification of losses), (b) ρ₁ is low (futures are a poor hedge, requiring more contracts), or (c) σ_futures > σ_spot (the futures contract is more volatile than the spot). In practice, check margin requirements before over-hedging.
Under PRIIPs, any portfolio offered to EU retail investors requires a standardised Key Information Document covering risk classification, performance scenarios, costs, and holding-period recommendations. MAISNER computes all required numbers from your portfolio's price history and produces a print-ready PDF draft in three languages.
The document is a draft — the manufacturer bears final legal responsibility for accuracy and distribution. The red disclaimer box on the last page makes this explicit.
MAISNER draws random monthly return sequences from the portfolio's historical monthly log-returns (price_history.xlsx, minimum 24 months required). For each of the four scenarios — stress (1st percentile), unfavourable (10th), moderate (50th), favourable (90th) — it simulates 10,000 paths over 1 year, the mid-point, and the full RHP, and reports the final portfolio value as a euro amount and annualised percentage.
The bootstrap respects the actual return distribution including fat tails. No normality assumption is imposed.
When you click DOWNLOAD PDF, the branding dialog appears. Enter your firm name (printed in the page footer) and optionally upload a logo (PNG/JPG, max 10 MB — placed in the top-right of page 1). Leave both blank for a plain MAISNER-branded draft.
This tool generates a draft KID for review purposes. The manufacturer / PRIIP maker is solely responsible for the accuracy, completeness, and regulatory compliance of the final KID distributed to retail investors. This output does not constitute legal, tax, or investment advice. Always have the final document reviewed by qualified legal counsel before distribution.
Select the rule type, the portfolio to monitor (saved portfolio or Monitor portfolio), the ticker or sector if required, a threshold value, direction (above / below / either), and the cooldown window in hours. Enable the rule and click Save. Rules are evaluated when you click Check Now or automatically via the daily scheduled check.