multi-pair-basket-trader — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited multi-pair-basket-trader (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
import numpy as np
class BasketTrader:
CURRENCY_BASKETS = {
"USD_LONG": {"EURUSD": "sell", "GBPUSD": "sell", "AUDUSD": "sell", "NZDUSD": "sell", "USDCAD": "buy", "USDJPY": "buy", "USDCHF": "buy"},
"USD_SHORT": {"EURUSD": "buy", "GBPUSD": "buy", "AUDUSD": "buy", "NZDUSD": "buy", "USDCAD": "sell", "USDJPY": "sell", "USDCHF": "sell"},
"EUR_LONG": {"EURUSD": "buy", "EURJPY": "buy", "EURGBP": "buy", "EURAUD": "buy"},
"RISK_ON": {"AUDUSD": "buy", "NZDUSD": "buy", "USDJPY": "buy", "USDCHF": "sell"},
"RISK_OFF": {"USDJPY": "sell", "USDCHF": "buy", "XAUUSD": "buy", "AUDUSD": "sell"},
}
@staticmethod
def generate_basket_orders(basket_name: str, total_risk_pct: float = 2.0, account_balance: float = 10000) -> dict:
basket = BasketTrader.CURRENCY_BASKETS.get(basket_name)
if not basket: return {"error": f"Unknown basket: {basket_name}"}
n_pairs = len(basket)
risk_per_pair = total_risk_pct / n_pairs
return {
"basket": basket_name,
"orders": [{"pair": p, "direction": d, "risk_pct": round(risk_per_pair, 2)} for p, d in basket.items()],
"total_risk": total_risk_pct,
"n_pairs": n_pairs,
"risk_per_pair": round(risk_per_pair, 2),
"advantage": "Diversified execution — single currency view, spread across pairs to reduce pair-specific noise",
}
@staticmethod
def basket_correlation_check(basket_name: str, correlation_matrix: dict) -> dict:
"""Validate basket pairs aren't too correlated (reduces diversification benefit)."""
basket = BasketTrader.CURRENCY_BASKETS.get(basket_name)
if not basket: return {"error": f"Unknown basket: {basket_name}"}
pairs = list(basket.keys())
high_corr_pairs = []
for i, p1 in enumerate(pairs):
for p2 in pairs[i+1:]:
key = f"{p1}_{p2}"
corr = correlation_matrix.get(key, 0)
if abs(corr) > 0.85:
high_corr_pairs.append({"pair1": p1, "pair2": p2, "corr": round(corr, 3)})
return {
"basket": basket_name,
"n_pairs": len(pairs),
"high_correlation_warnings": high_corr_pairs,
"diversification_quality": "POOR" if len(high_corr_pairs) > 2 else "MODERATE" if high_corr_pairs else "GOOD",
"recommendation": "Consider removing highly correlated pairs to improve diversification" if high_corr_pairs else "Basket is well-diversified",
}orders = BasketTrader.generate_basket_orders("USD_LONG", total_risk_pct=2.0, account_balance=10000)
for order in orders["orders"]:
print(f"{order['direction'].upper()} {order['pair']} — {order['risk_pct']}% risk")
health = BasketTrader.basket_correlation_check("USD_LONG", corr_matrix)
print(f"Diversification: {health['diversification_quality']}")~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.