(function(){
var CN = 'menthorq_utm_params';
var LK = 'menthorq_utm_params';
var UK = ['utm_source','utm_medium','utm_campaign','utm_term','utm_content','utm_id'];
var CK = ['gclid','gbraid','wbraid','gad_campaignid','fbclid','msclkid','ttclid','twclid'];
// gbraid is not unique; gad_campaignid from the same hit is the campaign reference.
// Replace this whole Google bundle together so a later landing cannot pair a new gbraid with an old campaign id.
var GK = ['gclid','gbraid','wbraid','gad_campaignid'];
var CD = 30;
var AK = UK.concat(CK);function sC(n,v,d){var e=new Date(Date.now()+d*864e5).toUTCString();var c=n+'='+encodeURIComponent(v)+';expires='+e+';path=/;SameSite=Lax';if(location.protocol==='https:')c+=';Secure';document.cookie=c;}
function gC(n){var m=document.cookie.match(new RegExp('(?:^|; )'+n+'=([^;]*)'));return m?decodeURIComponent(m[1]):'';}
function sv(d){var j=JSON.stringify(d);sC(CN,j,CD);try{localStorage.setItem(LK,j);}catch(e){}}
function hk(o){if(!o)return false;for(var i=0;i<AK.length;i++)if(o[AK[i]])return true;return false;}
function nm(d){if(!d)return null;if(d.first)return d;if(hk(d))return{first:d,last:d};return null;}
function ld(){var r=gC(CN);if(r){try{var n=nm(JSON.parse(r));if(n)return n;}catch(e){}}try{var s=localStorage.getItem(LK);if(s){var n=nm(JSON.parse(s));if(n)return n;}}catch(e){}return null;}
function mg(p,n){var o={};if(p)for(var k in p)o[k]=p[k];for(var k in n)o[k]=n[k];return o;}
function hasK(o,keys){if(!o)return false;for(var i=0;i<keys.length;i++)if(o[keys[i]])return true;return false;}
function mgGoogle(p,n){
var o=mg(p,n);
if(!hasK(n,GK))return o;
for(var i=0;i<GK.length;i++){
var k=GK[i];
if(n[k])o[k]=n[k];
else delete o[k];
}
return o;
}
function completeGbraidPair(first,incoming){
if(first.gbraid && !first.gad_campaignid && incoming.gad_campaignid && incoming.gbraid===first.gbraid){
var o={};for(var k in first)o[k]=first[k];o.gad_campaignid=incoming.gad_campaignid;return o;
}
return first;
}var ps = new URLSearchParams(window.location.search);
var fd = {}, has = false;
for (var i = 0; i < AK.length; i++) {
var v = ps.get(AK[i]);
if (v) { fd[AK[i]] = v; has = true; }
}// Click-ID synthesis: when only a click-id is present (no utm_source), derive
// utm_source/utm_medium so downstream analytics groups under the right channel.
var SY = {
gclid: ['google', 'cpc'],
gbraid: ['google', 'cpc'],
wbraid: ['google', 'cpc'],
gad_campaignid: ['google', 'cpc'],
fbclid: ['facebook', 'cpc'],
msclkid: ['bing', 'cpc'],
ttclid: ['tiktok', 'cpc'],
twclid: ['twitter', 'cpc']
};
if (has && !fd.utm_source) {
for (var sk in SY) {
if (fd[sk]) { fd.utm_source = SY[sk][0]; fd.utm_medium = SY[sk][1]; break; }
}
}
if (has && !fd.utm_campaign && fd.gad_campaignid) {
fd.utm_campaign = fd.gad_campaignid;
}if (has) {
fd.captured_at = new Date().toISOString();
var ex = ld();
// Last-touch: merge new fields ON TOP of previous last (preserva campi pregressi).
// Google Ads keys are replaced as one bundle from this hit.
var newLast = ex && ex.last ? mgGoogle(ex.last, fd) : fd;
// First-touch: se ex.first ha almeno un UTM, e' completo e sticky.
// Se ex.first esiste ma e' click-id-only (orphan), completa con i campi nuovi.
// Se ex.first non esiste, usa fd come first.
// Google pair (gbraid + gad_campaignid) stays sticky once captured; only complete
// a missing campaign id when gbraid on this hit matches first-touch gbraid.
var newFirst;
if (ex && ex.first) {
var firstHasUtm = false;
for (var i = 0; i < UK.length; i++) if (ex.first[UK[i]]) { firstHasUtm = true; break; }
if (firstHasUtm || hasK(ex.first, GK)) {
newFirst = completeGbraidPair(ex.first, fd);
} else {
newFirst = mgGoogle(ex.first, fd);
}
} else {
newFirst = fd;
}
sv({first: newFirst, last: newLast});
return;
}var raw = gC(CN);
if (raw) {
try {
var p = JSON.parse(raw);
if (!p.first && hk(p)) sv({first: p, last: p});
} catch(e) {}
return;
}try {
var s = localStorage.getItem(LK);
if (s) { var n = nm(JSON.parse(s)); if (n) sv(n); }
} catch(e) {}
})();
var breeze_prefetch = {"local_url":"https://menthorq.com","ignore_remote_prefetch":"1","ignore_list":["/account/","/login/","/thank-you/","/wp-json/openid-connect/userinfo","wp-admin","wp-login.php"]};
//# sourceURL=breeze-prefetch-js-extra
Statistically, implied volatility beats realised four weeks later but not every week. Historical data show the edge is largest when:
The VIX sits in its lower third and term structure is upward sloping.
Macro calm reigns and economic calendars are light.
Correlation across equities is muted, indicating idiosyncratic rather than systemic risk.
Conversely, the advantage shrinks or reverses when vol spikes and the curve flips into backwardation. Catching that falling knife can work but requires deep pockets. Many volatility funds wait until the curve begins flattening before re-entering shorts; retail traders can adopt the same patience.
Beyond the Premium: Choosing What to Sell
Indices provide the most reliable premium thanks to diversification and constant demand for crash insurance. Single stocks vary widely: “garbage” names—small cap, weak cash-flow, recent meme hype—tend to trade far above fair realised vol once momentum exhausts. Commodities show a premium too but carry informational disadvantage; large producers possess real facts retail lacks.
Beyond the Premium: When Cheap Vol Isn’t a Bargain
Buying options only because IV looks low is a trap. SPY realised vol has spent years under 12 % without producing outsized jumps. Cheap does not equal value unless you have a catalyst. Before going long gamma, ask: Is a major event due? Is skew oddly flat? Are flows (buybacks, index rolls) likely to lift turbulence? If the answer is no, low vol usually stays low.
Black Swans and Catastrophe Hedges
Pundits who warn “teeny puts are cheap!” sound smart because doomsaying feels profound. In reality, ultra-far-OTM puts trade above theoretical fair value once you adjust for incomplete information. Still, ignoring tail risk is reckless. Best practice:
Define maximum acceptable portfolio hit (e.g., loss of 5 % NAV).
Purchase longer-dated, deep-put hedges sized to that limit; roll quarterly.
Accept the drag as a cost of staying in the risk-premium game.
Simple Expected-Value Math
A timing model must beat “always sell” plus cash interest. If holding SPY earns 11 % a year and you sit out 25 % of the time, you need 83 % directional accuracy to match returns. Likewise, skipping variance-premium weeks because they “feel dangerous” demands super-human forecasting. Better to trade smaller through discomfort than to abandon edge wholesale.
Practical Checklist for a Retail Desk
ScanMenthorQ’s Term-Structure heat map each morning. If VIX curve is flat-to-normal and spot vol sits near the 20th percentile, selling vol is green-lit.
Allocate 70 % of vega to index positions, 20 % to single-stock “garbage” plays, 10 % reserved for event arbitrage.
Cap gross portfolio delta within ±0.1 using futures or ETFs; sell vol, not direction.
Keep a standing order queue for quarterly 5-delta index puts equal to 2 % portfolio value.
Record every drawdown; if a loss exceeds four weeks average profit, cut vega by half until the curve normalises.
Conclusion
Risk-premium harvesting works because markets pay insurers more than actuarial break-even—but only the disciplined collect that pay-cheque. Combine timing cues, pick the right underlyings, and embed disaster insurance you hope never to use. With those pieces in place the variance premium shifts from an abstract finance footnote to a steady, scalable income stream.