Negativ varians? (Norsk)

Ved å bruke formelen w * Cov * t (w) kan jeg generere en negativ porteføljeavvik. Hva er implikasjonene av en negativ varians? Skal jeg bare anta at det er null? En negativ varians er plagsom fordi man ikke kan ta kvadratroten (for å estimere standardavvik) av et negativt tall uten å ty til imaginære tall. Det virker heller ikke i samsvar med formelen for varians som er gjennomsnittet av kvadratiske avvik fra gjennomsnittet siden kvadrering alltid gir et positivt tall.

Den negative variansen er toppen av isfjellet til mitt virkelige problem. Jeg har en kovariansmatrise som representerer (ex-ante) forventninger. Jeg har ikke og ønsker ikke å bruke historisk avkastning. Jeg har 23 aktivaklasser. Jeg har lekt med litt porteføljoptimalisering (ikke gjennomsnittlig varians). Jeg kommer med et sett med vekter (w) for en optimal portefølje. Jeg har også et sett med vekter for referanseindeksen min (b). Jeg beregner en sporingsfeil. Kvadratet til sporingsfeilen skal være (w-b) * cov * t (w-b). Dette er det som er negativt.

Videre er vektene mine tilstrekkelig forskjellige fra referanseindeksen min for at inspeksjon og intuisjon forteller meg at null er feil svar. For ytterligere å bevise dette genererte jeg 1000 tilfeldige avkastninger (ved hjelp av forutsetningene mine for avkastning og kovariansmatrisen) for aktivaklassene og beregnet 1000 avkastninger for w og for b. Så beregnet jeg forskjellen og så tok jeg variansen. Og siden jeg har en datamaskin, gjentok jeg dette 1000 ganger. Den laveste sporingsfeilen (kvadratrot av variansen til forskjellene) var 2,7%. Så jeg er trygg på at variansen skal være positiv.

FWIW, jeg har en 23×23 kovariansmatrise. Det meste kommer fra en offentlig kilde ( Research Tilknyttede selskaper ). Jeg legger til kommunale obligasjoner. Jeg er ganske fornøyd med kovariansematriksen ved at andre bruksområder for den – f.eks. porteføljeavviket mellom w og b ser ut til å være stor.

Enhver innsikt i enten hva jeg kan gjøre galt enten beregningsmessig eller ved tolkning, vil bli verdsatt. Alt arbeidet mitt er i R, og jeg kunne dele data og kode.

Kommentarer

  • Matrisen din er ikke halvdefinert positiv, derfor er den ikke en kovariansmatrise. Det er et problem med «manuelt» utformede «kovarians» -matriser. Det er måter å lage en legitim kovariansmatrise som er «nær» (i noen avstands forstand) fra matrisen din.
  • Kan du legge ut dataene til var / cov-matrisen din? Som kommentaren ovenfor indikerer, er det høyst sannsynlig at det ikke er positivt semi-definitivt.

Svar

Som påpekt ut av andre brukere her, er den designede kovariansmatrisen tilsynelatende ikke positiv, og derfor får du denne rare oppførselen.

Vær oppmerksom på at dette ikke bare er et matematisk problem, men et økonomisk.

Se på dette som et leketøyeksempel: Hvis A og B er sterkt negativt korrelert (si -1), kan de ikke begge være negativt korrelert (igjen -1) til en tredje C. Du kan designe (= skrive ned) en slik matrise, men dette er noe du ikke kan møte i riktig matematikk eller virkelige liv.

Hva du kan gjøre:

  1. Velg ikke-negative avvik for hvert aktivum $ V = diag (v_1, v_2, \ ldots, v_n) $
  2. velg en positiv-definert matrise for korrelasjonene $ C $
  3. Beregn $ Cov = \ sqrt {V} C \ sqrt {V} $ der kvadratroten er komponentvis.

Beregningen i det tredje trinnet er diskutert på stack.overflow . Pakken corpcor tilbyr måter å krympe samvarianter til valgte mål og tilbyr kontroller for positiv definitet.

Funksjonen make.positive.definite er tilgjengelig som finner nærmeste (i valgt forstand) positiv-bestemt matrise til noen gitt.

Svar

Som Ivan påpekte i sin kommentar, er matrisen din ikke en gyldig kovariansmatrise. Sagt på en annen måte, eksisterer det ingen datasett (med fullstendige observasjoner) som du kunne ha estimert en slik kovariansmatrise fra.

Den enkleste måten å reparere en slik matrise på er å erstatte matriseens negative egenverdier med nuller. . Denne metoden er implementert i funksjon repairMatrix i R-pakken NMOF , som jeg vedlikeholder.

Svar

Ivans kommentar er et godt svar. Jeg legger til noe, men oppretter hovedsakelig en svar i stedet for en kommentar for å sikre at søkeresultatene viser at det er et svar. Kovariansmatrisen min skal være positiv semi-definitiv. Slik jeg forstår det, oversettes dette omtrent til at det er som et ikke-negativt tall. Når du multipliserer med den, vil du få null eller noe med samme tegn.Her er en lenke til en kort forklaring på positiv semidefinit og positiv bestemt som jeg syntes var nyttig. Takk Ivan.

Kommentarer

  • Dette er ikke riktig. For å sjekke at matrisen din er positiv, er det definitivt at du har flere muligheter for å sjekke at alle egenverdier er positive. Et annet godt alternativ er å sjekke om de ledende mindreårige er positive. Matlab kan sjekke det i en brøkdel av et sekund.
  • En positiv halvdefinert matrise innebærer at $ x ‘ \ Sigma x $ er ikke-negativ, for noen reelle $ x $. For en positiv bestemt matrise er $ x ‘ \ Sigma x $ strengt større enn null.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *