Strasmore Research
Lernen Matt ConnorVon Matt Connor

Risikofreier Zinssatz in der Sharpe-Ratio

Der risikofreie Zinssatz verändert sich. So ordnen Sie die Treasury-Bill-Rendite Ihrer Renditefrequenz zu und erkennen, was ein fixer Satz verfälscht.

Der risikofreie Zinssatz in der Sharpe-Ratio ist die Rendite, die Sie im selben Zeitraum ohne das Risiko hätten erzielen können, das Sie bewerten. Er ist eine Zeitreihe mit einem Wert pro Periode und wird in der Währung der Renditen angegeben. Stimmen Sie seine Frequenz auf die Renditefrequenz ab und ziehen Sie ihn periodengleich ab. Die Annualisierung erfolgt erst am Ende.

Wer dieses Vorgehen auslässt, produziert den häufigsten Fehler bei veröffentlichten Sharpe-Ratios. Wird aus einer zwanzigjährigen Renditehistorie nur ein einziger Wert verwendet – meist der aktuelle Zinssatz für Treasury Bills –, gilt für 2009 dieselbe Hürde wie für 2024. Unser Leitfaden zur Sharpe-Ratio erläutert, was die Kennzahl misst. Diese Seite behandelt den Input, den fast niemand dokumentiert.

Der risikofreie Zinssatz ist nicht konstant

Eine über zwanzig Jahre gemessene Sharpe-Ratio umfasst eine Zinshistorie. Die folgende Grafik nimmt die dreimonatige Treasury Bill und fasst jedes Kalenderjahr als Durchschnitt und als Schwankungsbreite zusammen.

AbfrageRendite dreimonatiger Treasury Bills nach Kalenderjahr
Das exakte SQL hinter jeder Zahl
SELECT
    toString(toYear(date))                  AS year,
    round(avg(toFloat64(yield_3_month)), 2) AS avg_bill_pct,
    round(min(toFloat64(yield_3_month)), 2) AS low_bill_pct,
    round(max(toFloat64(yield_3_month)), 2) AS high_bill_pct
FROM global_markets.treasury_yields
WHERE date >= '2005-01-01'
  AND yield_3_month IS NOT NULL
GROUP BY year
ORDER BY year
Run this yourself

Der Jahresdurchschnitt lag bei 3.22% in 2005 und bei 3.74% in 2026, über 22 Kalenderjahre hinweg. Entscheidend ist der Verlauf zwischen diesen beiden Werten. Die Linie fällt auf null, bleibt dort fast ein Jahrzehnt und steigt anschließend wieder. Die Spalten für Tiefst- und Höchstwerte zeigen, wie weit sich der Zinssatz innerhalb einzelner Jahre bewegte. Deshalb benötigt selbst eine einjährige Sharpe-Ratio eine passende Zeitreihe statt eines einzelnen Kurses.

Welcher risikofreie Zinssatz gehört in die Sharpe-Ratio?

Vier Eigenschaften bestimmen die Auswahl.

  1. Kurze Laufzeit. Der Zinssatz muss über eine Messperiode nahezu sicher sein. Eine dreimonatige Treasury Bill eignet sich für monatliche Berechnungen. Eine zehnjährige Treasury Note nicht, weil sich ihr Kurs während des gemessenen Monats verändert.
  2. Die Währung der Rendite. Eine in Euro denominierte Strategie wird mit einer Euro-Anlage verglichen.
  3. Die Frequenz der Rendite. Die Rendite von Treasury Bills wird als Jahresrate angegeben. Eine Jahresrate muss daher umgerechnet werden, bevor sie mit einer Monatsrendite verrechnet wird.
  4. Vergleichbare Renditedefinitionen auf beiden Seiten. Die Rendite einer Treasury Bill umfasst den gesamten Ertrag. Eine Strategierendite ohne Dividenden wird daher nicht auf derselben Grundlage gemessen. Kursrendite und Gesamtrendite behandelt diesen Unterschied.

Für die Umrechnung aus Punkt drei sind zwei Konventionen gebräuchlich. Bei der einfachen Division wird die Jahresrate durch zwölf geteilt. Bei der Aufzinsung wird die zwölfte Wurzel aus eins plus der Jahresrate gezogen. Bei einer hypothetischen Treasury-Bill-Rendite von 5 % ergeben sich für den Monat 0,4167 % beziehungsweise 0,4074 %. Das entspricht etwa einem Basispunkt Unterschied, der sich in jedem Monat der Stichprobe wiederholt. Die Grafiken hier verwenden die Aufzinsung. Wenn Sie die Treasury-Bill-Rendite als Anlageertrag und nicht als Vergleichshürde betrachten, behandeln Dividendenrendite und Treasury-Renditen sowie wo Sie ungenutztes Bargeld parken dieses Thema.

