(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
Market Analysis with the Q-Score: A Quantitative Approach
The Q-Score is a powerful, data-driven metric that evaluates assets based on momentum, seasonality, volatility, and options activity. Learn how traders can leverage this structured scoring system to enhance decision-making, identify opportunities, and refine their trading strategies.
How can you benefit from this quantitative model?
Data-Driven Decision Making
The Q-Score provides objective, quantitative insights, helping traders make informed decisions rather than relying on emotions or speculation.
Multi-Factor Market Analysis
By integrating momentum, seasonality, volatility, and options activity, the Q-Score offers a comprehensive view of an asset’s potential performance.
Trade Timing
Traders can use the Q-Score to refine entry and exit points, aligning their strategies with prevailing market trends and historical patterns.
Adaptability Across Strategies
Whether trading stocks, options, or futures, the Q-Score helps traders tailor their approach based on volatility conditions, trend strength, and market sentiment.
Momentum Score
The Q-Score Momentum Model reflects the underlying trend strength of an asset. Our proprietary quant models analyze price action and technical indicators to determine whether an asset exhibits bullish or bearish momentum.
Option Score
The Q-Score Options Model ranks an asset based on activity in the options market, providing insight into trader sentiment and expected price direction.
Volatility Score
The Q-Score Volatility Model measures the magnitude of price fluctuations of an asset. Our model assesses realized volatility to determine the likelihood of price swings.
Seasonality Score
The Q-Score Seasonality Model assesses the historical performance of an asset over a specific time frame. Using 20 years of historical data, our model examines the price behavior of an asset over the next five days.
Transform your trading Strategy
Let us simplify the market and provide you the tools to make actionable decisions.