설명
Estimate.gms: 분산 및 공분산 데이터를 추정합니다.
콘실리오, 닐슨, 제니오스.
실제 재무 최적화: 슬롯 사이트 추천 모델 라이브러리, 섹션 3.2.1
최종 수정일: 2008년 4월.
AssetsData.inc에서 데이터를 추출하고 ER 및 VarCov 매트릭스를 계산합니다.
SUBSET 집합에 의해 제공되는 데이터의 하위 집합에 대해서만.
결과 데이터는 MeanVar.gms 및 Sharpe.gms 모델에 사용됩니다.
우리는 1990년 1월 1일부터 2000년 1월 1일까지 10년간의 실제 데이터를 사용합니다.
데이터 표지:
23 이탈리아 주식 지수
3개의 이탈리아 채권 지수(1-3년, 3-7년, 5-7년)
이탈리아 무위험 금리(3개월 현금)
7개 국제정부 채권 지수
5개 지역 주가 지수: (EMU, Eur-ex-emu, PACIF, EMER, NORAM)
EUR, US, JP에 대한 3가지 무위험 금리(3개월 현금)
미국 회사채 부문 지수(금융, 에너지, 생명보험)
환율, ITL: (FRF, DEM, ESP, GBP, US, YEN, EUR)
또한 미국을 EUR로 변환합니다.
카테고리 : 슬롯 사이트 추천 FIN 라이브러리
메인파일 : 슬롯 사이트 추천.gms 포함: AssetsUniverse.inc AssetsData.inc ExchangeRates.inc
$title 분산 및 공분산 데이터 추정
* Estimate.gms: 분산 및 공분산 데이터를 추정합니다.
* Consiglio, Nielsen 및 Zenios.
* 실제 재무 최적화: 슬롯 사이트 추천 모델 라이브러리, 섹션 3.2.1
* 최종 수정일: 2008년 4월.
* AssetsData.inc에서 데이터를 추출하고 ER 및 VarCov 매트릭스를 계산합니다.
* SUBSET 집합에 의해 제공되는 데이터의 하위 집합에만 해당됩니다.
* 결과 데이터는 MeanVar.gms 및 Sharpe.gms 모델에 사용됩니다.
* 1990년 1월 1일부터 2000년 1월 1일까지 10년간의 실제 데이터를 사용하였습니다.
* 데이터 표지:
* 23개 이탈리아 주식 지수
* 3개의 이탈리아 채권 지수(1-3년, 3-7년, 5-7년)
* 이탈리아 무위험 금리(3개월 현금)
*
* 7개 국제정부 채권지수
* 5개 지역 주가 지수: (EMU, Eur-ex-emu, PACIF, EMER, NORAM)
* EUR, US, JP에 대한 3가지 무위험 금리(3개월 현금)
*
* 미국 회사채 업종 지수(금융, 에너지, 생명보험)
*
* 환율, ITL: (FRF, DEM, ESP, GBP, US, YEN, EUR)
* 또한 미국을 EUR로 변환합니다.
* 집합 정의가 포함된 파일을 포함합니다.
* 자산 클래스, 기간 및 환율에 대한 정보입니다.
$include "AssetsUniverse.inc";
* 45개 자산군에 대한 10년 월별 데이터를 저장하는 파일을 포함합니다.
* 별도로 취급되는 이탈리아 무위험자산도 포함
* (과거 데이터를 기반으로 한 것이 아님)
$include "AssetsData.inc";
* 10년 월간 환율을 저장하는 파일 포함
* 이탈리아 리라 반대: DEM. ESP. GBP. USD. 엔. ECU.
* US-EUR도 있습니다.
$include "ExchangeRates.inc";
* 지수를 IT리라로 환산
PARAMETER DATA_ITL(TS_DATES, ASSETS);
* IT 리라 단위의 연간 수익률
PARAMETER Ret_ITL(TS_DATES, ASSETS);
별칭(TS_DATES, t);
별칭(자산, i)
ALIAS(IT_ALL, 그것);
* 27개 이탈리아 자산군:
DATA_ITL(t, it) = ASSET_DATA(t, it);
* 국채, 각종 통화:
DATA_ITL(t, "GVT_GM") = ASSET_DATA(t, "GVT_GM") * EXCHRT(t, "ITL-DEM");
DATA_ITL(t, "GVT_IT") = ASSET_DATA(t, "GVT_IT");
DATA_ITL(t, "GVT_FR") = ASSET_DATA(t, "GVT_FR") * EXCHRT(t, "ITL-FRF");
DATA_ITL(t, "GVT_SP") = ASSET_DATA(t, "GVT_SP") * EXCHRT(t, "ITL-ESP");
DATA_ITL(t, "GVT_US") = ASSET_DATA(t, "GVT_US") * EXCHRT(t, "ITL-USD");
DATA_ITL(t, "GVT_JP") = ASSET_DATA(t, "GVT_JP") * EXCHRT(t, "ITL-JPY");
DATA_ITL(t, "GVT_UK") = ASSET_DATA(t, "GVT_UK") * EXCHRT(t, "ITL-GBP");
* 주가지수, 다양한 통화:
DATA_ITL(t, "EMU") = ASSET_DATA(t, "EMU") * EXCHRT(t, "ITL-EUR");
DATA_ITL(t, "EU_EX") = ASSET_DATA(t, "EU_EX") * EXCHRT(t, "ITL-EUR");
DATA_ITL(t, "PACIFIC") = ASSET_DATA(t, "PACIFIC") * EXCHRT(t, "ITL-JPY");
DATA_ITL(t, "EMERGT") = ASSET_DATA(t, "EMERGT") * EXCHRT(t, "ITL-USD");
DATA_ITL(t, "NOR_AM") = ASSET_DATA(t, "NOR_AM") * EXCHRT(t, "ITL-USD");
* 무위험, 3개월 현금, 다양한 통화:
DATA_ITL(t, "CASH_EU") = ASSET_DATA(t, "CASH_EU") * EXCHRT(t, "ITL-EUR");
DATA_ITL(t, "CASH_US") = ASSET_DATA(t, "CASH_US") * EXCHRT(t, "ITL-USD");
DATA_ITL(t, "CASH_JP") = ASSET_DATA(t, "CASH_JP") * EXCHRT(t, "ITL-JPY");
* 회사채 지수(모두 USD 기준):
DATA_ITL(t, "CRP_FIN") = ASSET_DATA(t, "CRP_FIN") * EXCHRT(t, "ITL-USD");
DATA_ITL(t, "CRP_ENG") = ASSET_DATA(t, "CRP_ENG") * EXCHRT(t, "ITL-USD");
DATA_ITL(t, "CRP_LFE") = ASSET_DATA(t, "CRP_LFE") * EXCHRT(t, "ITL-USD");
* 이탈리아 총주가지수
DATA_ITL(t, "ITMHIST") = ASSET_DATA(t, "ITMHIST");
* 연간 수익률, 예상 수익률 및 공분산을 계산합니다.
* 무위험자산은 특별하게 취급됩니다(과거 데이터 없음).
SCALAR RiskFreeRt / 0.035 /;
Ret_ITL(t,i) $ (data_ITL(t-1,i) <> 0) =
log( data_ITL(t,i) / data_ITL(t-1,i) ) / 델타;
* 기대(평균) 수익률
매개변수 MU(i);
MU(i) = SUM( t $ (ORD(t) > 1), Ret_ITL(t,i)) / (CARD(t) - 1);
매개변수 MAX_MU;
MAX_MU = SMAX(i, MU(i));
별칭(i, i1, i2);
매개변수 Q(i1, i2);
Q(i1,i2) =
SUM(t $ (ORD(t) > 1),
(Ret_ITL(t,i1) - mu(i1))*(Ret_ITL(t,i2) - mu(i2))) / (CARD(t)-2);
* Q에서 아주 작은 요소를 제거합니다.
* (예: RiskFree 자산에서 1e-17 정도의 상관관계가 나타남):
Q(i1,i2) $ (abs(Q(i1,i2)) <= 1e-12) = 0;
* 하위 집합: 여기에서 모델은 IntlAssets.gms와 다릅니다.
* 다음 코드는 MeanVar 모델 MeanVar.gms에 대한 데이터를 추정합니다.
집합 하위 집합(자산) /
Cash_EU 유로화 현금,
YRS_1_3 단기 이탈리아 채권,
EMU 유로 주가 지수,
EU_EX 유로존 주가 지수,
PACIFIC 태평양 주가 지수,
EMERGT 신흥 시장 주가 지수,
NOR_AM 북미 주가 지수,
ITMHIST 이탈리아 종합주가지수
/;
별칭(하위 집합, s1, s2);
매개변수
VarCov(s1, s2)
예상 수익(s1);
VarCov(s1, s2) = Q(s1, s2);
예상 수익(s1) = Mu(s1);
스칼라
평균위험무료반품;
매개변수
초과Ret(t,s1),
초과Cov(s1, s2),
평균 초과Ret(s1);
ExcessRet(t,s1) = Ret_ITL(t,s1) - Ret_ITL(t,'CASH_EU');
MeanRiskFreeReturn = SUM(t$(ORD(t) > 1), Ret_ITL(t,'CASH_EU')) / (CARD(t)-1);
MeanExcessRet(s1) = SUM(t$(ORD(t) > 1), ExcessRet(t,s1)) / (CARD(t)-1);
ExcessCov(s1,s2) = SUM(t$(ORD(t) > 1), (ExcessRet(t,s1) - MeanExcessRet(s1))
*(ExcessRet(t,s2) - MeanExcessRet(s2))) / (CARD(t)-2);
파일 ExpecRetHandle /"ExpectedReturns.csv"/;
파일 VarCovHandle /"VarianceCovariance.csv"/;
ExpecRetHandle.pc = 5; VarCovHandle.pc = 5;
ExpecRetHandle.pw = 1048; VarCovHandle.pw = 1048;
PUT ExpecRetHandle; LOOP(s1, PUT s1.TL,ExpectedReturns(s1):8:6/ ); 닫아라;
PUT VarCovHandle; LOOP((s1,s2), PUT s1.TL,s2.TL,VarCov(s1,s2):8:6/ );PUTCLOSE;
* 다음 코드는 Sharpe 모델 Sharpe.gms에 대한 데이터를 추정합니다.
* 재무 최적화 모델 라이브러리, 섹션 2.3.
* CASH_EU를 무위험자산으로 가정합니다. 일반적으로,
* 이 데이터는 최적의 샤프 비율을 결정하는 데 사용될 수 있습니다.
* 벤치마크를 존중합니다.
파일 RiskFreeReturn /"RiskFreeReturn.inc"/;
파일 ExExpecRetHandle /"ExcessExpectedReturns.csv"/;
파일 ExVarCovHandle /"ExcessVarianceCovariance.csv"/;
ExExpecRetHandle.pc = 5; ExExpecRetHandle.pw = 1024;
ExVarCovHandle.pc = 5; ExVarCovHandle.pw = 1024;
PUT RiskFreeReturn "SCALAR RiskFreeRate /", MeanRiskFreeReturn:8:6, " /;"; 닫아라;
PUT ExExpecRetHandle; LOOP(s1, PUT s1.TL,MeanExcessRet(s1):8:6/ ); 닫아라;
PUT ExVarCovHandle; LOOP((s1,s2), PUT s1.TL,s2.TL,ExcessCov(s1,s2):8:6/ ); 닫아라;
* 모든 것을 하나의 GDX 컨테이너에 덤프합니다.
EXECUTE_UNLOAD '추정';