So wird eine monatliche Überschussrendite-Zeitreihe erstellt

Die Berechnung ist mechanisch: Nehmen Sie den letzten Schlusskurs jedes Monats, berechnen Sie die Monatsrendite, wandeln Sie den Treasury-Bill-Kurs dieses Monats in eine Monatsrate um und ziehen Sie diese ab. Das Ergebnis ist eine Überschussrendite-Zeitreihe mit einem Wert pro Monat. So werden Monatsrenditen gemessen behandelt den Renditetrakt im Detail.

AbfrageMonatliche Rendite, monatlicher risikofreier Zinssatz und Überschussrendite, 2020 bis 2024
Das exakte SQL hinter jeder Zahl
WITH
    monthly_px AS
    (
        SELECT
            toStartOfMonth(date)           AS m,
            argMax(toFloat64(close), date) AS month_close
        FROM global_markets.stocks_daily_aggs
        WHERE ticker = 'SPY'
          AND date >= '2019-12-01'
          AND date <  '2025-01-01'
        GROUP BY m
    ),
    prior_px AS
    (
        SELECT
            addMonths(m, 1) AS m,
            month_close     AS prev_close
        FROM monthly_px
    ),
    monthly_rf AS
    (
        SELECT
            toStartOfMonth(date)                                       AS m,
            pow(1 + avg(toFloat64(yield_3_month)) / 100, 1.0 / 12) - 1 AS rf_month
        FROM global_markets.treasury_yields
        WHERE date >= '2019-12-01'
          AND date <  '2025-01-01'
          AND yield_3_month IS NOT NULL
        GROUP BY m
    )
SELECT
    toString(cur.m)                                                      AS month,
    round(100 * (cur.month_close / prv.prev_close - 1), 2)               AS spy_ret_pct,
    round(100 * rf.rf_month, 3)                                          AS rf_pct,
    round(100 * (cur.month_close / prv.prev_close - 1 - rf.rf_month), 2) AS excess_pct
FROM monthly_px AS cur
INNER JOIN prior_px AS prv ON prv.m = cur.m
INNER JOIN monthly_rf AS rf ON rf.m = cur.m
ORDER BY cur.m
Run this yourself

Es handelt sich um SPY-Schlusskurse. Die Renditespalte ist daher eine Kursrendite ohne Dividenden. Die risikofreie Spalte beginnt im ersten dargestellten Monat bei 0.128% und endet bei 0.359%. Neben Aktienmonaten mit Schwankungen von mehreren Prozent wirkt die risikofreie Reihe wie Rundungsrauschen. Über 60 Monate der Subtraktion hinweg bestimmt sie jedoch den gesamten Unterschied zwischen zwei Sharpe-Ratios, die angeblich dasselbe messen.

Erst abziehen, dann annualisieren

Sobald die Zeitreihen ausgerichtet sind, gibt es zwei mögliche Rechenreihenfolgen. Sie liefern unterschiedliche Ergebnisse. Bei „erst Überschussrendite“ wird die Monatsrate von der Monatsrendite abgezogen. Anschließend wird die Überschussrendite-Zeitreihe annualisiert. Bei „erst annualisieren“ werden die Renditen zu einem Jahreswert aufgezinst, die Treasury-Bill-Rendite wird ebenfalls zu einem Jahreswert aufgezinst, und anschließend wird die eine von der anderen abgezogen.

AbfrageAnnualisierte Risikoprämie: monatliche Werte subtrahieren oder jede Komponente zuerst annualisieren
Das exakte SQL hinter jeder Zahl
WITH
    monthly_px AS
    (
        SELECT
            toStartOfMonth(date)           AS m,
            argMax(toFloat64(close), date) AS month_close
        FROM global_markets.stocks_daily_aggs
        WHERE ticker = 'SPY'
          AND date >= '2004-12-01'
          AND date <  '2025-01-01'
        GROUP BY m
    ),
    prior_px AS
    (
        SELECT
            addMonths(m, 1) AS m,
            month_close     AS prev_close
        FROM monthly_px
    ),
    monthly_rf AS
    (
        SELECT
            toStartOfMonth(date)                                       AS m,
            pow(1 + avg(toFloat64(yield_3_month)) / 100, 1.0 / 12) - 1 AS rf_month
        FROM global_markets.treasury_yields
        WHERE date >= '2004-12-01'
          AND date <  '2025-01-01'
          AND yield_3_month IS NOT NULL
        GROUP BY m
    ),
    excess AS
    (
        SELECT
            cur.m                                             AS m,
            cur.month_close / prv.prev_close - 1              AS ret,
            rf.rf_month                                       AS rf_month,
            cur.month_close / prv.prev_close - 1 - rf.rf_month AS exc
        FROM monthly_px AS cur
        INNER JOIN prior_px AS prv ON prv.m = cur.m
        INNER JOIN monthly_rf AS rf ON rf.m = cur.m
    )
