← Alle Insights

Agrar-Futures & Saisonalität: Wenn der Pflanzkalender den Markt bewegt.

Agrar-Futures sind eine der wenigen Asset-Klassen, in denen Saisonalität nicht nur ein statistisches Artefakt ist, sondern auf einem harten physischen Zyklus beruht. Mais, Soja, Weizen — alle drei haben Aussaat-, Wachstums- und Erntephasen, die Märkte systematisch in dieselben Muster zwingen. Wer diese Muster sauber modelliert und sie nicht naiv überschätzt, hat einen brauchbaren Edge in einem oft übersehenen Bereich.

Warum Saisonalität bei Agrar real ist.

An Aktien- und FX-Märkten sind Saisonmuster meist schwach und brüchig — Marktteilnehmer arbitrieren sie weg. Bei Agrar funktioniert das nur eingeschränkt, weil hinter dem Markt eine physische Realität steht, die sich nicht durch Algorithmen verschieben lässt. Im April pflanzen US-Farmer Mais. Im November ernten sie. Diese Termine sind weder verhandelbar noch arbitrierbar.

Daraus folgen wiederkehrende Angebots- und Nachfragemuster. Im Frühjahr ist die Unsicherheit über die kommende Ernte hoch — Wetter, Anbauflächen, Saatgut-Zustand sind unklar. Implizite Volatilität steigt, Preise reagieren nervös auf USDA-Reports. Im Herbst, wenn die Ernte sicher unter Dach ist, fallen Risikoprämien und Preise typischerweise nach.

Drei Quellen treiben die Saisonalität bei Mais (CBOT-Symbol ZC) besonders deutlich:

Erste Quelle: der Pflanzkalender. Aussaat in den USA von Mitte April bis Anfang Juni. Verzögerungen durch Regen drücken die erwartete Ernte und treiben Preise.

Zweite Quelle: die Pollination-Phase im Juli. Hitze und Trockenheit in dieser Phase reduzieren den Ertrag drastisch. Juli-Wetter ist der mit Abstand wichtigste Preistreiber des Jahres.

Dritte Quelle: Ernte im Oktober/November. Saisonales Tief bei erfolgreicher Ernte, weil Farmer ihre Lager-Limits erreichen und verkaufen müssen.

Saisonalität messen — sauber, nicht naiv.

Eine simple Saisonalitätsanalyse berechnet den durchschnittlichen Return pro Kalenderwoche über viele Jahre. Das Problem: 30 Jahre Daten ergeben 30 Beobachtungen pro Woche — viel zu wenig für robuste Statistik. Außerdem mischen Sie verschiedene Regimes (Pre-Ethanol, Post-Ethanol, Klimawandel-Effekte). Eine bessere Methode arbeitet mit Bootstrap-Confidence und Regime-Filtern.

import yfinance as yf
import pandas as pd
import numpy as np

mais = yf.download("ZC=F", start="2005-01-01")["Close"]
df = pd.DataFrame({"close": mais})
df["log_ret"] = np.log(df["close"]).diff()
df["week"] = df.index.isocalendar().week
df["year"] = df.index.year

# Wochenweise Statistik
weekly = df.groupby(["year", "week"])["log_ret"].sum().reset_index()
agg = weekly.groupby("week")["log_ret"].agg(["mean", "std", "count"])
agg["t_stat"] = agg["mean"] / (agg["std"] / np.sqrt(agg["count"]))

# Wochen mit |t-stat| > 2 sind statistisch auffällig
auffaellig = agg[abs(agg["t_stat"]) > 2]
print(auffaellig)

In meinen Backtests fallen typischerweise zwei Wochen ins Auge: die Woche um den USDA-WASDE-Report im Juli (oft negativer Return, weil bullische Erwartungen einpreist sind) und die erste Oktober-Woche (negativer Return, weil Erntedruck einsetzt).

Aber Achtung: Statistische Auffälligkeit über 20 Jahre heißt nicht, dass das nächste Jahr genauso läuft. Wer den USDA-Report dieses Jahr short geht, weil das in 14 von 20 Jahren funktioniert hat, hat eine 70%-Hit-Rate-Erwartung — und 6 von 20 Jahren ist es schiefgegangen. Das ist kein „free money".

Das WASDE als Markt-Trigger.

Der USDA-Weltlandwirtschafts-Schätzungsreport (WASDE) erscheint monatlich, meist zwischen dem 8. und 12. Auf einer Seite stehen Anbauflächen, Erträge, Lagerbestände und Verbrauch für die wichtigsten Agrar-Commodities. Innerhalb von Sekunden nach Veröffentlichung bewegen sich Mais, Soja und Weizen oft um 3-8%.

Eine systematische Idee: Nach dem WASDE-Release kann man Mean-Reversion auf Überreaktionen handeln. Wenn Mais nach dem Report mehr als 4% gefallen ist und der Folgewochen-Trend weiterhin negativ ist, ist die Hit-Rate für eine technische Gegenbewegung in den nächsten 5-10 Handelstagen historisch erhöht.

