S&P500의 일간수익률에 매매 신호를 곱해 전략의 일간수익률을 계산한다. 이때 당일 수익률에 다음 매매일의 신호 df[ 'Signal' ].shift(1)을 곱하는 것이다. 그리고 마찬가지로 검증 기간 동안의 누적수익률을 계산해 Cum_STR_Returns에 저장한다.
df[ 'STR_Returns' ] = df[ 'STR_Returns' ]*df[ 'Signal' ].shift(1)
Cum_STR_Returns = df[ split: ][ 'STR_Returns' ].cumsum( )*100
이렇게 구한 두 개의 누적수익률(S&P500과 전략)을 다음과 같이 차트로 그린다.
plt.figure( figsize=( 10,5 ) )
plt.plot( Cum_SPY_Returns, color='r', label='SPY Returns' )
plt.plot( Cum_STR_Returns, color='g', label='Strategy Returns' )
plt.legend( )
plt.show( )
결과
▲ 그림 7-17 전략 실행 결과 예