SELECT
    concat(toString(intDiv(count(), 12)), '-year')            AS horizon,
    round(100 * (exp(12 * avg(log(1 + exc))) - 1), 2)         AS excess_first_pct,
    round(100 * ((exp(12 * avg(log(1 + ret))) - 1)
               - (exp(12 * avg(log(1 + rf_month))) - 1)), 2)  AS annualize_first_pct,
    round(100 * ((exp(12 * avg(log(1 + ret))) - 1)
               - (exp(12 * avg(log(1 + rf_month))) - 1)
               - (exp(12 * avg(log(1 + exc))) - 1)), 3)       AS gap_pct
FROM excess
CROSS JOIN (SELECT arrayJoin([1, 3, 5, 10, 20]) AS years) AS hz
WHERE m >= subtractYears(toDate('2025-01-01'), years)
GROUP BY years
ORDER BY years
Run this yourself

Über den Zeitraum von 20-year beträgt das Ergebnis bei der Überschussrendite-Methode 6.49% pro Jahr, bei der anderen Reihenfolge 6.59%. Die Differenz liegt bei 0.099 Prozentpunkten. Über den Zeitraum von 1-year liegen die beiden Berechnungen 0.814 Punkte auseinander. In jeder hier dargestellten Periode liegt der Wert bei der Annualisierung vor der Subtraktion über dem Wert bei der Subtraktion vor der Annualisierung. Der Unterschied entsteht durch einen Kreuzterm: Wird eine Renditezeitreihe zu einem Jahreswert aufgezinst, wird die Treasury-Bill-Rendite zusätzlich auf die Risikoprämie verdient. Wird danach eine annualisierte Treasury-Bill-Rendite abgezogen, wird dieser Anteil nicht wieder herausgerechnet. Der Kreuzterm steigt mit dem Produkt der beiden annualisierten Werte. Er ist daher am größten, wenn Treasury Bills hohe Renditen abwerfen.

Auch bei der Annualisierung gibt es zwei Ansätze. Die arithmetische Annualisierung multipliziert die durchschnittliche monatliche Überschussrendite mit zwölf. Die geometrische Annualisierung zinst auf. Sie ermittelt die konstante Jahresrate, die dasselbe kumulierte Ergebnis erzeugt. Nehmen Sie eine hypothetische Abfolge von zwei Perioden mit zunächst +50 % und anschließend -33,3 %. Sie endet genau am Ausgangspunkt. Der arithmetische Durchschnitt beträgt +8,35 % pro Periode, der geometrische Durchschnitt null. Die Grafiken hier verwenden die Aufzinsung. Eine wichtige Anmerkung: Bei arithmetischer Annualisierung ist das Zwölffache der durchschnittlichen Rendite minus das Zwölffache der durchschnittlichen Treasury-Bill-Rendite algebraisch identisch mit dem Zwölffachen der durchschnittlichen Überschussrendite. Unter dieser Konvention bleibt der Zähler unabhängig von der Reihenfolge der Subtraktion. Der Nenner verändert sich jedoch, weil die Standardabweichung der Überschussrenditen von der Standardabweichung der Roh-Renditen abweicht, sobald sich der Zinssatz selbst verändert.

Was ein konstanter Zinssatz mit dem Ergebnis macht

Die übliche Abkürzung besteht darin, die aktuelle Treasury-Bill-Rendite zu nehmen und sie von jeder historischen Periode abzuziehen. Die folgende Grafik berechnet die Sharpe-Ratio über fünf Zeiträume mit demselben Enddatum auf zwei Arten: einmal anhand der passenden monatlichen Zeitreihe und einmal anhand der am Ende des jeweiligen Zeitraums geltenden Treasury-Bill-Rendite.