# WASDE-Termine als Datums-Vektor (Beispiel, real aus USDA-Kalender ziehen)
wasde_dates = pd.to_datetime([
    "2024-01-12", "2024-02-08", "2024-03-08", "2024-04-11",
    "2024-05-10", "2024-06-12", "2024-07-12", "2024-08-12",
    "2024-09-12", "2024-10-11", "2024-11-08", "2024-12-10",
])

# Reaktions-Tag und Folgereturn 10 Tage
results = []
for d in wasde_dates:
    if d not in df.index:
        continue
    reaktion = df["log_ret"].loc[d]
    folge = df["log_ret"].loc[d:].iloc[1:11].sum()
    results.append({"date": d, "reaktion": reaktion, "folge_10d": folge})

res_df = pd.DataFrame(results)
print(res_df)
print(f"Korrelation Reaktion vs. Folge: {res_df['reaktion'].corr(res_df['folge_10d']):.2f}")

Ich finde in meinen längeren Datensätzen eine negative Korrelation zwischen Reaktionstag und Folgewoche von etwa -0,2 bis -0,3. Klein, aber statistisch signifikant — und genug für ein systematisches Setup mit definiertem Risk-Management.

Soja-Crush-Spread und Wheat-Corn-Spread.

Über die reinen Preis-Saisonen hinaus haben Agrar-Märkte auch Spread-Saisonen.

Soja-Crush-Spread: Sojabohnen werden zu Sojaöl und Sojaschrot verarbeitet. Der Crush-Spread misst die Marge der Verarbeiter: Erlös aus Öl + Schrot minus Bohnenkosten. Hoher Crush bedeutet Verarbeitungs-Anreiz, hohe Nachfrage nach Bohnen. Saisonal ist der Crush in den USA typisch im Spätherbst hoch (Ernte gerade rein, Verarbeitung anlaufen), im Sommer niedrig.

Wheat-Corn-Spread: Mais und Weizen ersetzen sich teilweise in der Futtermittelproduktion. Wenn Mais relativ teuer wird, schichten Futtermittelhersteller auf Weizen um. Der Spread Weizen-Mais hat historisch eine eigene Mean-Reversion-Eigenschaft mit langer Half-Life (mehrere Monate).

Vehikel und Praxis.

Agrar-Futures handeln Sie an der CBOT (Chicago Board of Trade, Teil der CME-Gruppe). Kontraktgrößen: Mais 5.000 Bushel, Soja 5.000 Bushel, Weizen 5.000 Bushel. Bei aktuellen Preisen entspricht das pro Kontrakt etwa 20.000-30.000 USD Notional. Mini- und Micro-Kontrakte sind verfügbar (z.B. XK für Mini-Soja), für kleinere Konten oft die bessere Wahl.

ETFs auf Agrar (z.B. CORN, SOYB, WEAT in den USA, WisdomTree-Produkte in Europa) sind für mittelfristige Saisonsetups akzeptabel, aber wegen Roll-Logik (Contango-Frust) für längere Holdings ungünstig. Wer den Crush-Spread oder Wheat-Corn-Spread sauber bauen will, geht über Futures.

Risiken, die viele unterschätzen.

Erstens: Wetter-Schocks. Eine zwei Wochen lange Hitzewelle im US-Midwest im Juli kann Mais um 20% bewegen — gegen jede Saisonalität. Wer im Juli short Mais ist „weil saisonal", hat schon mehrere Trader ruiniert.

Zweitens: Politik. US-Exportbeschränkungen, China-Importe, Argentinien- Steuern, Russland-Ukraine-Konflikt — Agrar ist hochgradig politisch. Jeder dieser Hebel kann eine eigentlich saubere saisonale Bewegung kippen.

Drittens: Margin-Anforderungen. Agrar-Futures haben in volatilen Phasen sehr hohe Margin (oft 10-15% des Notionals). Kapitaleffizienz ist niedriger als bei FX oder Aktien-Futures.

Viertens: Klimawandel. Historische Saisonmuster verschieben sich langsam, weil Anbauzonen wandern und Wetterextreme häufiger werden. 30 Jahre alte Saisondaten unkritisch verwenden ist heute riskanter als noch vor 10 Jahren.

Mein praktischer Zugang.

Ich handele Agrar-Saisonalitäten als Beimischung, nicht als Haupt-Strategie. Typisch sind 2-3 Positionen pro Jahr: eine Pre-WASDE-Volatilitäts-Position (Call-Spreads vor dem Juli-Report), eine Erntedruck-Short-Position in Mais von Mitte September bis Mitte Oktober, und gelegentlich Wheat-Corn-Spread, wenn die Ratio extreme Z-Scores zeigt.

Wichtig ist die Disziplin, das Setup nicht zu „rationalisieren": Wenn ich die Saison-Short-Position habe und Mais bullisch ausbricht, gilt der Stop. Saisonalität ist statistisch — sie ist kein Versprechen.

Sie interessieren sich für Diversifikation über Agrar-Spreads? Erstgespräch buchen — ich zeige, welche Setups sich für Ihr Profil lohnen.