統計顯著性

N 需要統計顯著的跟踪誤差

  • February 5, 2020

假設我有一個投資組合的跟踪誤差計算:

在此處輸入圖像描述

我如何確定統計顯著跟踪誤差所需的 N 次觀測?或者,我如何確定跟踪誤差本身是否具有統計意義?


這裡有一些說明性​​程式碼

import statsmodels.stats.moment_helpers as mh
import pandas as pd
import numpy as np
def generate_correlated_random_return_matrix(annual_means, annual_vols, corr, t_periods, n_samples, period_adjust=12.):
   """
   Generates a return matrix from a multivariate random normal distribution.

   **Args**:
       *annual_means*: An array of mean annual returns.

       *annual_vols*: An array of annual vols.

       *corr*: Correlation matrix. An example being:
           >>> [[1,0],[0,1]]

       *t_periods*: How many months would you like to simulate?

       n_samples**: How many times do you want to run this simulation?
   """
   means = np.divide(annual_means, period_adjust)

   vols = np.divide(annual_vols, period_adjust ** .5)

   cov = np.asmatrix(mh.corr2cov(corr, vols), float)

   sim_array = np.random.multivariate_normal(means, cov, [n_samples, t_periods])

   return sim_array


te_tests = generate_correlated_random_return_matrix(annual_means=[.03,.03],annual_vols=[.1,.1],corr=[[1,.8],[.8,1]],t_periods=10000,n_samples=1)


df = pd.DataFrame(te_tests[0])

expanding_te = pd.expanding_std(df[0] - df[1])

mu = (df[0] - df[1]).std()

true_te = (df[0] - df[1]).std()

vol_of_expanding_TE = expanding_te.std()


z_score_of_TE_at_obs_N = ((expanding_te - true_te)/vol_of_expanding_TE).plot()

我想這會給我一種方式來說明“測量的 TE 在統計上與TRUETE 無法區分”,我想。不過,不確定我使用的標準偏差是否正確。

假設你的投資組合有一些未知的真實平均跟踪誤差, $ t $ ,相對於基準,有一些實際差異 $ \sigma_t^2 $ .

你有一個從你的數據中生成的抽樣過程,它決定了估計的平均跟踪誤差, $ \hat{t} $ 根據您的公式,當然您也可以得出跟踪誤差的估計變異數, $ \hat{\sigma_t^2} $ .

您如何評估數據集相對於未知實際值的可信度?

1) 您可以執行非參數引導樣本: 在此方法中,您可以通過對數據集中的跟踪錯誤進行重新採樣(替換)來創建多個引導樣本數據集。然後,您從 bootstrap 估計器的統計數據中得出信賴區間。

例如,假設您有 5 個數據點、5 天的跟踪錯誤:

$$ 1, 2, 1, 3, 20 $$,平均值為 5.4,變異數為 67。這些估計器的準確度或誤導性如何?我執行了 100 個引導樣本(有替換),並描繪了我得到的平均估計量分佈: 在此處輸入圖像描述

由於樣本數量很少(以及潛在的異常值),這非常引人注目。我建議您不能自信地評估您對平均跟踪誤差的準確估計為 5.4。然而,對於更大的 NI,您認為您將獲得一個相當自信的值。

例如,假設我將跟踪錯誤的數據集擴展到 20 個數據點:

$$ 1, 2, 1, 3, 20, 5, 3, 2, 8, 9, 4, 4, 7, 16, 2, 2, 2, 7 $$平均值為 5.4。現在 100 個引導樣本將產生以下平均估計量分佈: 在此處輸入圖像描述

2)您可以對參數引導樣本執行相同的過程:假設跟踪誤差具有一些潛在分佈,您也可以對變異數估計器執行此操作。

在您的情況下,這可能更合適,因為您有一個潛在的多元正態分佈。

在這種情況下,我會將問題改寫為在 N 取不同值的情況下,具有統計意義的 TE 估計值範圍的寬度是多少。

例如,假設我為每個樣本中 N 為 3、6 或 24 的情況創建了 20 個參數引導樣本。我有一個簡單的帶有權重的基準投資組合

$$ 1,1 $$和跟踪投資組合$$ 0.9, 1.1 $$. 我模擬了簡單均勻分佈且沒有相關性的市場走勢,並根據您的公式計算了 TE。我得到的 TE 估計量的分佈如下所示: 在此處輸入圖像描述

顯然,隨著 N 的增加,您在估計量分佈中的變異數會減少,並且通過執行這種分析,您可以參考您可以輕鬆使用的確定信賴區間。即在這種情況下,在 N=24 的情況下,跟踪誤差與真實值相差 +-0.2 在統計上是不可能的,但是在 N=3 的情況下,有合理的機會會發生。

這些方法構成了計算密集型統計領域的一部分。

引用自:https://quant.stackexchange.com/questions/50922