AbfrageSharpe-Ratio einer abgestimmten Zinssatzreihe gegenüber einem festen Zinssatz
Das exakte SQL hinter jeder Zahl
WITH
    monthly_px AS
    (
        SELECT
            toStartOfMonth(date)           AS m,
            argMax(toFloat64(close), date) AS month_close
        FROM global_markets.stocks_daily_aggs
        WHERE ticker = 'SPY'
          AND date >= '2004-12-01'
          AND date <  '2025-01-01'
        GROUP BY m
    ),
    prior_px AS
    (
        SELECT
            addMonths(m, 1) AS m,
            month_close     AS prev_close
        FROM monthly_px
    ),
    monthly_rf AS
    (
        SELECT
            toStartOfMonth(date)                                       AS m,
            pow(1 + avg(toFloat64(yield_3_month)) / 100, 1.0 / 12) - 1 AS rf_month
        FROM global_markets.treasury_yields
        WHERE date >= '2004-12-01'
          AND date <  '2025-01-01'
          AND yield_3_month IS NOT NULL
        GROUP BY m
    ),
    excess AS
    (
        SELECT
            cur.m                                AS m,
            cur.month_close / prv.prev_close - 1 AS ret,
            rf.rf_month                          AS rf_month
        FROM monthly_px AS cur
        INNER JOIN prior_px AS prv ON prv.m = cur.m
        INNER JOIN monthly_rf AS rf ON rf.m = cur.m
    )
SELECT
    concat(toString(intDiv(count(), 12)), '-year')                             AS horizon,
    round(sqrt(12) * avg(ret - rf_month) / stddevSamp(ret - rf_month), 2)      AS sharpe_matched_rf,
    round(sqrt(12) * avg(ret - rf_fixed) / stddevSamp(ret - rf_fixed), 2)      AS sharpe_fixed_rf,
    round(abs(sqrt(12) * avg(ret - rf_month) / stddevSamp(ret - rf_month)
            - sqrt(12) * avg(ret - rf_fixed) / stddevSamp(ret - rf_fixed)), 2) AS abs_gap
FROM excess
CROSS JOIN
(
    SELECT pow(1 + avg(toFloat64(yield_3_month)) / 100, 1.0 / 12) - 1 AS rf_fixed
    FROM global_markets.treasury_yields
    WHERE date >= '2024-12-01'
      AND date <  '2025-01-01'
      AND yield_3_month IS NOT NULL
) AS fixed_rate
CROSS JOIN (SELECT arrayJoin([1, 3, 5, 10, 20]) AS years) AS hz
WHERE m >= subtractYears(toDate('2025-01-01'), years)
GROUP BY years
ORDER BY years
Run this yourself

Über den Zeitraum von 1-year liegen die beiden Werte 0.07 auseinander. Über zwölf Monate kann sich der konstante Zinssatz nur begrenzt vom Durchschnitt dieses Zeitraums entfernen. Über den Zeitraum von 20-year beträgt die Differenz 0.18: 0.49 bei der passenden Zeitreihe gegenüber 0.32 beim konstanten Zinssatz. Der Fehler folgt dem Abstand zwischen dem gewählten Einzelwert und dem tatsächlich geltenden Durchschnittszinssatz. Mit zunehmender Länge des Zeitraums kann sich dieser Abstand stärker vergrößern. Alle nachgelagerten Kennzahlen übernehmen diesen Fehler. Volatilitätssteuerung und Positionsgrößen verwendet genau solche Inputs.

Die Währungsfalle

Eine Strategie, die in einer Währung Erträge erzielt und mit der Treasury-Bill-Rendite einer anderen Währung bewertet wird, produziert eine Kennzahl, die in keiner der beiden Währungen sinnvoll ist. Berechnen Sie die Überschussrendite innerhalb einer Währung: Euro-Renditen gegenüber einer Euro-Anlage, Yen-Renditen gegenüber einer Yen-Anlage. Bei währungsgesicherten Strategien gibt es eine weitere Falle. Ein Währungshedge wird über den Forward bewertet. Forward-Punkte liegen nahe an der Zinsdifferenz zwischen den beiden Währungen. Damit ist ein Teil des inländischen Zinssatzes bereits in einer währungsgesicherten ausländischen Rendite enthalten. Wird zusätzlich die ausländische Treasury-Bill-Rendite abgezogen, wird derselbe Zinssatz doppelt berücksichtigt. Nennen Sie die Währung neben dem Zinssatz, beseitigen Sie diese Unklarheit.

Veröffentlichen Sie den Zinssatz zusammen mit der Kennzahl

