簡體   English   中英

我需要計算滯后 6 天的每日價格回報的平均值 Pandas python

[英]I need to calculate the average of the return of daily prices with lag 6 days Pandas python

我有一個包含日期和股票價格的大數據框。 我需要計算平均回報,但滯后 2 天。

例如,

在此處輸入圖片說明

我需要獲取每個標識符的平均值((67.4/55.1)-1 & (78/96.1)-1... & (12.1/17.3)-1) 並將其添加到新的數據幀中。

我找不到簡單的方法來做到這一點,所以我很感激你的建議! 我嘗試從我的 excel 復制虛擬數據框,但它不起作用。 所以不幸的是,我將它添加為圖像。 如果您還建議一種將數據幀作為文本粘貼到 stackexchage 中的方法,那就太好了。

我期待以下

在此處輸入圖片說明 謝謝大家!

好吧,您可以創建一個函數來將某個日期的兩天日期分開 6 天,並使用數據框操作來獲取這兩個值並對其求平均值。 偽代碼可能是這樣的:

df_dict = 數據框的字典 def getdates(date):
而 df_dict.keys() 中的日期:
返回日期,日期+6

在 df_dict 上使用列表解析器來獲取所有鍵的位置,然后使用它來解析每 2 個鍵並獲取它們的值,然后使用 avg 函數並計算結果並將結果存儲在一個數組中,稍后您將其添加到 df

使用 .pct_change() 可以很方便地使用參數 freq。 所以對於 6 個工作日的延遲 --> .pct_change(freq='6b')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM