trump-code-market-signals

AI-powered analysis of Trump's social media posts to predict stock market movements using 31.5M brute-force tested rules

22 stars

Best use case

trump-code-market-signals is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

AI-powered analysis of Trump's social media posts to predict stock market movements using 31.5M brute-force tested rules

Teams using trump-code-market-signals should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/trump-code-market-signals/SKILL.md --create-dirs "https://raw.githubusercontent.com/Aradotso/trending-skills/main/skills/trump-code-market-signals/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/trump-code-market-signals/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How trump-code-market-signals Compares

Feature / Agenttrump-code-market-signalsStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

AI-powered analysis of Trump's social media posts to predict stock market movements using 31.5M brute-force tested rules

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

Related Guides

SKILL.md Source

# Trump Code — Market Signal Analysis

> Skill by [ara.so](https://ara.so) — Daily 2026 Skills collection.

Trump Code is an open-source system that applies brute-force computation to find statistically significant patterns between Trump's Truth Social/X posting behavior and S&P 500 movements. It has tested 31.5M model combinations, maintains 551 surviving rules, and has a verified 61.3% hit rate across 566 predictions (z=5.39, p<0.05).

## Installation

```bash
git clone https://github.com/sstklen/trump-code.git
cd trump-code
pip install -r requirements.txt
```

### Environment Variables

```bash
# Required for AI briefing and chatbot
export GEMINI_KEYS="key1,key2,key3"       # Comma-separated Gemini API keys

# Optional: for Claude Opus deep analysis
export ANTHROPIC_API_KEY="your-key-here"

# Optional: for Polymarket/Kalshi integration
export POLYMARKET_API_KEY="your-key-here"
```

## CLI — Key Commands

```bash
# Today's detected signals from Trump's posts
python3 trump_code_cli.py signals

# Model performance leaderboard (all 11 named models)
python3 trump_code_cli.py models

# Get LONG/SHORT consensus prediction
python3 trump_code_cli.py predict

# Prediction market arbitrage opportunities
python3 trump_code_cli.py arbitrage

# System health check (circuit breaker state)
python3 trump_code_cli.py health

# Full daily report (trilingual)
python3 trump_code_cli.py report

# Dump all data as JSON
python3 trump_code_cli.py json
```

## Core Scripts

```bash
# Real-time Trump post monitor (polls every 5 min)
python3 realtime_loop.py

# Brute-force model search (~25 min, tests millions of combos)
python3 overnight_search.py

# Individual analyses
python3 analysis_06_market.py        # Posts vs S&P 500 correlation
python3 analysis_09_combo_score.py   # Multi-signal combo scoring

# Web dashboard + AI chatbot on port 8888
export GEMINI_KEYS="key1,key2,key3"
python3 chatbot_server.py
# → http://localhost:8888
```

## REST API (Live at trumpcode.washinmura.jp)

```python
import requests

BASE = "https://trumpcode.washinmura.jp"

# All dashboard data in one call
data = requests.get(f"{BASE}/api/dashboard").json()

# Today's signals + 7-day history
signals = requests.get(f"{BASE}/api/signals").json()

# Model performance rankings
models = requests.get(f"{BASE}/api/models").json()

# Latest 20 Trump posts with signal tags
posts = requests.get(f"{BASE}/api/recent-posts").json()

# Live Polymarket Trump prediction markets (316+)
markets = requests.get(f"{BASE}/api/polymarket-trump").json()

# LONG/SHORT playbooks
playbook = requests.get(f"{BASE}/api/playbook").json()

# System health / circuit breaker state
status = requests.get(f"{BASE}/api/status").json()
```

### AI Chatbot API

```python
import requests

response = requests.post(
    "https://trumpcode.washinmura.jp/api/chat",
    json={"message": "What signals fired today and what's the consensus?"}
)
print(response.json()["reply"])
```

## MCP Server (Claude Code / Cursor Integration)

Add to `~/.claude/settings.json`:

```json
{
  "mcpServers": {
    "trump-code": {
      "command": "python3",
      "args": ["/path/to/trump-code/mcp_server.py"]
    }
  }
}
```

Available MCP tools: `signals`, `models`, `predict`, `arbitrage`, `health`, `events`, `dual_platform`, `crowd`, `full_report`

## Open Data Files

All data lives in `data/` and is updated daily:

```python
import json, pathlib

DATA = pathlib.Path("data")

# 44,000+ Truth Social posts
posts = json.loads((DATA / "trump_posts_all.json").read_text())

# Posts with signals pre-tagged
posts_lite = json.loads((DATA / "trump_posts_lite.json").read_text())

# 566 verified predictions with outcomes
predictions = json.loads((DATA / "predictions_log.json").read_text())

# 551 active rules (brute-force + evolved)
rules = json.loads((DATA / "surviving_rules.json").read_text())

# 384 features × 414 trading days
features = json.loads((DATA / "daily_features.json").read_text())

# S&P 500 OHLC history
market = json.loads((DATA / "market_SP500.json").read_text())

# Circuit breaker / system health
cb = json.loads((DATA / "circuit_breaker_state.json").read_text())

# Rule evolution log (crossover/mutation)
evo = json.loads((DATA / "evolution_log.json").read_text())
```

## Download Data via API

```python
import requests

BASE = "https://trumpcode.washinmura.jp"

# List available datasets
catalog = requests.get(f"{BASE}/api/data").json()

# Download a specific file
raw = requests.get(f"{BASE}/api/data/surviving_rules.json").content
rules = json.loads(raw)
```

## Real Code Examples

### Parse Today's Signals

```python
import requests

signals_data = requests.get("https://trumpcode.washinmura.jp/api/signals").json()

today = signals_data.get("today", {})
print("Signals fired today:", today.get("signals", []))
print("Consensus:", today.get("consensus"))        # "LONG" / "SHORT" / "NEUTRAL"
print("Confidence:", today.get("confidence"))      # 0.0–1.0
print("Active models:", today.get("active_models", []))
```

### Find Top Performing Rules from Surviving Rules

```python
import json

rules = json.loads(open("data/surviving_rules.json").read())

# Sort by hit rate descending
top_rules = sorted(rules, key=lambda r: r.get("hit_rate", 0), reverse=True)

for rule in top_rules[:10]:
    print(f"Rule: {rule['id']} | Hit Rate: {rule['hit_rate']:.1%} | "
          f"Trades: {rule['n_trades']} | Avg Return: {rule['avg_return']:.3%}")
```

### Check Prediction Market Opportunities

```python
import requests

arb = requests.get("https://trumpcode.washinmura.jp/api/insights").json()
markets = requests.get("https://trumpcode.washinmura.jp/api/polymarket-trump").json()

# Markets sorted by volume
active = [m for m in markets.get("markets", []) if m.get("active")]
by_volume = sorted(active, key=lambda m: m.get("volume", 0), reverse=True)

for m in by_volume[:5]:
    print(f"{m['title']}: YES={m['yes_price']:.0%} | Vol=${m['volume']:,.0f}")
```

### Correlate Post Features with Returns

```python
import json
import numpy as np

features = json.loads(open("data/daily_features.json").read())
market   = json.loads(open("data/market_SP500.json").read())

# Build date-indexed return map
returns = {d["date"]: d["close_pct"] for d in market}

# Example: correlate post_count with next-day return
xs, ys = [], []
for day in features:
    date = day["date"]
    if date in returns:
        xs.append(day.get("post_count", 0))
        ys.append(returns[date])

correlation = np.corrcoef(xs, ys)[0, 1]
print(f"Post count vs same-day return: r={correlation:.3f}")
```

### Run a Backtest on a Custom Signal

```python
import json

posts    = json.loads(open("data/trump_posts_lite.json").read())
market   = json.loads(open("data/market_SP500.json").read())

returns  = {d["date"]: d["close_pct"] for d in market}

# Find days with RELIEF signal before 9:30 AM ET
relief_days = [
    p["date"] for p in posts
    if "RELIEF" in p.get("signals", []) and p.get("hour", 24) < 9
]

hits = [returns[d] for d in relief_days if d in returns]
if hits:
    print(f"RELIEF pre-market: n={len(hits)}, "
          f"avg={sum(hits)/len(hits):.3%}, "
          f"hit_rate={sum(1 for h in hits if h > 0)/len(hits):.1%}")
```

## Key Signal Types

| Signal | Description | Typical Impact |
|--------|-------------|----------------|
| `RELIEF` pre-market | "Relief" language before 9:30 AM | Avg +1.12% same-day |
| `TARIFF` market hours | Tariff mention during trading | Avg -0.758% next day |
| `DEAL` | Deal/agreement language | 52.2% hit rate |
| `CHINA` (Truth Social only) | China mentions (never on X) | 1.5× weight boost |
| `SILENCE` | Zero-post day | 80% bullish, avg +0.409% |
| Burst → silence | Rapid posting then goes quiet | 65.3% LONG signal |

## Model Reference

| Model | Strategy | Hit Rate | Avg Return |
|-------|----------|----------|------------|
| A3 | Pre-market RELIEF → surge | 72.7% | +1.206% |
| D3 | Volume spike → panic bottom | 70.2% | +0.306% |
| D2 | Signature switch → formal statement | 70.0% | +0.472% |
| C1 | Burst → long silence → LONG | 65.3% | +0.145% |
| C3 ⚠️ | Late-night tariff (anti-indicator) | 37.5% | −0.414% |

> **Note:** C3 is an anti-indicator — if it fires, the circuit breaker auto-inverts it to LONG (62% accuracy after inversion).

## System Architecture Flow

```
Truth Social post detected (every 5 min)
    → Classify signals (RELIEF / TARIFF / DEAL / CHINA / etc.)
    → Dual-platform boost (TS-only China = 1.5× weight)
    → Snapshot Polymarket + S&P 500
    → Run 551 surviving rules → generate prediction
    → Track at 1h / 3h / 6h
    → Verify outcome → update rule weights
    → Circuit breaker: if system degrades → pause/invert
    → Daily: evolve rules (crossover / mutation / distillation)
    → Sync data to GitHub
```

## Troubleshooting

**`realtime_loop.py` not detecting new posts**
- Check your network access to Truth Social scraper endpoints
- Verify `data/trump_posts_all.json` timestamp is recent
- Run `python3 trump_code_cli.py health` to see circuit breaker state

**`chatbot_server.py` fails to start**
- Ensure `GEMINI_KEYS` env var is set: `export GEMINI_KEYS="key1,key2"`
- Port 8888 may be in use: `lsof -i :8888`

**`overnight_search.py` runs out of memory**
- Runs ~31.5M combinations — needs ~4GB RAM
- Run on a machine with 8GB+ or reduce search space in script config

**Hit rate dropping below 55%**
- Check `data/circuit_breaker_state.json` — system may have auto-paused
- Review `data/learning_report.json` for demoted rules
- Re-run `overnight_search.py` to refresh surviving rules

**Stale data in `data/` directory**
- Daily pipeline syncs to GitHub automatically if running
- Manually trigger: `python3 trump_code_cli.py report` to force refresh
- Or pull latest from remote: `git pull origin main`

Related Skills

polymarket-copy-trading-bot

22
from Aradotso/trending-skills

TypeScript bot that monitors a Polymarket wallet and mirrors BUY trades to your own account via the Polymarket CLOB API on Polygon.

polymarket-arbitrage-trading-bot

22
from Aradotso/trending-skills

Automated dump-and-hedge arbitrage trading bot for Polymarket's 15-minute crypto Up/Down markets, supporting BTC, ETH, SOL, and XRP.

polymarket-arbitrage-bot

22
from Aradotso/trending-skills

TypeScript bot implementing dump-and-hedge arbitrage strategy on Polymarket 15-minute Up/Down prediction markets with CLOB order execution and simulation mode.

oransim-causal-marketing-twin

22
from Aradotso/trending-skills

Causal digital twin for marketing simulation — predict campaign ROI, run counterfactual KOL swaps, and audit causal graphs before spending a dollar.

nothing-ever-happens-polymarket-bot

22
from Aradotso/trending-skills

Async Python bot for Polymarket that buys "No" on all standalone non-sports yes/no markets using the "nothing ever happens" strategy.

marketingskills-ai-agents

22
from Aradotso/trending-skills

Install and use Marketing Skills for AI agents — CRO, copywriting, SEO, analytics, and growth engineering skills for Claude Code and other coding agents.

```markdown

22
from Aradotso/trending-skills

---

zeroboot-vm-sandbox

22
from Aradotso/trending-skills

Sub-millisecond VM sandboxes for AI agents using copy-on-write KVM forking via Zeroboot

yourvpndead-vpn-detection

22
from Aradotso/trending-skills

Android app that detects VPN/proxy servers (VLESS/xray/sing-box) via local SOCKS5 vulnerability, exposing exit IPs and server configs without root

xata-postgres-platform

22
from Aradotso/trending-skills

Expert skill for Xata open-source cloud-native Postgres platform with copy-on-write branching, scale-to-zero, and Kubernetes deployment

x-mentor-skill-nuwa

22
from Aradotso/trending-skills

AI-powered X (Twitter) content strategy skill that distills methodologies from 6 top creators + open-source algorithm data into actionable writing, growth, and monetization guidance.

wx-favorites-report

22
from Aradotso/trending-skills

End-to-end pipeline to extract, decrypt, and visualize WeChat Mac favorites from encrypted SQLite DB into an interactive HTML report.