You are browsing as a guest. Sign up (or log in) to start making projects!

STARVEST

  • 1 Devlogs
  • 9 Total hours

A satellite-driven trading signal for OJ futures, using NASA MODIS imagery to measure Florida orange grove health and predict price direction.

Ship #1 Changes requested

What did you make?
Starvest is a satellite-driven trading signal for Frozen Concentrated Orange Juice (FCOJ) futures. It pulls 20 years of NASA MODIS satellite imagery to measure the health of Florida's orange groves every January through March, then issues a directional prediction on OJ futures before the April expiry. The dashboard shows the full backtest, NDVI trend, yield vs. price history, and the current 2026 signal (LONG).

What was challenging?
Cleaning and aligning six independent data sources (NASA satellite data via Google Earth Engine, USDA crop stats, ICE futures prices, NOAA weather records, and Brazil production data) across 20 years without gaps or mismatches. Florida's orange industry has shrunk 69% since 2005 due to citrus greening disease, so the signal had to account for a structurally collapsing baseline, not just year-to-year weather noise.

What are you proud of?
The backtest hits 62% directional accuracy (13/21 years) using only publicly available NASA data, no proprietary feeds. The whole pipeline runs on free APIs and the dashboard works without any setup for the judge.

What should people know so they can test your project?
The live dashboard is deployed and requires no setup, just click the link. If you want to run it locally, clone the repo and run streamlit run dashboard/app.py. The pre-built CSV is included so no API keys are needed.

  • 1 devlog
  • 9h
Try project → See source code →
Open comments for this post

9h 12m 50s logged

Started with a question: can you predict whether OJ futures will go up or down before the harvest, using only satellite data? Built a full data pipeline pulling NASA MODIS MOD13Q1 satellite imagery (250m resolution) over the Florida citrus belt every January through March via Google Earth Engine. The core signal is NDVI surprise, how much greener or browner the groves are compared to their 3-year rolling average. Brown groves = stressed trees = lower yield = price goes up.Added five more data sources on top: USDA NASS for Florida orange production and bearing acreage, ICE OJ futures prices via yfinance, NOAA GHCN-Daily for hard freeze days and rainfall, and USDA FAS for Brazil production as a global supply check.Built a Streamlit dashboard with 6 tabs: Overview, NDVI Trend, Yield vs Price, Backtest, Signal, and Glossary. The Backtest tab lets you adjust a threshold slider and see cumulative P&L, hit rate, and a 3-tier signal comparison (NDVI only, plus Brazil confirmation, plus drought confirmation).Backtested across 2005 to 2025: 62% directional accuracy (13/21 years correct). Most commodity price prediction models rely on historical price patterns or economic indicators and typically land around 52 to 54% directional accuracy on out-of-sample data. Starvest gets its edge from reading the physical world directly via satellite before the supply shock shows up in any price data. The signal is issued in March, months before the market fully prices in the harvest outcome.The 2026 forward signal is LONG. Hard freeze in January (24.1°F, 2 days) plus drought stress pushed NDVI surprise to -0.0423. Outcome resolves in September.

0
0
14

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…