Eine Sharpe-Ratio ohne Angabe der Quelle und Frequenz des risikofreien Zinssatzes kann niemand überprüfen. Zwei Trading Desks können aus derselben Renditezeitreihe Werte von 0,8 und 1,1 berechnen und beide richtig liegen, wenn sie unterschiedliche Zinszeitreihen und Umrechnungskonventionen verwenden. Vier Angaben gehören zu jeder Kennzahl: das Instrument, aus dem der Zinssatz stammt, seine Frequenz, die Umrechnungskonvention und der genaue Zeitraum. Das ist der Unterschied zwischen einer Kennzahl, die ein Leser prüfen kann, und einer Kennzahl, die er einfach hinnehmen muss.

Datenhinweise und Reproduzierbarkeit

Die Zinszeitreihe in jeder Grafik stammt aus der dreimonatigen Treasury Bill der täglichen Treasury-Renditekurve. Sie wird innerhalb jedes Kalendermonats gemittelt und als zwölfte Wurzel aus eins plus der Jahresrate in eine Monatsrate umgerechnet. Die Renditen basieren auf den Monatsend-Schlusskursen von SPY und sind reine Kursrenditen ohne Dividenden. Die Berechnungen verwenden die Stichprobenstandardabweichung der monatlichen Überschussrenditen und die Quadratwurzel aus zwölf zur Annualisierung. Die letzten beiden Grafiken verwenden Zeiträume mit einem gemeinsamen Enddatum. In der Spalte für den konstanten Zinssatz wird der durchschnittliche Treasury-Bill-Kurs des letzten Monats des jeweiligen Zeitraums verwendet. Jede Zahl im Fließtext oben stammt aus der jeweils danebenstehenden Grafik.

FAQ

Welchen risikofreien Zinssatz sollte ich für die Sharpe-Ratio verwenden?

Eine kurzlaufende Staatsanleihe in derselben Währung wie die Renditen, umgerechnet auf dieselbe Frequenz wie die Renditen. Bei monatlichen USD-Renditen ist das eine einmonatige oder dreimonatige Treasury Bill. Längere Laufzeiten unterliegen während der Messperiode einem Kursrisiko. Damit scheiden sie als risikofreier Bestandteil aus.

Kann ich die heutige Treasury-Bill-Rendite von einer langen Renditehistorie abziehen?

Das ist der häufigste Fehler bei veröffentlichten Sharpe-Ratios. Über den Zeitraum von 20-year liefern ein konstanter Zinssatz zum Periodenende und die passende monatliche Zeitreihe bei denselben Renditen Werte, die 0.18 auseinanderliegen.

Muss ich den risikofreien Zinssatz vor der Subtraktion annualisieren?

Nein. Wandeln Sie die Jahresrate der Treasury Bill in die Frequenz der Rendite um. Ziehen Sie sie periodengleich ab. Annualisieren Sie die Überschussrendite-Zeitreihe anschließend einmal am Ende. Werden beide Komponenten zunächst separat annualisiert und erst danach voneinander abgezogen, bleibt ein Kreuzterm im Ergebnis enthalten.

Wie stark verändert der risikofreie Zinssatz eine Sharpe-Ratio?

Ungefähr um die Veränderung des Zinssatzes geteilt durch die annualisierte Volatilität. Bei einer hypothetischen Strategie mit 15 % annualisierter Volatilität verändert ein Unterschied von 4 % beim angenommenen Zinssatz die Kennzahl um etwa 0,27. Das entspricht dem Abstand zwischen einer gewöhnlichen Wertentwicklung und einer viel beachteten.

Was ist der Unterschied zwischen arithmetischer und geometrischer Annualisierung?

Bei der arithmetischen Annualisierung wird die durchschnittliche Überschussrendite pro Periode mit der Zahl der Perioden eines Jahres multipliziert. Bei der geometrischen Annualisierung werden die Perioden aufgezinst. Sie ermittelt die konstante Rate, die dasselbe kumulierte Ergebnis erzeugt. Pro Periode liegt der geometrische Wert auf oder unter dem arithmetischen Wert. Mit zunehmender Volatilität wird der Abstand größer.


Jede Grafik enthält das SQL, mit dem sie erstellt wurde. Dadurch sind sowohl die Zinszeitreihe als auch der Zeitraum sichtbar. Um dieselbe Berechnung für einen anderen ticker oder einen anderen historischen Zeitraum auszuführen, stellen Sie die Anfrage in normaler Sprache am Strasmore-Terminal.

#sharpe ratio#risk-free rate#excess returns#annualization#performance measurement