2017-02-03 7 views
1

여러 공평합니다. 내 문제는 테스트하고 싶은 각각의 형평을 지정하지 않고 여러 주식에 투자하기를 원한다는 것입니다. R - Quantstart : 테스트 전략 나는 몇 가지 지표와 기본 거래 전략을 짓고 있어요

현재 내가 쉽게 엑셀 문서에서 재고 코드의 목록과 벡터를 생성 할 수 있습니다
# Get Shares from Yahoo Finance 
Stocks<- ASX_200_Companies_Copy$Code 
getSymbols(Stocks, from = from, to = to, src = "yahoo", adjust = TRUE) 

아래 등 한 번에 여러 문자를 얻을 수있는 벡터를 사용할 수있게되었습니다. 그래서 이것은 200 개의 분리 된 심볼을 생성 할 것입니다. 난 내 모든 지표를 생성 한 후, 나는 단지 내가 찾으려는 경우, 이는 한 번에 내 전략 하나 개의 자산을 테스트 할 수있을 것입니다이 경우 개별 자산

# Test the strategy 
test_Master <- applyIndicators(strategy.st.Master, mktdata = OHLC(BHP.AX)) 
Master_Strategy <- applySignals(strategy = strategy.st.Master, mktdata = test_Master) 

에 다음과 같이 테스트 전략을 만들 것 대규모 데이터 세트의 경향은 효과적이지 않습니다. OHLC에 대한 인수로 주식을 지정

내가 생성하는 개별 주식의 몇 cbind 단순히 생각

test_Master <- applyIndicators(strategy.st.Master, mktdata = OHLC(Stocks)) 
Error in Cl(mktdata) : subscript out of bounds: no column name containing "Close" 

다음과 같은 오류를 생성합니다. 그러나 이것도 작동하지 않습니다. 내가 성공적으로 각각의 기호를 cbind 않은 경우에도

Stocks <- cbind(BHP.AX, CBA.AX) 
test_Master <- applyIndicators(strategy.st.Master, mktdata = OHLC(Stocks)) 
Error in runSum(x, n) : ncol(x) > 1. runSum only supports univariate 'x' 

는, 나는이 전략은 주식 벡터의 기호 각각에 대해 OHLC의 표시를 테스트하는 것입니다 상상한다.

어쨌든 한 번에 여러 자산에 대해 퀀트 전략을 테스트 할 수 있습니까?

어떤 생각/의견을 주시면 감사하겠습니다.

+0

에 유래에 오신 것을 환영합니다! I 높게 그들의 구조 조작 완화 준다하고, 작업 환경과 추천 다양한 기능을 적용/strategies.See이이 [예] 대 (http://stackoverflow.com/questions/40119177/pairwise-correlation-r-code/) – OdeToMyFiddle

+0

이 문제를 해결했다면 답을 추가 할 수 있습니다. 이것은 다른 사람들이 같은 문제를 갖는 데 도움이 될 것입니다. – Tushar

답변

3

quantstrat 기본적으로 묻는 것은 않습니다.

data(stratBBands) #load a test strategy, you'd use your own 
symbols = c("XLF", "XLP", "XLE", "XLY", "XLV", 
      "XLI", "XLB", "XLK", "XLU") 

getSymbols(symbols 
      , src='yahoo' 
      , index.class=c("POSIXt" 
      ,"POSIXct") 
      , from='1999-01-01') 

out<-try(applyStrategy(strategy=stratBBands 
         , portfolios='bbands' 
         , parameters=list(sd=2,n=60))) 

또는 거의 모두 여러 기호를 사용하기 때문에 당신은 거의 모든 quantstrat에 포함 된 많은 예제를 볼 수 있습니다

다음은 예입니다.