이것은 중요하지 않은 질문 일 수 있지만 불행히도 해결할 수는 없습니다. 나는 50 개 회사의 주식 포트폴리오를 가지고있다. 나는 각 회사의 해당 날짜에 마감일과 마감 가격을 가지고 있습니다. 각 회사의 데이터는 주식이 거래되는 날짜와 관련하여 다릅니다. 월별 회신 계산 : R
나는 매일 수익을 계산하는이 코드를 사용 :return=matrix(NA,nrow(companies),ncol(companies)-1)
for (j in 2:52){
k=0
for (i in 1:nrow(companies)){
if (!is.na(companies[i,j]) & k==0) {
base= companies[i,j]
k=k+1
}
else {if (k==1) {return[i,j-1] = ((companies[i,j]-base)/base)*100}
else {temp=0}
}
}
}
return[1:30,]
내가 지금 회사의 동일한 포트폴리오의 월별 수익률을 계산합니다. 나는이를 계산하기 위해 사용하고있는 공식은 다음과 같습니다
Return = [(Price on Last day of month) - (Price on other day)]*100/(Price on last day of month)
내가 (즉 내가 가진 데이터의 기간이기 때문에) 1 년에 12 개월 동안 12 년의 기간 동안이 과정을 반복합니다. 이 계산을 위해 for 루프를 작성할 계획입니다. 누군가 나를 도와주세요. 불행히도, 나는 quantmod가 가격을 읽을 수없는 인도 증권 거래소의 주식 가격이기 때문에 quantmod 패키지를 사용할 수 없습니다.
방법 데이터 날짜가 생겼는데? 2001-09-11? –
'quantomod '로 할 수 있다면, 나의 첫 번째 반사는이 좋은 패키지를 사용하기 위해 데이터를 포맷하는 것입니다. – agstudy
@agstudy가 옳다. IndianStock 형식을 읽고'quantmod '가 인식하는 형식으로 작성하는 두 줄의 코드를 작성하는 것이 훨씬 더 간단 할 것이다. –