T09 · Insecure Skill Coding Practices
- Location
trader.py:205- Finding
Minimum Market Volume Safeguard Is Declared but Never Enforced
- Content
View full analysis
tuple[str | None, float, str]: p = market.current_probability q = market.question if market.spread_cents is not None and market.spread_cents / 100 > MAX_SPREAD: return None, 0, f"Spread {market.spread_cents/100:.1%} > {MAX_SPREAD:.1%}" if market.resolves_at: try: resolves = datetime.fromisoformat(market.resolves_at.replace("Z", "+00:00")) days_left = (resolves - datetime.now(timezone.utc)).days if days_left < MIN_DAYS: return None, 0, f"Only {days_left} days left" except Exception: pass person, bl, bu, period_days = parse_post_market(q) if not person: return None, 0, "Not a post-count bin market" crisis_mult = crisis_multipliers.get(person['key'], 1.0) expected = person['daily_rate'] * period_days crisis_expected = expected * crisis_mult bin_mid = (bl + bu) / 2 if crisis_mult > 1.05: if bin_mid > expected: bias = crisis_mult else: bias = max(0.4, 2.0 - crisis_mult) else: bias = 1.0 if p <= YES_THRESHOLD: conviction = min(1.0, (YES_THRESHOLD - p) / YES_THRESHOLD * bias) size = max(MIN_TRADE, round(conviction * MAX_POSITION, 2)) edge = YES_THRESHOLD - p return "yes", size, ( f"YES {p:.0%} edge={edge:.0%} crisis={crisis_mult:.2f}x " f"bias={bias:.1f ...[truncated 1721 chars]- Remediation
View remediation
