2017-08-22 2 views
1

Also ich aus kumulierten Renditen vonmit Rückkehr zur täglichen Renditen

hist_data = (hist_data - hist_data.iloc[0])/hist_data.iloc[0] 

gegeben zu gehen versuchen Und ich versuche aus dieser kumulativen Rückkehr zur täglichen Renditen zu gehen, aber mir Blanking, wie dies zu tun effektiv. Irgendwelche Ideen? Ich dachte, das könnte funktionieren, wenn ich von einem

(hist_data[1:] - hist_data[:-1])/hist_data[:-1] 
+2

Können Sie die Beispieldaten hinzufügen? – Dark

Antwort

4

subtrahieren Wenn hist_data die kumulierten Erträge enthält, dann ist dies eine gängige Abkürzung für den täglichen Renditen zu berechnen. Angenommen, hist_data ist ein Vektor von Prozentzahlen, müssen Sie 1.0 zu hist_data hinzufügen, wie ich unten getan habe. Auf diese Weise haben wir einen Vektor von Rückkehrquoten anstelle von Rückkehrprozentsätzen.

import numpy as np 

daily_returns = np.exp(np.log(hist_data + 1.0).diff()) 

Hier verwenden wir einfach die Eigenschaft der natürlichen Holz (ln), der sagt

ln(a/b) = ln(a) - ln(b) 
    a/b = exp(ln(a) - ln(b)) 
Verwandte Themen