Skip to main content

Nephyr Weather

Weather signal intelligence for prediction markets.

Fetches 31-member GFS ensemble forecasts from Open-Meteo and compares model probabilities against live market prices on Polymarket and Kalshi to detect tradeable edges.

Install

pip install nephyr-weather          # core + httpx
pip install "nephyr-weather[mcp]"   # + MCP server
pip install "nephyr-weather[api]"   # + FastAPI REST server
pip install "nephyr-weather[all]"   # everything

Quick start

import asyncio
from nephyr_weather import OpenMeteoClient, signal_from_forecast, MarketInfo, detect_edge

async def main():
    # 1. Fetch GFS ensemble forecast
    async with OpenMeteoClient() as client:
        forecast = await client.fetch_ensemble("NYC", "2026-03-29")

    # 2. Generate probability signal
    signal = signal_from_forecast(forecast, threshold_f=75.0, direction="above")
    print(f"Model P(NYC high > 75°F): {signal.model_probability:.1%}")

    # 3. Compare to market price
    market = MarketInfo(
        platform="kalshi",
        ticker="KXHIGHNY-26MAR29-T75",
        city="NYC",
        threshold_f=75.0,
        direction="above",
        market_price=0.55,
    )
    result = detect_edge(signal, market)
    print(f"Edge: {result.edge:+.1%}, EV: {result.ev:.4f}, Tradeable: {result.is_tradeable}")

asyncio.run(main())

Supported cities

NYC, Chicago, Miami, Austin, LA, Denver, Boston, London, Seoul, Shanghai, Hong Kong, Atlanta

Modules

Module Purpose
cities City coordinates + name normalisation
ensemble Open-Meteo GFS client, temperature utils
signals Probability calculations from ensemble arrays
markets Polymarket + Kalshi weather market discovery
edge Edge detection, EV calculation
types Public dataclasses

MCP server

nephyr-weather-mcp

Tools: get_weather_signals, get_ensemble_forecast, detect_edges, list_active_markets, get_city_info

REST API

uvicorn api.app:app --reload

Endpoints: POST /v1/signals, POST /v1/forecast, POST /v1/edges, GET /v1/markets, GET /v1/cities, GET /v1/health

Pricing

Tier Details
Free 10 signals/day (one city)
Paid $49/month — all 12 cities, unlimited calls
Enterprise $499/month — custom cities, SLA, dedicated support
Agent-to-agent $0.01/signal

License

MIT — CLM Studios

Metadata

Release files for nephyr-weather 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nephyr-weather 0.1.1
File Size Uploaded
nephyr_weather-0.1.1.tar.gz 37.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for nephyr-weather 0.1.1
File Interpreter ABI Platform
nephyr_weather-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 60.4 kB

Release files / nephyr_weather-0.1.1.tar.gz

Download URL nephyr_weather-0.1.1.tar.gz
Size 37.0 kB
Tags Source
SHA-256 checksum
How to use checksums
74b8f20a4057eef310b89cfb7e1ee9bffd542a1b179f0d8b77f713869c6fb882
BLAKE2b-256 checksum
How to use checksums
3cd4b79a2690a61b0dca6947dc710d9c9d79bc60a1ac81e40126e7a65962af56
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.3

Release files / nephyr_weather-0.1.1-py3-none-any.whl

Download URL nephyr_weather-0.1.1-py3-none-any.whl
Size 23.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
57c69bd406646aa4763f109519fb42b6b59430a06a25b5cff330015905113fb2
BLAKE2b-256 checksum
How to use checksums
f685370a7eef7088566e28e2ab055620bba94332f9fc59f92143af80cf824562
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.3

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page