Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add mahmoud20138/Tradecraft --skill cross-asset-relationshipsgit clone --depth 1 https://github.com/mahmoud20138/TradecraftWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/mahmoud20138/tradecraft/cross-asset-relationships)<a href="https://agentmods.dev/skills/mahmoud20138/tradecraft/cross-asset-relationships"><img src="https://agentmods.dev/badge/skills/mahmoud20138/tradecraft/cross-asset-relationships/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/mahmoud20138/tradecraft/cross-asset-relationships"><img src="https://agentmods.dev/badge/skills/mahmoud20138/tradecraft/cross-asset-relationships.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00085 | $0.07797 |
| Opus 5.5 | $0.00034 | $0.03119 |
| Sonnet 5.5 | $0.00017 | $0.01559 |
| Haiku 4.5 | $0.00009 | $0.00780 |
Grade A, and why
cross-asset-relationships scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 764 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Skill: Cross Asset Relationships | Domain: trading | Category: fundamentals | Level: advanced Tags:
trading,fundamentals,correlation,intermarket,carry-trade,cross-asset
Pair Correlation Engine
Pair Correlation Engine
Overview
Analyzes statistical relationships between financial instruments across multiple timeframes and historical periods. Detects regime shifts, divergences, lead-lag relationships, and provides actionable correlation intelligence for trading decisions.
Architecture
┌───────────────────────────────────────────────────┐
│ Pair Correlation Engine │
├────────────┬─────────────┬────────────────────────┤
│ Correlation│ History vs │ Regime Detection & │
│ Matrix │ Current │ Divergence Scanner │
└────────────┴─────────────┴────────────────────────┘
1. Core Correlation Computation
import pandas as pd
import numpy as np
from scipy import stats
from scipy.cluster.hierarchy import linkage, fcluster, dendrogram
from typing import Optional
from datetime import datetime, timedelta
def compute_returns(prices: pd.DataFrame, method: str = "log") -> pd.DataFrame:
"""Convert price DataFrame to returns. Columns = symbols."""
if method == "log":
return np.log(prices / prices.shift(1)).dropna()
return prices.pct_change().dropna()
def correlation_matrix(
prices: pd.DataFrame,
method: str = "pearson",
window: Optional[int] = None
) -> pd.DataFrame:
"""
Full correlation matrix.
method: pearson, spearman, kendall
window: if set, uses last N bars only
"""
returns = compute_returns(prices)
if window:
returns = returns.tail(window)
return returns.corr(method=method)
def rolling_correlation(
series_a: pd.Series,
series_b: pd.Series,
window: int = 60,
method: str = "pearson"
) -> pd.Series:
"""Rolling window correlation between two series."""
ret_a = np.log(series_a / series_a.shift(1)).dropna()
ret_b = np.log(series_b / series_b.shift(1)).dropna()
aligned = pd.concat([ret_a, ret_b], axis=1).dropna()
aligned.columns = ["a", "b"]
return aligned["a"].rolling(window).corr(aligned["b"])
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 764 lines · 85 tokens per session scan A facad063d027
cross-asset-relationships is a skill published in the GitHub repository mahmoud20138/Tradecraft (17 stars, last pushed 6mo ago), licensed MIT. It adds 85 tokens to every session and 7,797 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
etf-premium
Calculate an ETF's premium or discount to NAV from Yahoo Finance data (yfinance), compare or screen ETFs by premium, explain why a gap exists, and decompose a sudden ETF move into NAV-driven vs structural components (dealer gamma exposure, blocked AP arbitrage, sentiment). Use this skill whenever the user asks whether…
stock-liquidity
Analyze how liquid a stock is using Yahoo Finance data (yfinance): bid-ask spreads, volume and dollar volume (ADTV), top-of-book and options depth, square-root market impact and slippage estimates, turnover ratio, and Amihud illiquidity, rolled into a liquidity grade. Use this skill whenever the user asks about…
tradingview-reader
Read the user's local TradingView desktop app through opencli: quotes, options chains with greeks and per-strike IV, options expiries, screener results across stocks, crypto, forex, futures, and bonds, gainers and losers, news headlines and full stories, alerts (active, fired, offline fires), watchlists including…
company-valuation
Estimate a public company's intrinsic value with DCF, relative (peer multiple), and sum-of-the-parts (SOTP) methods, then blend them into an implied share price with upside/downside vs the market price, a WACC and terminal-growth sensitivity grid, and bull/base/bear scenarios. Use this skill whenever the user asks…
sepa-strategy
Analyze stocks with Mark Minervini's SEPA (Specific Entry Point Analysis) methodology: stage analysis, the 8-condition trend template, fundamentals, VCP and other base patterns, pivot-point entries, market environment, and risk-based position sizing. Use this skill whenever the user mentions SEPA, Minervini…
stock-correlation
Analyze how stocks move together using Yahoo Finance price history (yfinance): find correlated peers for a ticker, measure correlation, beta, and spread between specific tickers, cluster a group into a correlation matrix, and track rolling or regime-dependent correlation. Use this skill whenever the user asks what…