(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','fbclid','msclkid','ttclid','twclid'];
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;}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'],
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.captured_at = new Date().toISOString();
var ex = ld();
// Last-touch: merge new fields ON TOP of previous last (preserva campi pregressi)
var newLast = ex && ex.last ? mg(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.
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; }
newFirst = firstHasUtm ? ex.first : mg(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
https://menthorq.com/wp-content/plugins/breeze/assets/js/js-front-end/breeze-prefetch-links.min.js
https://menthorq.com/wp-content/themes/yootheme/vendor/assets/uikit/dist/js/uikit.js
https://menthorq.com/wp-content/themes/yootheme/vendor/assets/uikit/dist/js/uikit-icons-circle.min.js
https://menthorq.com/wp-content/themes/yootheme/assets/site/js/theme.js
window.yootheme ||= {}; yootheme.theme = {"i18n":{"close":{"label":"Close","0":"yootheme"},"totop":{"label":"Back to top","0":"yootheme"},"marker":{"label":"Open","0":"yootheme"},"navbarToggleIcon":{"label":"Open menu","0":"yootheme"},"paginationPrevious":{"label":"Previous page","0":"yootheme"},"paginationNext":{"label":"Next page","0":"yootheme"},"searchIcon":{"toggle":"Open Search","submit":"Submit Search"},"slider":{"next":"Next slide","previous":"Previous slide","slideX":"Slide %s","slideLabel":"%s of %s"},"slideshow":{"next":"Next slide","previous":"Previous slide","slideX":"Slide %s","slideLabel":"%s of %s"},"lightboxPanel":{"next":"Next slide","previous":"Previous slide","slideLabel":"%s of %s","close":"Close"}}};
Mastering Inter-Commodity Spreads Trading Relationships Between Related Markets What Are Inter-Commodity Spreads? An inter-commodity spread is a simultaneous long and short position in two distinct but fundamentally related markets. For example:
Long Corn / Short Wheat Long Heating Oil / Short Crude Oil Long Soybean Meal / Short Soybean Oil These spreads are generally designed to profit from the divergence or convergence in pricing between the two commodities, driven by seasonality, supply/demand shifts, or macro fundamentals.
Unlike intra-commodity spreads, which deal with different contract months of the same commodity, inter-commodity spreads deal with two different assets.
Why Do Inter-Commodity Spreads Work? These spreads are grounded in real economic relationships:
Substitutes or complements: Corn and wheat often compete in global feed and food markets. A shift in price may cause demand substitution. Processing margins: The soybean crush spread captures the profitability of crushing soybeans into meal and oil. Refinery logic: Energy product spreads like Crack (Crude vs. refined products) or Heat–Crude spreads reflect refinery margins and demand curves. These relationships often break down temporarily, creating opportunities for traders who understand the reversion dynamics.
Case Study: Corn vs. Wheat Spread Suppose wheat prices rise sharply due to a poor European crop, while corn remains stable. In livestock markets, this makes wheat less attractive as feed, increasing corn usage.
A trader might buy corn and sell wheat, expecting the spread to narrow as substitution demand increases for corn and wanes for wheat. This strategy isn’t a bet on either commodity rising or falling in isolation:it’s a bet on their relationship converging back to normal.
Types of Inter-Commodity Spreads
Mastering Inter-Commodity Spreads 5 Each of these has unique drivers:understanding them is key.
Why Traders Use These Spreads Relative Value Focus Inter-commodity spreads remove broad macro noise. Instead of worrying whether all prices will rise or fall due to interest rates or inflation, you focus on the fundamental edge between related products. Seasonality and Cycles Many of these spreads follow repeatable seasonal patterns. For example, corn often gains vs. wheat during planting months or harvest volatility windows. Natural Hedges Spreads can provide a hedge against systemic risk. In many portfolios, spreading wheat vs. corn offers commodity exposure with less correlation to broader market shocks. Portfolio Diversification Rather than stacking risk into one directional commodity bet, these spreads diversify trading logic:you can be bullish on grains generally but bearish on wheat relative to corn. Key Tools for Trading Inter-Commodity Spreads Historical Ratio Charts These charts show the price ratio (or difference) between the two commodities over time. Look for mean-reverting behavior, standard deviation thresholds, or unusual divergences. Fundamental Analysis Understand what drives both legs: USDA reports, weather patterns, geopolitical events, and currency moves all impact different commodities differently. Seasonal Research Use 10–15 year seasonal averages to identify periods when spreads tend to widen or contract. Volatility and Correlation Analysis Ensure the spread isn’t behaving erratically due to sudden correlation breaks. Monitor cross-asset vol and related market news. Trade Construction You have two ways to express inter-commodity views:
Ratio-Based Spread: Adjust the position size of each leg based on volatility or dollar exposure (e.g., 2 corn contracts vs 1 wheat). Outright Spread: Keep the same number of contracts on both legs, and track P&L based on the net price movement. Also, be mindful of margin requirements, which can vary depending on the correlation and exchange rules.
Trading Crude Oil .
Managing Risk in Inter-Commodity Spreads Monitor News Flow Across Both Markets A bullish corn position can be undone by an even stronger wheat rally if a wheat shortage emerges globally. Use Technical Anchors Even in fundamentally driven trades, use moving averages or regression lines to identify reversion points or breakout failures. Set Ratio or Spread Stops Instead of absolute price stops, use spread-level thresholds (e.g., the spread widens by 10 cents beyond your tolerance). Common Pitfalls to Avoid
Assuming Correlation = Cointegration: Just because two commodities have historically moved together doesn’t mean they always will. Ignoring Seasonality Clashes: Spreads behave differently depending on which leg is in harvest season, storage constraints, or weather risk. Underestimating Volatility Differentials: Some commodities (e.g., natural gas) are much more volatile than others (e.g., heating oil). Improper position sizing can lead to asymmetric risk. Conclusion Inter-commodity spreads are a sophisticated way to trade relative value rather than direction. They offer a balance between macro context and micro fundamentals, providing traders with trades that are often more repeatable, stable, and less exposed to random noise.
To excel with these spreads:
Study long-term ratios and seasonality. Understand each commodity’s fundamental drivers. Use technicals to refine entries and exits. Size positions smartly based on volatility and risk tolerance. In doing so, you gain access to a strategy that not only lowers outright exposure but also leverages market structure for better-informed trades.
Ask QUIN to help you with your Inter-Commodity Spreads spread
Join us today
Access daily Market Research and our interactive Dashboard . Make better trading decisions.
MenthorQ ©2025 701 Brickell Key BLVD 33131, Miami (FL)
Quantitative Models
Resources
Company
Account console.warn({"message":"Unknown argument \"membership_level_operator\" on field \"customMpcsCourse\" of type \"MpcsCoursesQuery\". Did you mean \"skill_level_operator\"?"});
window.$yooessentials = window.$yooessentials || {};
window.$yooessentials.infos = window.$yooessentials.infos || [];
window.$yooessentials.errors = window.$yooessentials.errors || [];
window.$yooessentials.warnings = window.$yooessentials.warnings || [];
window.$yooessentials.errors.push({"log":"Unknown argument \"membership_level_operator\" on field \"customMpcsCourse\" of type \"MpcsCoursesQuery\". Did you mean \"skill_level_operator\"?","path":null,"trace":"#0 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/Language\/Visitor.php(403): YOOtheme\\GraphQL\\Validator\\Rules\\KnownArgumentNames::YOOtheme\\GraphQL\\Validator\\Rules\\{closure}()\n#1 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/Language\/Visitor.php(470): YOOtheme\\GraphQL\\Language\\Visitor::YOOtheme\\GraphQL\\Language\\{closure}()\n#2 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/Language\/Visitor.php(276): YOOtheme\\GraphQL\\Language\\Visitor::YOOtheme\\GraphQL\\Language\\{closure}()\n#3 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/Validator\/DocumentValidator.php(119): YOOtheme\\GraphQL\\Language\\Visitor::visit()\n#4 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/GraphQL.php(155): YOOtheme\\GraphQL\\Validator\\DocumentValidator::validate()\n#5 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/GraphQL.php(97): YOOtheme\\GraphQL\\GraphQL::promiseToExecute()\n#6 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder-source\/src\/Source.php(71): YOOtheme\\GraphQL\\GraphQL::executeQuery()\n#7 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder-source\/src\/Source\/SourceTransform.php(122): YOOtheme\\Builder\\Source->query()\n#8 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder-source\/src\/Source\/SourceTransform.php(69): YOOtheme\\Builder\\Source\\SourceTransform->querySource()\n#9 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(275): YOOtheme\\Builder\\Source\\SourceTransform->prerender()\n#10 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(288): YOOtheme\\Builder->applyTransforms()\n#11 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(288): YOOtheme\\Builder->applyTransforms()\n#12 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(288): YOOtheme\\Builder->applyTransforms()\n#13 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(104): YOOtheme\\Builder->applyTransforms()\n#14 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(121): YOOtheme\\Builder->load()\n#15 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/templates\/menu\/menu.php(159): YOOtheme\\Builder->render()\n#16 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(268): require('...')\n#17 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View\/FileLoader.php(25): YOOtheme\\View->evaluate()\n#18 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(169): YOOtheme\\View\\FileLoader->__invoke()\n#19 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress\/src\/UrlLoader.php(26): YOOtheme\\View->YOOtheme\\{closure}()\n#20 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(169): YOOtheme\\Theme\\Wordpress\\UrlLoader::resolveRelativeUrl()\n#21 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(231): YOOtheme\\View->YOOtheme\\{closure}()\n#22 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-menus\/src\/MenuWalker.php(102): YOOtheme\\View->render()\n#23 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/nav-menu-template.php(621): YOOtheme\\Theme\\Wordpress\\MenuWalker->walk()\n#24 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/nav-menu-template.php(241): walk_nav_menu_tree()\n#25 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/widgets\/class-wp-nav-menu-widget.php(109): wp_nav_menu()\n#26 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-widgets\/src\/WidgetsListener.php(353): WP_Nav_Menu_Widget->widget()\n#27 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-widgets\/src\/WidgetsListener.php(536): YOOtheme\\Theme\\Widgets\\WidgetsListener->displayWidget()\n#28 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-widgets\/src\/WidgetsListener.php(499): YOOtheme\\Theme\\Widgets\\WidgetsListener->getWidget()\n#29 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-widgets\/src\/WidgetsListener.php(130): YOOtheme\\Theme\\Widgets\\WidgetsListener->createMenuWidget()\n#30 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/container\/src\/Container.php(229): YOOtheme\\Theme\\Widgets\\WidgetsListener->afterSidebar()\n#31 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/platform-wordpress\/src\/FilterLoader.php(28): YOOtheme\\Container->call()\n#32 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/class-wp-hook.php(343): YOOtheme\\Wordpress\\FilterLoader->YOOtheme\\Wordpress\\{closure}()\n#33 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/class-wp-hook.php(365): WP_Hook->apply_filters()\n#34 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/plugin.php(522): WP_Hook->do_action()\n#35 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/widgets.php(717): do_action()\n#36 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/templates\/header.php(239): dynamic_sidebar()\n#37 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(268): require('...')\n#38 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View\/FileLoader.php(25): YOOtheme\\View->evaluate()\n#39 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(169): YOOtheme\\View\\FileLoader->__invoke()\n#40 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress\/src\/UrlLoader.php(26): YOOtheme\\View->YOOtheme\\{closure}()\n#41 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(169): YOOtheme\\Theme\\Wordpress\\UrlLoader::resolveRelativeUrl()\n#42 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(231): YOOtheme\\View->YOOtheme\\{closure}()\n#43 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(82): YOOtheme\\View->render()\n#44 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/header.php(145): YOOtheme\\View->__invoke()\n#45 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/template.php(814): require_once('...')\n#46 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/template.php(749): load_template()\n#47 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/general-template.php(48): locate_template()\n#48 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/page.php(10): get_header()\n#49 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/template-loader.php(132): include('...')\n#50 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-blog-header.php(19): require_once('...')\n#51 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/index.php(17): require('...')\n#52 {main}"});
console.warn({"message":"Unknown argument \"membership_level_operator\" on field \"customMpcsCourses\" of type \"MpcsCoursesQuery\". Did you mean \"skill_level_operator\"?"});
window.$yooessentials.errors.push({"log":"Unknown argument \"membership_level_operator\" on field \"customMpcsCourses\" of type \"MpcsCoursesQuery\". Did you mean \"skill_level_operator\"?","path":null,"trace":"#0 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/Language\/Visitor.php(403): YOOtheme\\GraphQL\\Validator\\Rules\\KnownArgumentNames::YOOtheme\\GraphQL\\Validator\\Rules\\{closure}()\n#1 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/Language\/Visitor.php(470): YOOtheme\\GraphQL\\Language\\Visitor::YOOtheme\\GraphQL\\Language\\{closure}()\n#2 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/Language\/Visitor.php(276): YOOtheme\\GraphQL\\Language\\Visitor::YOOtheme\\GraphQL\\Language\\{closure}()\n#3 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/Validator\/DocumentValidator.php(119): YOOtheme\\GraphQL\\Language\\Visitor::visit()\n#4 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/GraphQL.php(155): YOOtheme\\GraphQL\\Validator\\DocumentValidator::validate()\n#5 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/graphql\/lib\/GraphQL.php(97): YOOtheme\\GraphQL\\GraphQL::promiseToExecute()\n#6 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder-source\/src\/Source.php(71): YOOtheme\\GraphQL\\GraphQL::executeQuery()\n#7 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder-source\/src\/Source\/SourceTransform.php(122): YOOtheme\\Builder\\Source->query()\n#8 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder-source\/src\/Source\/SourceTransform.php(69): YOOtheme\\Builder\\Source\\SourceTransform->querySource()\n#9 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(275): YOOtheme\\Builder\\Source\\SourceTransform->prerender()\n#10 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(288): YOOtheme\\Builder->applyTransforms()\n#11 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(288): YOOtheme\\Builder->applyTransforms()\n#12 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(288): YOOtheme\\Builder->applyTransforms()\n#13 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(288): YOOtheme\\Builder->applyTransforms()\n#14 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(104): YOOtheme\\Builder->applyTransforms()\n#15 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/builder\/src\/Builder.php(121): YOOtheme\\Builder->load()\n#16 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/templates\/menu\/menu.php(159): YOOtheme\\Builder->render()\n#17 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(268): require('...')\n#18 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View\/FileLoader.php(25): YOOtheme\\View->evaluate()\n#19 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(169): YOOtheme\\View\\FileLoader->__invoke()\n#20 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress\/src\/UrlLoader.php(26): YOOtheme\\View->YOOtheme\\{closure}()\n#21 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(169): YOOtheme\\Theme\\Wordpress\\UrlLoader::resolveRelativeUrl()\n#22 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(231): YOOtheme\\View->YOOtheme\\{closure}()\n#23 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-menus\/src\/MenuWalker.php(102): YOOtheme\\View->render()\n#24 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/nav-menu-template.php(621): YOOtheme\\Theme\\Wordpress\\MenuWalker->walk()\n#25 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/nav-menu-template.php(241): walk_nav_menu_tree()\n#26 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/widgets\/class-wp-nav-menu-widget.php(109): wp_nav_menu()\n#27 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-widgets\/src\/WidgetsListener.php(353): WP_Nav_Menu_Widget->widget()\n#28 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-widgets\/src\/WidgetsListener.php(536): YOOtheme\\Theme\\Widgets\\WidgetsListener->displayWidget()\n#29 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-widgets\/src\/WidgetsListener.php(499): YOOtheme\\Theme\\Widgets\\WidgetsListener->getWidget()\n#30 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress-widgets\/src\/WidgetsListener.php(130): YOOtheme\\Theme\\Widgets\\WidgetsListener->createMenuWidget()\n#31 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/container\/src\/Container.php(229): YOOtheme\\Theme\\Widgets\\WidgetsListener->afterSidebar()\n#32 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/platform-wordpress\/src\/FilterLoader.php(28): YOOtheme\\Container->call()\n#33 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/class-wp-hook.php(343): YOOtheme\\Wordpress\\FilterLoader->YOOtheme\\Wordpress\\{closure}()\n#34 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/class-wp-hook.php(365): WP_Hook->apply_filters()\n#35 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/plugin.php(522): WP_Hook->do_action()\n#36 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/widgets.php(717): do_action()\n#37 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/templates\/header.php(239): dynamic_sidebar()\n#38 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(268): require('...')\n#39 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View\/FileLoader.php(25): YOOtheme\\View->evaluate()\n#40 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(169): YOOtheme\\View\\FileLoader->__invoke()\n#41 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/theme-wordpress\/src\/UrlLoader.php(26): YOOtheme\\View->YOOtheme\\{closure}()\n#42 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(169): YOOtheme\\Theme\\Wordpress\\UrlLoader::resolveRelativeUrl()\n#43 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(231): YOOtheme\\View->YOOtheme\\{closure}()\n#44 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/packages\/view\/src\/View.php(82): YOOtheme\\View->render()\n#45 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/header.php(145): YOOtheme\\View->__invoke()\n#46 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/template.php(814): require_once('...')\n#47 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/template.php(749): load_template()\n#48 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/general-template.php(48): locate_template()\n#49 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-content\/themes\/yootheme\/page.php(10): get_header()\n#50 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-includes\/template-loader.php(132): include('...')\n#51 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/wp-blog-header.php(19): require_once('...')\n#52 \/mnt\/BLOCKSTORAGE\/home\/1543348.cloudwaysapps.com\/tsqhnrsppe\/public_html\/index.php(17): require('...')\n#53 {main}"});
UIkit.icon.add({"fa6-regular--user":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 448 512\" width=\"20\" height=\"20\"><path d=\"M304 128a80 80 0 10-160 0 80 80 0 10160 0zm-208 0a128 128 0 11256 0 128 128 0 11-256 0zM49.3 464h349.5c-8.9-63.3-63.3-112-129-112h-91.4c-65.7 0-120.1 48.7-129 112zM0 482.3C0 383.8 79.8 304 178.3 304h91.4c98.5 0 178.3 79.8 178.3 178.3 0 16.4-13.3 29.7-29.7 29.7H29.7C13.3 512 0 498.7 0 482.3z\"\/><\/svg>"})
var menthorq_gtm = {"system":{"ajax_url":"https://menthorq.com/wp-admin/admin-ajax.php","nonce":"4c11b822d9","site_url":"https://menthorq.com","home_url":"https://menthorq.com","timestamp":1786929937,"environment":"production"},"debug":{"enabled":false,"environment":"production"},"user":[],"container_id":"GTM-599ZCR89"};
//# sourceURL=gtm-tracking-js-extra
https://menthorq.com/wp-content/themes/memberpress-wp-th/modules/GoogleTagManager/Assets/Public/Js/gtm-tracking.js
https://menthorq.com/wp-content/themes/memberpress-wp-th/modules/Mixpanel/Assets/Public/Js/mixpanel-tracking.js
var menthorq_common = {"system":{"ajax_url":"https://menthorq.com/wp-admin/admin-ajax.php","nonce":"c1ac38650a","version":"1.30.1","site_url":"https://menthorq.com","home_url":"https://menthorq.com","timestamp":1786929937},"debug":{"enabled":false,"environment":"production"}};
//# sourceURL=common-core-js-extra
https://menthorq.com/wp-content/themes/memberpress-wp-th/modules/Core/Assets/Public/Js/common.js
https://menthorq.com/wp-content/themes/memberpress-wp-th/modules/TableOfContents/Assets/Public/Js/tableofcontents.js
https://menthorq.com/wp-content/themes/memberpress-wp-th/dist/js/public.bundle.js
(function() {
'use strict';
// Function to get cookie value
function getCookie(name) {
const value = `; ${document.cookie}`;
const parts = value.split(`; ${name}=`);
if (parts.length === 2) return parts.pop().split(';').shift();
return null;
}
// Function to delete cookie
function deleteCookie(name) {
document.cookie = name + '=; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT;';
}
// Read pending events from cookie
const cookieValue = getCookie('gtm_events_v2');
if (cookieValue) {
try {
// First decode URL encoding (browsers automatically encode cookies)
// Then decode from base64, then parse JSON
const urlDecoded = decodeURIComponent(cookieValue);
const decodedValue = atob(urlDecoded);
const events = JSON.parse(decodedValue);
// Validate that events is an array
if (!Array.isArray(events)) {
throw new Error('Events is not an array');
}
console.log('%c[TrackingManager GTM]%c Found ' + events.length + ' pending events in cookie', 'color: #4CAF50; font-weight: bold', 'color: inherit');
// Ensure dataLayer exists
window.dataLayer = window.dataLayer || [];
// Push all events to dataLayer
events.forEach(function(eventData, index) {
const dataLayerEvent = {
event: eventData.event
};
// Add all properties
if (eventData.properties && typeof eventData.properties === 'object') {
Object.keys(eventData.properties).forEach(function(key) {
dataLayerEvent[key] = eventData.properties[key];
});
}
dataLayerEvent._timestamp = eventData.timestamp;
window.dataLayer.push(dataLayerEvent);
console.log('%c[TrackingManager GTM]%c Event #' + (index + 1) + ':', 'color: #4CAF50; font-weight: bold', 'color: inherit', eventData);
});
console.log('%c[TrackingManager GTM]%c All events pushed to dataLayer', 'color: #4CAF50; font-weight: bold', 'color: inherit');
// Delete the cookie
deleteCookie('gtm_events_v2');
} catch (e) {
console.error('[TrackingManager GTM] Error parsing events from cookie:', e);
// Delete corrupted cookie
deleteCookie('gtm_events_v2');
}
}
// Also clean up old cookie format (v1) if it exists
deleteCookie('gtm_pending_events');
})();
(function(){
var GA4_COOKIE = 'ga4_client_id';
var GA4_LS_KEY = 'menthorq_ga4_client_id';
var COOKIE_DAYS = 730;
var MAX_RETRIES = 10;
var RETRY_MS = 500;function getCookie(name) {
var match = document.cookie.match(new RegExp('(?:^|; )' + name + '=([^;]*)'));
return match ? decodeURIComponent(match[1]) : '';
}function setCookie(name, value, days) {
var expires = new Date(Date.now() + days * 864e5).toUTCString();
var cookie = name + '=' + encodeURIComponent(value) + ';expires=' + expires + ';path=/;SameSite=Lax';
if (location.protocol === 'https:') cookie += ';Secure';
document.cookie = cookie;
}function extractClientId() {
var ga = getCookie('_ga');
if (ga) {
var parts = ga.split('.');
if (parts.length >= 4) {
return parts.slice(2).join('.');
}
}
return '';
}function capture() {
if (getCookie(GA4_COOKIE)) return true;var clientId = extractClientId();
if (clientId) {
setCookie(GA4_COOKIE, clientId, COOKIE_DAYS);
try { localStorage.setItem(GA4_LS_KEY, clientId); } catch(e) {}
return true;
}
return false;
}if (capture()) return;// _ga cookie not yet set — poll until gtag.js initializes
var attempts = 0;
var timer = setInterval(function() {
attempts++;
if (capture() || attempts >= MAX_RETRIES) {
clearInterval(timer);
// Last resort: restore from localStorage
if (!getCookie(GA4_COOKIE)) {
try {
var stored = localStorage.getItem(GA4_LS_KEY);
if (stored) setCookie(GA4_COOKIE, stored, COOKIE_DAYS);
} catch(e) {}
}
}
}, RETRY_MS);
})();