Metadata-Version: 2.4
Name: crowdwisdomtrading
Version: 0.2.1
Summary: Crowd sentiment from thousands of pro traders for stocks, crypto, futures and FX: free daily and weekly ProCrowdSentimentScore, plus predictions and CrowdMap levels, pay per call.
Author: CrowdWisdom Trading
License: MIT
Project-URL: Homepage, https://crowdwisdomtrading.com/x402?utm_source=pypi&utm_medium=package&utm_campaign=crowdwisdomtrading
Project-URL: Catalog, https://api.crowdwisdomtrading.com/x402/catalog
Project-URL: Docs, https://api.crowdwisdomtrading.com/docs
Keywords: crowd sentiment,trading,stocks,crypto,forex,futures,market data,x402,pay per call,ai agents
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Topic :: Office/Business :: Financial :: Investment
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: Intended Audience :: Developers
Classifier: Development Status :: 4 - Beta
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: requests>=2.31
Provides-Extra: x402
Requires-Dist: x402[evm,requests]>=2.26; extra == "x402"
Requires-Dist: eth-account>=0.13; extra == "x402"
Provides-Extra: aihf
Requires-Dist: aihf>=2.7; extra == "aihf"
Provides-Extra: dev
Requires-Dist: pytest>=8; extra == "dev"
Requires-Dist: build; extra == "dev"
Requires-Dist: twine; extra == "dev"

# crowdwisdomtrading

**What thousands of pro traders think about any ticker, in one number.**

Every day [CrowdWisdom Trading](https://crowdwisdomtrading.com/x402?utm_source=pypi&utm_medium=readme&utm_campaign=crowdwisdomtrading)
reads what pro traders say on YouTube, X, StockTwits, Reddit, broker platforms, podcasts and newsletters, and turns
it into a **ProCrowdSentimentScore** from -100 (everyone short) to +100 (everyone long), with **ProTraders**: how many
distinct traders stand behind it.

Covers **US stocks and ETFs, crypto, futures, indices and FX**. Daily and weekly. Start free, no account, no key.

```bash
pip install crowdwisdomtrading
```

```python
from crowdwisdomtrading import Client

c = Client()
c.daily_sentiment("NVDA")      # free: today's crowd score
c.weekly_sentiment("BTC-USD")  # free: this week's
```

```json
{"ticker": "NVDA", "cycle": "daily", "date": "2026-11-06",
 "ProCrowdSentimentScore": 26.5, "ProTraders": 1746}
```

## Free and paid

| Call | Price | What you get |
|---|---|---|
| `daily_sentiment(ticker)` | **free** | today's `ProCrowdSentimentScore` and `ProTraders` (`low_coverage` when fewer than 10 traders) |
| `weekly_sentiment(ticker)` | **free** | the same for the week |
| `sample()` | **free** | one real crowd prediction, at least 7 days old |
| `catalog()` | **free** | every call, price and field |
| `consensus(ticker)` | $0.10 | direction, confidence, the score and trader count per source, versus the ticker's own past, any past date (`as_of`) |
| `setup_latest(ticker)` | $0.50 | the crowd's prediction: direction, entry, 2 targets, 2 stops, confidence, risk/reward |
| `setups_today()` | $10.00 | every prediction of the day |
| `crowdmap(ticker)` | $0.30 | CrowdMap: the crowd's support / resistance levels with how many traders named each |
| `history(ticker, from, to)` | $0.10 | past predictions as published at the time (backtest-safe) |

Free calls: 50 a day per IP address for each. Tickers: `AAPL`, `NVDA`, `BTC-USD`, `GC=F`, `^SPX`, `EURUSD=X`, ...

## Paying per call (no account)

Paid calls use [x402](https://x402.org): the API states the price, the package pays it in USDC on Base and returns
the data with a receipt. No sign-up, no API key, a failed call is never charged.

```bash
pip install "crowdwisdomtrading[x402]"
export X402_WALLET_PRIVATE_KEY=0x...    # a wallet with a few dollars of USDC on Base
```

```python
c = Client()
c.consensus("AAPL")            # $0.10
c.setup_latest("AAPL")         # $0.50
c.crowdmap("AAPL")             # $0.30
c.last_receipt                 # {"transaction": "0x...", "network": "eip155:8453", ...}
```

Monthly plan customers use their key instead (`CWT_API_KEY=cwt_live_...`); a key always wins over a wallet.
Fund the wallet with small amounts: the package pays only the quoted price.

## More

```python
c.consensus("NVDA", as_of="2026-11-04")        # the crowd as it was on that day
c.history("NVDA", "2026-10-01", "2026-10-31")  # only predictions published by the end date
```

Answers for past dates are cached on disk (`~/.crowdwisdomtrading/cache`), so a backtest pays once per ticker and day;
live answers are cached for 10 minutes. `Client(cache=False)` turns it off.

Command line:

```bash
crowdwisdomtrading daily NVDA
crowdwisdomtrading weekly BTC-USD
crowdwisdomtrading catalog
```

## Integrations

**virattt/ai-hedge-fund**: a ready crowd-sentiment model. `pip install "crowdwisdomtrading[aihf]"`, then

```python
from crowdwisdomtrading.aihf import CrowdConsensusModel
ALPHA_MODEL_REGISTRY["crowd"] = CrowdConsensusModel
```

It returns a signal from -1 to +1 per ticker and date, never looks at data after that date, and abstains when the
crowd data is older than 10 days.

## Links and notes

- Docs, prices and plans: https://crowdwisdomtrading.com/x402?utm_source=pypi&utm_medium=readme&utm_campaign=crowdwisdomtrading
- Live price list: https://api.crowdwisdomtrading.com/x402/catalog
- Aggregated crowd opinion for research. Not investment advice. Payments are final; a failed call is not charged.
