40
제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은 반복적인 평가가 상당 부분을 차지한다. 또한 최적화 과정에도 많은 시간이 소요된다. 진입 전략을 개발하고 평가, 청산전 략을 적용하면서 평가, 자산관리 전략을 적용하면서 평가, 더 좋은 진입이나 청산 및 자산관리 전략을 찾는 과정에서도 평가를 하게 된다. 최적화도 하나 의 전략을 개발하는 과정에서 많이, 반복적으로 진행된다. 더 나아가 실전매 매를 하면서도 평가 및 최적화를 하는 과정은 반복된다. 앞서 제 2 장에서 기초적인 평가 항목 및 평가 방법에 대해서 설명하였다. 여 기서는 추가적인 평가 항목 및 평가 방법을 심도있게 이해해 보도록 하자. 전략은 DD_RangeBreak(v0.22)를 사용하였다.

제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

제 7 장 평가 및 최적화

투자의 핵심 원칙:

매매전략의 범용성 (Robust)을 확인하라.

시스템 트레이딩의 개발과정은 반복적인 평가가 상당 부분을 차지한다. 또한

최적화 과정에도 많은 시간이 소요된다. 진입 전략을 개발하고 평가, 청산전

략을 적용하면서 평가, 자산관리 전략을 적용하면서 평가, 더 좋은 진입이나

청산 및 자산관리 전략을 찾는 과정에서도 평가를 하게 된다. 최적화도 하나

의 전략을 개발하는 과정에서 많이, 반복적으로 진행된다. 더 나아가 실전매

매를 하면서도 평가 및 최적화를 하는 과정은 반복된다.

앞서 제 2 장에서 기초적인 평가 항목 및 평가 방법에 대해서 설명하였다. 여

기서는 추가적인 평가 항목 및 평가 방법을 심도있게 이해해 보도록 하자.

전략은 DD_RangeBreak(v0.22)를 사용하였다.

Page 2: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

2

1. 평가(Evaluation)

DD_RangeBreak(v0.22)를 10분봉 연결선물지수에 적용하고, 시뮬레이션 보고서

를 보면 다음과 같다.

<그림 0-1> 시뮬레이션 보고서

시뮬레이션 보고서를 실행하면 종합보고서가 가장 먼저 나오며, 왼쪽 틀

(frame)에 종합보고서, 거래내역, 전략 분석, 자산 분석, 기간 분석, 시간 분

석, 그래프 등 총 7가지의 보고서를 확인 할 수 있다.

이제 각각에 대해서 알아보기로 하자.

Page 3: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

(1) 종합보고서

<표 0-1> 종합 보고서

평가 항목 전체 매수 매도

총손익 93,116.18 42,326.57 50,789.61

총이익 229,400.50 110,545.32 118,855.18

총손실 -136,284.32 -68,218.75 -68,065.57

미청산 손익 0.00 0.00 0.00

지급 수수료 8,139.87 N/A N/A

추정 슬리피지 0.00 N/A N/A

평균손익 97.81 88.00 107.83

평균이익 487.05 456.80 519.02

평균손실 -283.34 -285.43 -281.26

최대이익 2,725.08 2,725.08 2,712.32

최대손실 -1,132.98 -1,132.98 -1,120.12

총 매매수 952 481 471

총 이익 매매수 471 242 229

총 손실 매매수 481 239 242

최대연속 이익매매수 10 7 6

최대연속 손실매매수 7 10 7

승 률 49.47 50.31 48.62

손익비 1.68 1.62 1.75

평균 손익비 1.72 1.60 1.85

최대자본인하액 -4,438.61 -5,454.08 -5,302.93

보상비율 20.98 7.76 9.58

최대누적손익인하액 -4,219.36 N/A N/A

평균 총효율 -5.86 -5.32 -6.41

Sharpe Ratio 0.97 0.62 0.70

RINA Index 96.24 -34.92 -37.50

(단위: 천원, %, 배)

Page 4: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

4

대부분의 항목들은 기초적인 분석(제2, 3장)에서 설명하였다. 추가된 항목들

은 다음과 같다.

1) 최대 누적손익 인하액

누적 수익 곡선상의 최고 수익 대비 최대인하액으로서 최대자본인하액 계산시

미실현손실금을 제외한 청산기준 인하액을 의미한다.

2) 평균 총 효율

얼마나 시장에 잘 진입하고, 잘 청산하였는지를 나타내는 지표이다. 진입 효

율과 청산 효율로 구분되어 설명되고, 여기서는 진입과 청산의 총 효율의 평

균값을 나타내고 있다. 매수의 경우 저가에 가깝게 진입하면 진입효율이 높아

질 것이고, 고가에 가깝게 청산하면 청산효율이 높아져 평균 총 효율이 높아

질 것이다.

진입 효율:

매수 = 100-

- ×

매매기간중최저가매매기간중최고가

진입가최고가매매기간중

매도 = 100-

매매기간중최저가매매기간중최고가

최저가매매기간중진입가

퇴출 효율:

매수청산 = 100-

매매기간중최저가매매기간중최고가

매매기간중최저가청산가

매도청산 = 100-

×−

매매기간중최저가매매기간중최고가

청산가매매기간중최고가

총 효율 = (진입 효율 + 퇴출 효율) – 100

평균 총효율 = 각각 총효율의 평균

<표 7-1>을 보면 평균 총효율이 -5.86으로 상당히 안 좋은 결과를 보이고 있

다. 이유는 대부분의 돌파 전략이 일정 수준 이상 가격이 상승해야 발생하기

Page 5: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

때문이다. 역 추세 추종적인 전략이 오히려 좋은 결과가 도출될 것으로 예상

된다. 따라서 독립적인 판단 보다는 보조적인 분석 도구로서 활용이 가능하다.

3) Sharpe Ratio

종합 보고서를 보면 지금까지는 테스트 기간의 마지막 결과를 분석하는 방법

이었다. 하지만 Sharpe Ratio와 뒤에서 설명할 RINA Index의 경우에는 수익곡

선의 진행과정을 분석할 수 있게 해준다. 공식은 다음과 같다.

Sharpe Ratio = 표준편차

평균손익

즉 수익 곡선이 선형적으로 상승하였다면 이 수치가 높을 것이다. 반면 수익

곡선이 등락을 반복하고 있다면 표준편차가 커져, 이 수치가 낮을 것이다. 따

라서 이 수치만으로도 수익 곡선이 선형적인가 아닌가를 판단할 수 있다.

일반적으로 0.7 이상이 바람직하다. 특히 1이상은 상당히 유용한 결과라 할

수 있다. 위 결과를 보면 0.97로 유의적인 결과로서 수익 곡선의 선형성이 강

할 것으로 예상할 수 있다.

4) RINA Index

RINA사에서 개발한 Index로서 다음과 같은 공식으로 계산된다.

RINA Index= 시장참여비율평균드로다운

특이치제거후총손익

×

총 손익과 드로다운을 이용한다는 관점에서 보상비율과 유사한 분석이 가능한

지표이다. 일반적으로 300 이상이면 유용한 것으로 판단한다.

Page 6: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

6

(2) 거래 내역

거래 내역에는 다음과 같은 상세 내역을 볼 수 있다.

<그림 0-2> 거래내역

거래명, 거래단가, 거래 계약수, 수익뿐만 아니라 최대 인상액, 최대 인하액,

진입효율, 퇴출 효율, 거래기간, 총효율을 보여주고 있다. 엑셀 등으로 저장

이나 복사가 가능해서 거래 기초 데이터로 활용도가 높으며, 자신만의 평가

방법도 개발할 수 있다.

1) 최대 인하액, 인상액

인상액(run-up)은 진입 방향과 같은 방향으로 진행된 미실현 최대 수익금액을

말하며, 인하액(drawdown)은 진입과 반대 방향으로 진행된 미실현 최대 손실

금액을 말한다. 앞서 5장의 청산 전략에서 사용한 MAE 및 MFE가 바로 이것이

다. 따라서 가장 중요한 분석을 할 수 있는 기초 데이터이다.

2) 진입 효율, 퇴출 효율, 총 효율

종합 보고서에서 설명한 바와 같이 얼마나 잘 진입, 퇴출하였는가를 판단할 수

있게 해주는 지표이다. 1번 거래를 보면 매도로서 진입 효율이 79% 이고 퇴출

효율이 91% 이다. 둘 다 높을수록 좋다. 따라서 진입은 고점과 저점의 79% 수준

에서 고점에 가깝게 진입하였고, 퇴출은 저점과 고점에서 91% 수준으로 저점에

가깝게 퇴출하였다는 것을 보여준다. 총 효율은 71% 수준으로 나쁘지 않다.

Page 7: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

(3) 전략 분석

<표 0-2> 전략 분석 항목

항 목 전 체 매 수 매 도

손익 분석

총손익 93,116.18 42,326.57 50,789.61

총이익 229,400.50 110,545.32 118,855.18

총손실 -136,284.32 -68,218.75 -68,065.57

손익비 1.68 1.62 1.75

평균 손익비 1.72 1.60 1.85

조정총손익 76,331.93 30,807.74 38,560.01

조정총이익 218,830.28 103,439.20 111,001.01

조정총손실 -142,498.35 -72,631.45 -72,440.99

조정 손익비 1.54 1.42 1.53

초기자본대비 수익률 931.16 423.27 507.90

연환산수익률 372.26 169.59 203.05

시스템 수익률 980.83 444.55 534.99

보유수익률 29.36 -28.61 29.36

최소 필요 자본 14,173.61 15,020.33 15,037.93

최소필요자본대비총손익 6.57 2.82 3.38

거래 내역 분석

평균손익 97.81 88.00 107.83

매매당 손익의표준편차 522.47 N/A N/A

변동계수 534.16 N/A N/A

특이치 제거 후 총손익 12,581.45 6,671.57 4,915.37

특이치 제거 후 총이익 88,139.96 44,229.79 43,403.88

특이치 제거 후 총손실 -75,558.51 -37,558.22 -38,488.51

평균 진입효율 53.40 53.01 53.79

평균 퇴출효율 40.75 41.67 39.80

평균 총효율 -5.86 -5.32 -6.41

(단위: 천원, %, 배)

Page 8: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

8

전략 분석 항목에는 총손익을 조정하는 방법 등과 같이 보수적이고, 심도 있

는 분석이 가능한 항목들로 구성되어 있다. 크게 두 가지 항목으로 구분되는

데, 손익 분석과 거래 내역 분석이다.

1) 조정 총손익, 조정 총이익, 조정 총손실, 조정 손익비

이익과 손실을 조정하여 보수적인 관점에서 수익과 위험을 분석하는 방법이다.

각각의 항목은 다음과 같이 계산된다.

조정 총 이익= (이익매매수- 이익매매수 )×평균이익

조정 총 손실= (손실매매수+ 손실매매수 )×평균손실

조정 총 손익 = 조정 총 이익 – 조정 총 손실

조정 손익비 = 조정총손실

조정총이익

이와 같은 조정 방법은 이익 매매를 좀더 적게, 손실 매매는 좀더 크게 보는

방법으로 총손익, 총이익, 총손실, 손익비 대신 사용할 수 있는 항목이다.

2) 초기자본 대비 수익률, 연 환산 수익률, 시스템 수익률, 보유 수익률

수익률을 표시하는 항목들이다. 각각의 계산식은 다음과 같다.

초기 자본 대비 수익률 = 100×초기자본금

총손익

연 환산 수익률 = 100365

××영업일수

초기자본금

총손익

시스템 수익률 = 100×최초진입가격

총손익

보유 수익률 = 100×−

최초진입가격

최초진입가격최종청산가격

Page 9: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

초기자본 대비 수익률을 연률로 환산한 것이 연 환산 수익률이 된다. <표 7-

2>에서 연 환산 수익률이 372%이므로 연간 약 3.7배 수익 발생을 기대할 수

있는 전략이 된다. 이 두 가지가 실질적인 수익률을 의미하고, 시스템 수익률

과 보유 수익률은 연 환산 수익률, 초기자본 대비 수익률을 비교 분석하기 위

해서 사용된다. 특히 보유 수익률은 매매전략에 발생한 수익률과 비교하는 기

초적인 수익률이 된다.

비교 방법은 간단하다. 초기 자본 대비 수익률이 보유 수익률보다 크다는 것

은 매매 전략을 이용해서 초과 수익을 발생시킨다는 의미로 해석된다.

3) 최소 필요자본, 최소 필요자본 대비 총손익

자본 활용에 대한 항목으로서 계산 방법은 다음과 같다.

최소 필요 자본 = 최대 자본 인하액 + (최대 보유계약수 기간 중 최고 가

격)×증거금율(선물=0.15)×포인트 단위 가격(1 포인트=500,000원)

최소 필요 자본 대비 총손익 = 최소필요자본

총손익

위 식은 자산 관리에서 초기 자본금을 계산하는 식과 비슷하다. 여기서는 최

대자본인하액의 1.5 ~ 3 배를 사용하지 않고 1배로만 사용하였다. 그 다음 부

분은 최소 증거금을 계산하는 식인데 전체 기간 중의 최대 증거금액 발생 시

점으로 계산한다. <표 7-2>에서 최소필요자본이 14,173,610원으로 계산 되는

데, 현행 체제로는 1,500만원이 필요하다.

최소 필요 자본 대비 총 손익은 역시 클수록 좋을 것이다. 여기서는 6.57로서

투하 자금대비 6배의 수익이 발생하였다는 것을 보여준다.

4) 매매당 손익의 표준편차, 변동계수

매매당 손익의 표준 편차는 평균 손익과 깊은 관계를 가진다. <표 7-2>는 평

Page 10: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

10

균 손익이 97,810원인데 매매당 손익의 표준 편차 522,470원으로 상당히 큰

값을 가진다. 즉 향후 매매를 할 때 최대 97,810+522,470 = 620,280원, 최소

97,810-522,470 =-424,660원의 손실이 발생할 수 있다는 가정이 가능해진다.

따라서 매매당 손익의 표준 편차가 적고, 평균손익과 차이가 없는 매매 전략

이 안정적인 수익을 기대할 수 있게 된다.

변동 계수 = 100 ×

평균손익

표준편차매매당손익의

변동 계수는 통계적으로 광범위 하게 사용되는 개념으로서 이 수치가 클수록

변동이 심하다는 것을 말한다. <표 7-2>에서 보면 534%로 상당히 큰 값을 가

지고 있다. 안정적인 수익 구조를 가지기 위해서는 300% 이하가 바람직 하다.

5) 특이치 제거 후 총손익 / 총이익 / 총손실

특이치 제거(outlier)는 상단에 있는 표준편차승수에 영향을 받는다. 일반적

으로 승수는 1, 2, 3을 사용하는데 특이치 제거 방법은 다음과 같다.

특이치 제거 후 총이익 = 매매당 이익의 평균 + (매매당 이익의 표준 편차 ×

표준편차승수)의 범위를 벗어나는 이익매매를 제거한 총이익

특이치 제거 후 총손실 = 매매당 손실의 평균 + (매매당 손실의 표준 편차 ×

표준편차승수)의 범위를 벗어나는 손실매매를 제거한 총손실

특이치 제거 후 총 손익 = 특이치 제거 후 총이익 - 특이치 제거 후 총손실

따라서 승수가 1일 경우가 가장 보수적인 구조를 가지게 되고, 승수가 클수록

기존의 총 손익 및 총 이익, 총 손실에 근접하게 된다. <표 7-2>는 승수가 3

일 경우이다.

특이치 제거 후 총 손익이 현실적으로 가능한 수익일 수 있다. 아주 큰 이익과 손실

은 앞으로 다시 발생할 확률이 적기 때문이다. 총손익 등과 비교하여 분석한다.

Page 11: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

(4) 자산 분석

<표 0-3> 자산분석항목

항목 전체 매수 매도

Run-up/DrawDown 분석

최대손실(천원) -1,132.98 -1,132.98 -1,120.12

최대이익(천원) 2,725.08 2,725.08 2,712.32

금액기준 최대 DrawDown(%) -1,123.00 (2.23%) N/A N/A

비율기준 최대 DrawDown(천원) 2.23% (-1,123.00) N/A N/A

금액기준 최대 Run-Up(%) 3,011.50 (6.35%) N/A N/A

비율기준 최대 Run-Up(천원) 7.17% (2,143.75) N/A N/A

평균 DrawDown(천원) -282.88 -279.05 -286.79

평균 Run-Up(천원) 474.51 449.75 499.80

최대연속 손실매매수 7 10 7

최대연속 손실금액(천원) -1,791.68 -634.39 -654.58

최대연속 이익매매수 10 7 6

최대연속 이익금액(천원) 5,092.35 3,482.71 3,613.91

고점갱신 평균기간(거래수) 176.41 (4.92 ) N/A N/A

저점갱신 평균기간(거래수) 0.00 (0.00 ) N/A N/A

보상/위험 분석

총손익 대비 최대손실 1.22 2.68 2.21

보상비율 20.98 7.76 9.58

평균D/D 대비 평균 R/U 167.75 161.17 174.28

(단위: 천원, %, 배)

1) 최대드로다운 / 런업

최대드로다운은 거래내역상의 매매 중 미실현손실이 가장 크게 발생했을 때의

금액과 비율로서, 금액기준으로 계산한 경우와 진입가격대비 비율로 계산한

값을 모두 표현하고 있다.

Page 12: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

12

금액기준 최대드로다운은 전체의 매매 중 미실현 손실금액의 최대값이 112만

원임을 의미하며, 해당 매매에서 112만원을 진입가격대비 비율로 환산한 값이

2.23%임을 나타낸다.

2) 평균드로다운

매매건별 발생한 최대 미실현손실금액의 합을 매매횟수로 나눈 것으로써 한번

의 매매에서 평균적으로 발생할 수 있는 미실현손실금을 의미한다.

3) 최대연속 손실매매수/손실금액

연속적으로 손실이 발생한 횟수 중 가장 큰 매매횟수를 기록한 것이며, <표

7-3>에서 7회임을 알 수 있다. 이 표에서 7회 연속손실이 몇 회나 발생했는지

는 알 수 없지만, 만일 7회 연속손실이 3회 발생했다고 가정했을 경우 그때마

다의 손실금액 중 가장 큰 금액을 최대연속 손실금액으로 계산하여 항목에 표

시하게 된다. 최대자본인하액, 최대 누적손익 인하액과 더불어 해당 전략의

매매위험을 판단하는 항목으로 활용된다.

Page 13: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

(5) 기간 분석

1) 단위분석

단위분석은 종합보고서상의 결과를 전체기간을 대상으로 확인하는 것이 아니

라, 사용자의 선택에 따라 연, 월, 주, 일 단위로 구분하여 평가항목들을 비

교함으로써 시뮬레이션 기간동안의 각 항목별 변화 추이를 확인할 수 있다.

<표 0-4> 단위분석(예: 월 단위)

기간 총손익 평균

손익 총매매 승률 손익비 수익률

보상

비율

최대

자본

인하액

2003년 9월 112.12 5.6 20 30 1.04 1.12 0.07 -1693.1

2003년 8월 -300.39 -13.0 23 39.1 0.88 -3 -0.26 -1142.1

2003년 7월 163.57 6.8 24 37.5 1.07 1.64 0.14 -1197.6

2003년 6월 -92.45 -4.2 22 36.3 0.96 -0.92 -0.14 -680.3

2003년 5월 -279.54 -15.5 18 44.4 0.89 -2.8 -0.17 -1635.3

2003년 4월 1637.2 68.2 24 54.1 1.55 16.37 0.91 -1791.6

2003년 3월 -453.72 -18.1 25 44 0.87 -4.54 -0.22 -2020.4

2003년 2월 37.85 1.8 20 50 1.01 0.38 0.04 -993.9

2003년 1월 2613 145.1 18 50 2.01 26.13 1.57 -1661.0

2002년 12월 1186.27 53.9 22 45.4 1.5 11.86 1.62 -733.7

2002년 11월 1706.3 77.5 22 59.0 1.94 17.06 2.66 -640.3

2002년 10월 2930.18 122.0 24 54.1 1.69 29.3 1.41 -2073.6

2002년 9월 1301.85 59.1 22 54.5 1.59 13.02 1.28 -1016.5

2002년 8월 -1522.81 -63.4 24 45.8 0.69 -15.2 -0.58 -2615.7

2002년 7월 1168.06 53.0 22 45.4 1.24 11.68 0.29 -4012.6

2002년 6월 2544.75 121.1 21 52.3 1.68 25.45 1.91 -1330.8

2002년 5월 904.19 39.3 23 34.7 1.22 9.04 0.56 -1612.8

2002년 4월 4875.84 211.9 23 56.5 2.54 48.76 3.88 -1257.0

Page 14: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

14

2002년 3월 752.85 35.8 21 42.8 1.21 7.53 0.44 -1717.6

2002년 2월 3337.74 196.3 17 70.5 3 33.38 4.9 -680.9

2002년 1월 3230.38 146.8 22 40.9 1.97 32.3 2.82 -1147.1

2001년 12월 420.9 17.5 24 41.6 1.07 4.21 0.15 -2755.1

2001년 11월 2048.79 89.0 23 47.8 1.72 20.49 1.85 -1110.0

2001년 10월 367.69 21.6 17 41.1 1.24 3.68 0.6 -611.9

2001년 9월 825.64 45.8 18 33.3 1.31 8.26 0.8 -1032.4

2001년 8월 1648.1 71.6 23 47.8 1.77 16.48 1.38 -1198.1

2001년 7월 684.26 32.5 21 47.6 1.32 6.84 0.72 -953.3

2001년 6월 669.12 33.4 20 40 1.29 6.69 0.94 -711.8

2001년 5월 817.34 35.5 23 47.8 1.32 8.17 0.83 -982.3

2001년 4월 2298.78 114.9 20 55 2.55 22.99 4.11 -558.8

2001년 3월 1878.27 93.9 20 55 2.35 18.78 2.95 -637.3

2001년 2월 1581.85 87.8 18 50 1.6 15.82 1.06 -1496.6

2001년 1월 1982.24 82.5 24 45.8 1.48 19.82 0.94 -2101.5

2000년 12월 731.61 38.5 19 47.3 1.21 7.32 0.56 -1309.3

2000년 11월 2570.64 128.5 20 70 2.39 25.71 2.35 -1093.3

2000년 10월 5316.38 253.1 21 57.1 2.41 53.16 3.52 -1511.1

2000년 9월 2236.32 106.4 21 52.3 1.93 22.36 2.09 -1071.1

2000년 8월 4902.47 233.4 21 61.9 2.69 49.02 5.55 -883.6

2000년 7월 2929.8 127.3 23 60.8 1.65 29.3 1.45 -2015.8

2000년 6월 2947.89 140.3 21 42.8 1.56 29.48 1.22 -2421.2

2000년 5월 4796.37 266.4 18 61.1 3.23 47.96 6.27 -764.6

2000년 4월 4252.21 236.2 18 55.5 2.42 42.52 2.95 -1442.3

2000년 3월 9798.16 426.0 23 65.2 3.13 97.98 7.75 -1264.9

2000년 2월 4172.78 189.6 22 54.5 1.91 41.73 1.38 -3030.7

2000년 1월 7385.33 434.4 17 64.7 5.03 73.85 13.75 -537.13

Page 15: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

2) 순환분석

단위분석이 해당 연도별, 월별 등의 전략분석결과 라면, 순환분석은 가장 최

근의 단위기간부터 시뮬레이션 시작시점까지 단위기간을 합산하여 전략분석

항목을 확인할 수 있다.

단위분석과 마찬가지로 연, 월, 주, 일 단위로 합산하며 분석할 수 있다.

<표 0-5> 순환분석(예: 연 단위)

기간 총손익 총이익 총손실평균

손익 총매매 승률 손익비 수익률

2003년 3437 27820 -24382 17.72 194 42.7 1.14 126.9

2003년 ~ 2003년 12698 120135 -64657 27.85 456 44.3 1.86 351.1

2002년 ~ 2003년 35113 182445 -104552 48.84 719 46.3 1.75 503.3

2001년 ~ 2003년 50336 229400 -136284 51.89 970 46.2 1.68 1023.7

표의 결과는 연 단위 순환분석 결과로서 첫 줄에 전체 기간 중 가장 최근 연

도인 2003년의 결과를 표시하고, 다음 줄부터 최근 연도로부터 연단위로 추가

하면서 시뮬레이션 결과를 보여주고 있다. 해당 기간 동안의 시뮬레이션 결과

가 누적된 것이다.

3) 평균분석

평균분석은 월 단위로만 가능하며 시뮬레이션 결과를 월별로 평균한 값을 보

여준다. 월 평균값을 계산하므로 월 단위 분석의 기준으로 사용된다.

Page 16: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

16

<표 0-6> 평균분석(예: 월 단위)

기간 총손익 총이익 총손실 평균

손익 총매매 승률 손익비 수익률

1월 3802.74 6776.66 -2973.92 187.79 20 49.38 2.28 152.11

2월 2282.56 5222.27 -2939.72 118.57 19 55.84 1.78 91.3

3월 2993.89 6242.01 -3248.11 134.56 22 51.69 1.92 119.76

4월 3266.01 5925.09 -2659.07 153.69 21 55.29 2.23 130.64

5월 1559.59 4395.31 -2835.71 76.08 20 46.34 1.55 62.38

6월 1517.33 4861.14 -3343.81 72.25 21 42.86 1.45 60.69

7월 1236.42 4701.97 -3465.54 54.95 22 47.78 1.36 49.46

8월 1181.84 4281.39 -3099.55 51.95 22 48.35 1.38 47.27

9월 1118.98 3694.18 -2575.2 55.26 20 43.21 1.43 44.76

10월 2153.56 4551.8 -2398.25 138.94 15 51.61 1.9 86.14

11월 1581.43 3209.59 -1628.15 97.32 16 58.46 1.97 63.26

12월 584.69 3488.74 -2904.05 35.98 16 44.62 1.2 23.39

(6) 시간 분석

<표 0-7> 시간분석 항목

구분 항목 전체

시뮬레이션 기간

- 연단위(년)

- 월단위(월)

- 주단위(주)

- 일단위(일)

3.74

45.5

195

1,365.00

시장참여기간 15,799

시장참여비율 46.22

최장 매매중단기간 94

평균 거래기간 17.57

매매간 평균 기간 20.24

평균 이익매매기간 22.48

Page 17: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

평균 손실매매기간 12.81

이익매매간 평균기간 51.84

손실매매간 평균기간 60.09

최대 보유 주(계약)수 1

단위: 바수

1) 시뮬레이션 기간 및 시장참여기간(비율)

시간분석 항목들은 전략의 시간측면을 고려한 것으로서, 시뮬레이션 기간은

전체 기간을 연, 월, 주, 일단위로 환산한 것이다.

시장 참여기간은 포지션을 보유한 기간 동안의 봉(10분)의 개수를 합산한 것

으로서, 전체 봉의 개수로 시장 참여기간을 나누어 시장참여비율을 계산한다.

다른 항목들이 같다면 시장참여비율이 낮을수록 전략이 우수하다고 할 수 있

다. 시장 참여 비율이 낮다는 것은 그만큼 시장의 위험에 적게 노출된다는 것

이며, 효율적인 매매를 했다는 것을 의미이기 때문이다.

2) 평균기간

평균거래기간은 진입부터 청산시까지의 봉의 개수를 각 매매 별로 산출하고,

그 값을 평균한 것으로서 진입 후 청산까지의 평균 보유기간을 의미한다.

매매간 평균기간은 청산 이후부터 신규진입까지의 봉의 개수를 산출하여 그

값을 평균한 것으로서, 청산 후 신규진입 시까지의 매매 중단기간의 평균을

의미한다.

평균 이익(손실)매매기간은 이익(손실)이 발생한 매매의 진입부터 청산시까지

의 봉의 개수를 산출하여 그 값을 평균한 것으로서, 이익(손실)매매의 평균

보유기간을 의미한다. 이익(손실)매매간 평균기간은 이익(손실)이 발생한 매

매들간의 청산시점부터 신규진입 시까지의 봉의 개수를 산출하여 그 값을 평

균한 것이다.

Page 18: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

18

(7) 그래프

1) 누적수익곡선

매매횟수별로 발생하는 손익을 누적한 그래프로서 초기자본금을 제외한 매매

손익만을 의미한다. 곡선상 점은 누적수익곡선상의 신고점이 갱신되면 찍히는

것으로서 테스트 초기는 신고점이 자주 갱신되었지만, 최근에는 누적수익이

증가하지 못하고 있는 현상을 보여준다.

<그림 0-3> 누적수익곡선

2) 종합자산곡선

두 개의 그래프로 구성되며 상단의 경우, 누적손익곡선에 초기자본금을 포함

하여 일간기준으로 작성된 그래프이며 누적손익곡선의 선형회귀선(선형회귀식

포함)과 표준편차채널이 포함되어 있다.

하단은 자산잠식곡선(underwater equity curve)로서 일 단위 거래내역을 기준

으로 자산 신고가 대비 자산감소율을 계산한 것이다. 수익발생일은 “0”되며

직선은 일별 자산감소율의 평균값이다.

Page 19: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

<그림 0-4> 종합자산곡선

3) 월별(주별) 순 손익

매매내역을 월별(주별)로 구분하여 월(주)단위 순 손익을 계산한 것으로서 단

위 별로 수익을 확인할 수 있는 장점이 있다. 다음의 그림은 주별 순 손익그

래프로서 직선은 주별 순 손익의 평균값이다.

<그림 0-5> 주별 순 손익

선형회귀선

자산감소율 평균선

평균선

Page 20: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

20

4) 누적손익 갱신기간 분포도

누적손익 그래프상의 신고점 갱신기간을 매매횟수로 계산하여 빈도수를 도식

한 것으로서, 그림에서 원 부분은 30번 매매만에 누적손익곡선의 신고점이 갱

신된 횟수가 2회라는 의미이다. 사각형 부분은 1번 매매만에 누적손익곡선의

신고점이 갱신된 횟수가 57회라는 의미 이다. 좋은 전략일수록 그래프 하단의

값이 커짐을 알 수 있다.

<그림 0-6> 누적손익 갱신기간 분포도

5) 거래별 손익

매매건별 손익을 “0”선을 기준으로 손실과 이익을 구분하여 도식한 것이다.

그림의 원부분은 매매건별 손익의 표준편차(승수: 3) 범위 밖의 특이치로서

굵은 점으로 도식된다. 전에 설명한 특이치 제거 후 총손익을 계산할 때 사용

된다.

Page 21: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

<그림 0-7> 거래별 손익

6) 손익 분포도

매매건 별 손익을 일정 구간으로 나누어 매매횟수 별로 도식한 그래프이다.

현재 -248,000원 ~ 0원까지의 손실매매가 249회로서 가장 많은 것을 알 수 있

다. 우측의 꼬리가 다소 긴 형태로서 좌측의 손실 부분은 일정 수준에서 제한

되었고, 수익은 크게 발생하는 구조임을 알 수 있다. 실선이 현재의 분포도를

의미한다면, 점선으로 그려진 것이 이상적 손익 분포도라 판단된다.

<그림 0-8> 손익 분포도

Page 22: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

22

7) 효율성 분석

매매건별 진입/퇴출/총효율을 도식한 그래프이다.

<그림 0-9> 효율성 분석

<그림 7-9>는 총효율 그래프로서 “0”선을 기준으로 이익매매와 손실매매가 구

분되어 있으며 각각의 매매효율이 도식된 것을 알 수 있다. 그래프상 -100%인

경우 진입방향과 퇴출이 완전히 반대로 된 매매임을 알 수 있다. 그래프 상의

직선은 평균을 의미한다.

8) 거래별 자본인상율 / 인하율 분석

거래별 자본인상율은 각 매매의 진입 이후 청산시점까지의 발생 가능한 자본

인상액을 진입가격대비 비율로 계산한 것으로서 최대미실현이익(%)와 동일하

다. 거래별 자본인상율과 동일하게 매매 발생순서대로 도식된다.

거래별 자본인하율은 각 매매의 진입 이후 청산시점까지 발생 가능한 자본인

하액을 진입가격대비 비율로 계산한 것으로서, 최대미실현손실(%)과 동일하다.

다만 매매 발생순서대로 도식되는 특징이 있다.

Page 23: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

이 그래프를 통해 어느 시점에서 자본인상(인하)율이 크게(작게) 발생했는지

를 파악할 수 있다.

<그림 0-10> 거래별 자본인하율

<그림 0-11> 거래별 자본인상율

Page 24: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

24

2. 최적화(Optimization)

최적화란 일반적으로 최적의 변수를 찾는 것을 말한다. 시스템을 작성하면 많

은 변수들이 발생한다. 기초적으로 사용하는 DD_Rangebreak(v0.22)를 보더라

도 3가지 변수를 가지고 있다. 나머지 둘을 고정하고 각각을 최적화하는 방법

도 사용되지만, 일반적으로는 세가지 변수를 동시에 최적화하는 방법을 사용

한다. 이럴 경우 하나의 변수당 100번씩 테스트를 한다면 100*100*100=

1,000,000번 테스트를 해야 한다.

상당한 시간이 필요하며, 좋은 성능의 PC도 필요하게 된다. 따라서 테스트를

할 때 우선 각 변수에 대한 값을 드문드문하게 설정하여 최적변수의 범위를

찾고, 조밀하게 최적화를 다시 시행하는 방법이 더 효율적이다.

분간 차트를 이용할 경우에도 최적화 과정이 필요하다. 분차트용 매매 전략이

완성되었다면 5분, 10분 등 몇 분차트가 전략에 최적의 시간대인지 찾는 과정

을 말한다. 또한 틱차트를 이용하는 경우도 있으며 역시 최적 틱 단위를 찾는

과정도 최적화 과정이 된다.

현물일 경우에는 해당 전략에 맞는 종목을 찾는 것도 일종의 최적화라 할 수

있다. 현물 전략에 따라서 잘 맞는 종목이 충분히 다를 수 있다. 따라서 사용

하려는 전략에 잘 맞는 종목들을 찾는 과정도 최적화 과정이라 할 수 있다.

이와 같이 매매 전략을 적용하고, 실제 매매를 하는 과정까지 무수히 많은 최

적화 과정이 남아있다.

본서에서는 변수의 최적화를 통해 최적화를 설명하고자 한다.

Page 25: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

(1) 최적화의 개념과 목적

최적 변수는 과연 무엇일까 부터 생각해보자. 예를 들어 3년간 테스트를 하였

다면, 최적변수는 현재 시점에서 누적수익을 가장 크게 발생시킨 변수를 말하

게 된다. 더 나아가 최근 월에 누적수익을 가장 크게 발생시킨 변수이다.

또 하나는 현재 시점에 크게 문제점이 없다면, 오랜 기간 동안에 수익을 발생

한 변수가 최적 변수이다. 왜냐하면 오랜 기간 동안의 최적 변수는 변화될 가

능성이 적다는 논리가 적용되기 때문이다.

최적화는 최적변수를 통해 미래의 기대수익을 극대화하기 위한 것이다. 그러

나 이것만은 아니며, 사용자가 작성한 전략이 얼마나 범용적으로 사용될 수

있는가를 검증하는데도 활용된다.

그러면 DD_RangeBreak(v0.22)를 이용해서 간단히 테스트를 해보자. 3가지 변

수 중 2가지 변수(len, len1)만 이용해서 최적화를 해보기로 해자.

<표 0-8> 기간별 최적 변수

최적화 기간 적용기간 len atrlen Len1 총손익(원)

2000.1.4~2003.9.30 2003.6.30~2003.9.30 0.37 20 2.7 -294,040

2003.1.4~2003.9.30 2003.6.30~2003.9.30 0.31 20 1.8 223,140

2003.6.30~2003.9.30 2003.6.30~2003.9.30 0.28 20 1.8 574,630

우선 알 수 있는 것은 기간별 최적 변수가 다르다는 것이다. 즉 최적의 변수

가 영원히 최적의 변수일 수 없다. 두 번째로 해당 기간에서의 최적 변수 수

익과 테스트 기간이 다른 최적 변수의 수익이 다르다. 심지어 기간에 따라서

해당 기간에는 전혀 수익을 못 낼 수도 있다.

최적화를 하는 이유는 최적 변수로 미래에 수익을 극대화 하겠다는 것이다.

그런데 위 결과를 보면 최적 변수도 변화하고, 최적 변수가 미래 수익을 보장

하지 못한다는 것을 보여준다. 심지어 손실이 발생할 수 있다는 심각한 문제

가 발생하게 된다.

Page 26: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

26

(2) 범용성 검증

매매 전략이 범용적인가는 상당히 중요한 문제이다. 전략이 미래에도 수익을

낼 수 있는지를 판단할 수 있게 해주기 때문이다. 그러면 범용성은 어떻게 판

단해야 하는가? 다음과 같은 기준들이 많이 사용된다.

전략이 단순하면서도, 수익이 나는 전략이 범용적이다.

시장에 원칙적이고, 논리적인 접근방법으로 설계된 전략이 범용적이다.

많은 시장에서 수익이 나는 전략이 범용적이다.

최적 변수의 변화가 심하지 않은 전략이 범용적이고, 변수가 적고 사용된

지표의 수가 적은 전략이 범용적이다.

최적화를 할 경우, 많은 변수에서 수익이 발생한 전략이 범용적이다.

시스템 트레이딩에서 아이러니는 이동평균선이나 일정기간 고저를 돌파하는

아주 단순한 전략이, 복잡하고 깊은 이론적 지식으로 만들어진 전략보다 더

유용하다는 점이다. 미국의 경우 1년에 수만 가지의 시스템 트레이딩 전략들

이 개발되고 사용되는데, 이중에 대부분의 전략들이 금새 사라진다. 사라지는

원인은 수익이 안 나기 때문이다.

범용성은 시스템 개발에서 아주 중요한 문제이다. 시스템 개발자는 과거 수익의

환상(illusion)을 가지고, 미래의 불확실성에 투자하게 된다. 과거의 결과가 좋

다는 것과 미래에 수익을 발생시킨다는 것과는 괴리가 있다는 것을 명심하자.

최적화 과정은 앞서 설명한 바와 같이 범용성을 검증할 수 있는 수단이 된다. <그

림 2-39 >와 같이 많은 변수에서 수익이 나는 전략이면 범용적인 전략이 되며, <

표 3-18>과 같이 대부분의 시간대에서 수익이 발생하는 경우도 범용적이라 할 수

있다. 현물일 경우 범용적인 전략은 많은 종목에서 수익이 발생할 것이다.

또한 범용적인 전략은 한국시장뿐만 아니라 미국 및 유럽시장 등에서도 유용

하다는 것이다. 실제로 기초 전략으로 사용하고 있는 DD_RangeBreak(v0.22)도

미국시장에서 개발된 전략이며, 한국 시장에도 잘 맞는다는 것을 보여줬다.

Page 27: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

그러면 이제부터 일반적인 변수 최적화 방법에 대해 설명하고, 최적화의 유용

성과 올바른 최적화 방법에 대해서 알아보기로 하자.

(3) 변수 최적화 방법

앞서 설정한 대로 과거의 최적 변수로 미래 수익을 극대화하는 변수 최적화에

서 고려해야 할 부분은 다음과 같은 것들이다.

최적 변수 결정 기준: 무엇을 기준으로 최적 변수를 설정해야 하는가?

최적 변수의 효용성: 전역최대값(global maximum value)을 사용해야 한다.

최적화 기간 설정 방법: In - Sample, Out – Sample, 전진 분석(walk

forward test) 등

1) 최적 변수의 결정 기준

최적의 변수를 결정할 때 어떤 기준을 사용해야 하는 지가 가장 우선적으로

결정해야 할 사항이다. 예를 들어 총손익이 최대값인 변수를 사용해야 하는지,

평균 손익이 최대값인 변수를 사용해야 하는지를 결정하는 과정이다. 많이 사

용되는 결정 항목은 다음과 같다,

총손익: 최대값

평균손익: 최대값

승률: 최대값

손익비, 평균손익비: 최대값

보상비율: 최대값

최대 자본인하액: 최소값

Sharpe Ratio: 최대값

조정된 총손익, 조정된 손익비: 최대값

특이치 제거 후 총손익: 최대값

Page 28: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

28

위 항목들은 주요 시스템 평가 항목으로서 CT 에서는 어느 항목을 기준으로

최적 변수를 설정할 것인가를 선택할 수 있게 되어 있다. 어느 항목을 사용하

더라도 무방한데 제 2 장에 설명한 “최적화” 부분처럼 전역최대값으로 결정해

야 하나, 전체적인 조화(수익과 위험구조)가 더 중요하다.

① 이 책에서 사용되었던 방법은 제 2 장에서 세 개 이상의 변수 최적화

방법과 3장에서 DD_RangeBreak(v0.2)의 변수를 최적화 하는 과정에

서 설명한 방법이다. 각각의 항목별 최적 변수를 결정한 뒤 그래프나

최근 장세 적합성, 전체적인 조화를 판단하여 최적의 변수를 결정하

는 방법으로 추천하는 방법이다.

② 또 다른 방법을 소개하면 Sunny Harris가 개발한 방법으로서 다음과

같은 식으로 최적 변수를 설정한다.

승률 * 손익비 * 평균 손익비 = CPC index > 1.2

예제 전략(제 3 장 DD_RangeBreak(v0.22): 0.4947*1.68*1.72 =

1.43 > 1.2

CPC Index 값이 1.2 보다 크고, 더 큰 값을 가질수록 좋은 전략으로

판단할 수 있다.

③ 또 하나 유용한 방법은 필터를 사용한 것이다. 수익과 손실의 기준을

결정해 놓고 그 값 이상의 변수를 찾아내어서 사용하는 방법이다.

CT의 최적화 보고서를 보면 조건 검색 기능이 있는데, 여기에 일정

조건을 입력하여 조건에 맞는 최적 변수 값을 찾아내는 방법이다.

데이트레이딩 전략의 경우 매매 건수 100 건 이상, 평균 손익비와 손익비 1.4

이상, 승률 45% 이상, 보상 비율 5 이상 등이 일반적인 필터 조건이 될 것이다.

Page 29: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

<그림 0-12> 조건검색 설정

위와 같은 조건으로 DD_RangeBreak(v 0.22) 전략을 다시 최적화 해보자

len: 0.3 ~ 0.4, 증감 0.01

len1: 1.5 ~ 3.5, 증감 0.1

위 최적화를 실시하면 전체 200 개 테스트가 실시되며, 대부분의 결과(190

개)가 위 조건을 충족하게 된다. 따라서 우선적으로 전략의 범용성을 확인할

수 있게 되며, 추가 조건을 설정하거나 조건을 강화시켜서 테스트를 할 필요

도 있을 것이다.

2) 최적 변수의 효율성

최적 변수의 효율성은 시스템의 범용성과도 통하는 부분이다. 즉 범용적인 전

략이면 많은 변수에서 수익이 발생하기 때문에, 어떤 변수를 사용하더라도 최

악의 상태인 시스템 붕괴나 과 최적화 등의 문제가 발생하지 않을 것이기 때

문이다. 효율성의 핵심은 전역최대값을 사용하는 것이다.

Page 30: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

30

전역최대값(Global Maximum Value): 넓은 범위에서 수익이 발생하는 구간

중 최대값. 따라서 최적 변수 전후의 값들에서 모두 수익이 발생함.

국소최대값(Local Maxima Values): 좁은 범위에서 수익이 발생하거나, 하

나의 변수 만이 최대값을 가지는 경우로서 최적 변수로 사용할 수 없다. 전

후의 변수가 최적의 변수와 수익 격차가 심하게 발생하거나, 수익이 발생하

지 않는 경우의 변수값

이러한 전역최대값을 선택하는 방법으로 제 2 장에서 설명한 3D 그래프가 널

리 사용되고 있다.

전역최대값을 사용해야 하는 이유는 따라 변수 값이 바뀌는 경우에도 수익이

발생하기 위해서는 넓은 범위의 수익 가능 구간에 최적 변수가 포함될 확률이

높아야 하기 때문이다.

3) 최적화 기간 설정 방법

최적화 기간 설정 방법은 어느 기간 동안을 최적화하고, 어느 정도 기간 동안

이 변수를 적용해야 하는지를 결정하는 것이다. 앞서 최적화를 할 때 2000년

1월 4일부터 2003 년 9월 30일까지의 전체 테스트 기간을 사용하였다.

이 경우에는 9월 30일 이후부터 가상매매(paper trading)을 하게 되는데, 이

때부터가 최적 변수가 계속 유용한지를 확인하는 과정이 된다.

In, Out-Sample방법은 전체데이터를 크게 2~3구간으로 구분하여 테스트를 하

는데, 과거 기준은 과거 변수가 현재 구간에 잘 맞는 변수인지를 보는 방법이

고, 현재 기준은 현재의 변수가 과거에도 수익이 났는지를 보는 방법이 된다.

중간 기준은 중간 시점에서의 최적 변수가 과거와 현재에도 수익을 냈는지를

보는 방법이 된다.

전진분석방법은 전체 기간을 일정 구간으로 세분하고 최적화 및 적용을 반복

하는 방법을 사용하게 된다. 최적화를 중첩해서 하느냐, 현재까지의 기간을

Page 31: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

모두 하느냐에 따라 방법의 차이가 발생한다.

<표 0-9> 테스트 및 최적화 방법

전체 기간 (2000.1.4 ~ 2003.9.30)

In-Sample, Out–Sample Method: 테스트 기간을 크게 구분하여 In-Sample 기간 동안 최적화하여 Out-Sample에 적용해서 수익 및 위험 구조가 유사한지 평가

과거 기준

In-Sample Out-Sample

현재 기준

Out-Sample In-Sample

중간 기준 Out In – sample Out

전진 분석(Walk Forward Test): 일정 구간으로 세분하고 최적화 그 다음 기 적용 최적화를 반복하는 방법

회전 방식

최적화 다음 기 적용 최적화 다음 기 적용

고정 방식

최적화 다음 기 적용 전체 최적화 다음 기 적용

중첩 방식

최적화 다음 기 적용 일정 기간 추가 최적화 다음 기 적용

우선 In, Out-Sample방법을 이용해서 테스트 및 최적화를 해보기로 하자.

Page 32: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

32

①In, Out-Sample방법

과거/현재/중간기준 세가지 방법을 모두 테스트 해보기로 하자. 최적화 범위

는 다음과 같이 설정하였다.

len: 0.2~0.4, 증감 0.01

len1: 1.5~3.5, 증감 0.1

테스트 결과는 <표 7-10, 11, 12>와 같다.

과거 기준으로 최적화 및 테스트를 시행하고 현재까지 적용해보면, 수익은 발

생하지만 In-Sample기간 보다 상당히 뒤진 결과를 나타내고 있다. 전체 기간

으로 보았을 경우에도, 전체 기간을 최적화 한 결과 값(9,300만원)보다 나쁘

다는 것을 알 수 있다.

<표 0-10> In, Out-Sample 과거기준 방법

평가 항목 In - Sample Out - Sample 전체

총 손익 70,920.66 16,365.46 89,401.42

평균 손익 154.51 37.36 99.45

최대 손실 -1,214.98 -828.14 -1,214.98

총 매매수 459 438 899

연속 이익 매매수 9 6 9

연속 손실 매매수 6 7 7

최대 자본 인하액 -3,139.57 -4,352.89 -4,352.89

승률 53.81 45.43 49.72

손익비 2.18 1.25 1.71

평균손익비 1.87 1.5 1.73

보상 비율 22.59 3.76 20.54

테스트 기간

사용 변수

2000.1.4 ~ 2001.12.28

0.4, 20, 2.7

2002.1.4 ~ 2003.9.30

0.4, 20, 2.7

2000.1.4 ~ 2003.9.30

0.4, 20, 2.7

주) 보유해야 할 바 수: 50 (단위: 천원, %, 배)

Page 33: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

<표 0-11> In, Out-Sample 현재기준 방법

평가 항목 Out - Sample In - Sample 전체

총 손익 39,712.24 28,271.47 70,486.51

평균 손익 68.23 55.98 64.73

최대 손실 -946.49 -626.51 -946.49

총 매매수 582 505 1,089

연속 이익 매매수 7 5 7

연속 손실 매매수 8 8 8

최대 자본 인하액 -4,669.67 -4,259.37 -4,669.67

승률 45.53 44.55 45.18

손익비 1.44 1.43 1.45

평균손익비 1.72 1.78 1.76

보상 비율 8.5 6.64 15.09

테스트 기간

사용 변수

2000.1.4 ~ 2001.12.28

0.31,20,2.2

2002.1.4 ~ 2003.9.30

0.31,20,2.2

2000.1.4 ~ 2003.9.30

0.31,20,2.2

주) 보유해야 할 바 수: 50 (단위: 천원, %, 배)

<표 0-12> In, Out-Sample 중간기준 방법

평가 항목 Out–Sample(1) In–Sample Out–Sample(2) 전체

총 손익 37,404.56 37,762.93 3,592.00 80,547.93

평균 손익 134.07 68.54 17.02 76.86

최대 손실 -1,320.70 -804.05 -535.04 -1,320.70

총 매매수 279 551 211 1,048

연속 이익 매매수 6 6 4 6

연속 손실 매매수 6 5 10 10

최대 자본 인하액 -4,509.68 -4,654.47 -3,364.46 -4,654.47

승률 53.05 47.37 40.76 47.61

손익비 1.66 1.49 1.14 1.5

평균손익비 1.47 1.65 1.65 1.65

보상 비율 8.29 8.11 1.07 17.31

테스트 기간

사용 변수

2000.1.4 ~ 2000.12.28

0.33,20,2.6

2001.1.4 ~ 2002.12.28

0.33,20,2.6

2003.1.4 ~ 2003.9.30

0.33,20,2.6

2000.1.4 ~ 2003.9.30

0.33,20,2.6

주) 보유해야 할 바 수: 50 (단위: 천원, %, 배)

Page 34: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

34

현재기준 방식 또한 과거수익보다 상당히 뒤떨어진 결과를 보여 결국 전체 수

익이 좋지 않다. 중간 기준으로 하게 되면 과거와 중간은 거의 유사한 수익을

보였지만 현재(Out-Sample(2))는 수익이 상당폭 감소되는 양상을 보인다. 전

체적으로도 수익이 과거 기준(<표 7-10>, 8,940만원)보다 줄어드는 모습이다.

결국 In, Out-Sample방법으로 최적화 및 테스트를 하더라도 최적 변수는 변화

되며 수익구조도 유지되지 않는다는 것을 알 수 있다. 이러한 현상은 과거 기

준 및 현재 기준과 전체 최적화의 누적수익곡선을 살펴보면 분명해진다.

<그림 0-13> 누적수익곡선 비교

0.00

10000.00

20000.00

30000.00

40000.00

50000.00

60000.00

70000.00

80000.00

90000.00

100000.00

1 213 425 637 849 1061 1273 1485 1697 1909 2121 2333 2545 2757 2969 3181 3393

과거기준전체 0.37,2.7

현재기준

현재기준 누적수익곡선은 최적화를 한 기간 동안의 수익곡선(수익선 오른쪽 편)

이 가장 상승 속도 및 선형성이 강하다는 것을 보여주고 있다. 이 변수로 과거

에 적용해보면 수익곡선의 선형성 및 상승 속도가 약화되는 것을 보여주고 있다.

반면 과거 기준으로 최적화 및 테스트를 하였을 경우, 전체 기간 최적화 결과

보다 상승속도 및 선형성이 더 좋다는 것을 알 수 있으나, 현재 시점(수직선

오른쪽)에서는 과거의 선형성이 유지되지 못한다는 것을 알 수 있다. 특히 화

살표로 표시되는 부분에서는 수익곡선의 하락세가 가장 크게 발생하게 된다.

따라서 In, Out-Sample 방법으로 테스트를 하였을 경우에 미래 수익이 테스트

를 한 구간의 수익구조를 유지하지 못한다는 것을 알 수 있다.

Page 35: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

결국 최적화의 유용성에 대한 의문으로 다시 연결되는데, 전진 분석에 대한

결과와 함께 최적화 유용성을 다시 한번 생각해보도록 하자.

② 전진분석

전진 분석을 통해서 테스트를 하는 이유는 수익이 발생하는 변수 범위를 결정

하거나, 현재부터 전진 분석을 반복적으로 시행할 경우에 수익 구조를 유지하

는 목적으로 사용된다.

6개월 단위 고정방식 전진분석을 해보기로 하자.

<표 0-13> 고정방식 전진분석 결과 테스트

기간

적용

기간 len len1 총손익

매매수승률

최대자본

인하액

보상

비율 2000.1~

2000.6 2000.1~

2000.60.21 3.3 34,876.78 161 52.17 -4480.53 7.78

2000.1~ 2000.6

2000.7~ 2000.12

0.21 3.3 12,328.21 185 48.65 -4709.88 2.62

2000.1~ 2000.12

2001.1~ 2001.6

0.36 2.9 8,122.65 129 49.61 -2282.12 3.56

2000.1~ 2001.6

2001.7~ 2001.12

0.2 3.3 1,530.81 189 39.15 -3258.34 0.47

2000.1~ 2001.12

2002.1~ 2002.6

0.4 3.2 12,794.00 124 52.42 -3347.91 3.82

2000.1~ 2002.6

2002.7~ 2002.12

0.3 3.2 6,316.23 155 49.68 -4976.75 1.27

2000.1~ 2002.12

2003.1~ 2003.6

0.27 2.5 2,368.33 158 44.3 -4847.55 0.49

2000.1~ 2003.6

2003.7~ 2003.9

0.31 1.7 -783.91 77 29.87 -2214.29 -0.35

주) 총손익 기준으로 최적화 실행(단위: 천원, %, 배)

전진분석의 특성상 처음기의 테스트 기간과 적용기간은 동일하며, 다음기부터

는 6개월씩 추가하여 테스트하고, 다음 6개월간 적용한 결과이다.

이러한 전진 분석을 사용할 경우에는 6개월 단위로 최적화를 반복적으로 하여

계획적인 투자결정이 가능해 진다.

len은 0.21~0.4로 대부분이 최적화 범위(0.2~0.4)에 있으며, len1의 경우에는

Page 36: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

36

1.7에서 3.3으로서 역시 대부분 최적화 범위(1.5 ~ 3.5)에 속하는 것을 알 수

있다. 하지만 일정한 패턴이 있다거나 반복적이지 않다는 것을 알 수 있다.

만약 반복적인 결과가 나온다면 그 변수가 유용한 변수라는 결론을 얻을 수

있을 것이다.

또한 총 손익을 보면 장세에 따라 총손익 편차가 심하고, 심지어 (-)를 기록한

적도 발생하는 등 문제점이 있다는 것을 알 수 있다. 결국 전진 분석으로서도

미래 수익을 보장하거나 유용한 변수를 결정하기 힘들다는 결론을 얻을 수 있다.

(4) 최적화의 유용성

최적화는 유용한 것인가에 대해 보다 자세히 연구해보자. 우선 다음과 같은

질문에 답을 해보기로 한다.

1) 전진분석을 통한 일정기간 동안의 최적변수는 이후 동일기간에도 유용한가?

2) 유용하다면 그 기간은 어느 정도의 기간인가?

3) 전진 분석 방법 중 중첩 방법이 더 유용한가?

4) 최적 변수들이 일정하게 유지되는 선형성을 가지고 있는가? 주기성이 있는가?

5) 최적화 변수가 그 다음 구간에서 어느 정도 성과를 내는가?

이것들을 확인하기 위해서

기준은 전체 기간의 최적화 수익곡선

1개월, 3개월, 6개월씩 전진 분석 수익곡선

6개월 최적화, 3개월 중첩방식 수익곡선

을 비교하고 각각 최적 변수의 흐름을 분석한다.

Page 37: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

<그림 0-14> 최적화 결과비교

-

20,000

40,000

60,000

80,000

100,000

120,000

140,000

160,000

180,000

200,000

Jan-00 Jul-00 Feb-01 Aug-01 Mar-02 Sep-02 Apr-03 Nov-03 May-04

최대6

최대3

최대1

wf6

wf3

wf1

6-3wf

전체기간

주) 최대 6, 3, 1은 최적변수에 의해 도출된 수익곡선이며, WF 6, 3, 1 은 전진 분석을 통한

수익 곡선, 6-3 WF은 중첩 전진 분석

비교결과를 보면, 우선 전체기간 최적화 수익곡선은 중심선 역할을 하고 있다.

이 선을 중심으로 위에 위치한 선들은 최적변수에 의해 도출된 것이며, 아래

에 위치한 선들은 전진 분석의 결과들이란 것을 알 수 있다.

우선 최적변수에 의해 도출된 수익 곡선을 보자. 이 선들은 시스템이 사후적

으로 최적 변수를 적용하여 얻어낸 수익 곡선으로서 가장 이론적인

(theoretical)수익 곡선이라 할 수 있다. 최적화 기간이 짧을수록 높은 이론

적인 수익곡선을 나타낸다(1개월 > 3개월 > 6개월).

그럼 이제 전진 분석 결과를 보기로 하자. 우선 전체를 최적화한 수익 곡선

보다 기울기가 낮다는 것을 알 수 있다. 그 다음으로 6개월 > 3개월 > 1개월

순의 수익곡선크기를 보여주고 있다. 따라서 짧은 기간으로 전진 분석을 하는

방법은 그다지 좋지 않다는 추정이 가능하다. 특히 원호로 표시된 부분처럼

짧은 기간 전진분석 방법일수록 수익곡선이 하향하거나, 등락이 심하게 발생

하는 것을 알 수 있다.

Page 38: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

38

그러면 중첩 방법은 어떨까. 중첩 방법은 과거 데이터의 일부를 포함하여 테

스트 하므로 유용성을 기대하였지만 결과는 6개월 고정 방법과 다를 바가 없

었다. 그럼 이제 변수들의 변화 정도를 살펴보자.

<그림 0-15> 1개월 단위 최적변수

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0 5 10 15 20 25 30 35 40 45 50

<그림 0-16> 6개월 단위 최적변수

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0 1 2 3 4 5 6 7 8 9

<그림 7-15, 16>을 보면 1개월이나 6개월 단위 최적변수 값의 변화가 무작위

적임을 짐작할 수 있다.

1개월 단위 최적변수값을 연의 검증(run test)을 통해 무작위성을 측정한 결

과 99%신뢰수준에서 무작위적임을 알 수 있었다. 즉, 직전기간의 최적 변수와

Page 39: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

다음 기간의 최적 변수간 상관관계가 매우 약하다는 것을 나타내며, 특히 전전

분석의 기간이 늘어나더라도 이러한 현상이 마찬가지라는 결론을 얻게 된다.

위의 결과를 종합해 보면, 앞서 설정한 질문에 답을 얻을 수 있다.

1) 전진 분석으로서도 최적화의 유용성을 검증할 수 없었다. 따라서 최적

화가 미래 수익에 긍정적인 결과를 도출한다고 할 수 없다.

2) 최적화 기간은 짧을수록 수익곡선이 좋지 않다.

3) In, Out-Sample 방법이나 전진 분석 방법 등 다양한 방법이 있으나,

방법에 따른 최적화 유용성은 차이가 없다.

4) 도출된 변수는 일정하고, 주기적이라고 할 수 없으며, 선형성을 갖는다

고 할 수가 없다.

5) 직전 구간에 최적화된 변수를 다음 기에 적용할 경우, 전체 변수 조합

에서 최하위를 차지하는 경우는 한 차례도 없으나, 최상위를 차지하는

경우도 없었다.

그러면 최적화가 필요가 없다는 것인가? 여기에 대해 다시 한번 생각해보자.

(5) 최적화에 대한 올바른 견해

최적화를 통한 변수 선택과 해당 변수를 이용한 미래 수익 극대화는 불가능하

다는 것을 알 수 있었으며, 최적 변수도 기간에 따라 추세가 없이 형성된다는

결론을 얻었다. 따라서 현재 시점에 잘 맞는 최적 변수를 찾는 작업은 무의미

한 작업이라는 것을 알 수 있다.

이러한 현상으로 인하여 최적화를 아예 하지 않거나, 수익이 발생하지 않는 변수

를 그 다음 기에 적용하는 등 역 최적화(de-optimization)를 선택하기도 한다.

하지만 시스템 트레이딩 전략의 관점에서 최적화는 다음과 같은 사항을 알 수

있게 한다.

Page 40: 제 7 장 - deri.co.krC1%A6_7_%C0%E5.pdf · 제 7 장 평가 및 최적화 투자의 핵심 원칙: 매매전략의 범용성 (Robust)을 확인하라. 시스템 트레이딩의 개발과정은

40

In, Out-Sample방법이나 전진분석을 통해서 기간에 따라 변수값이 안정적

으로 바뀌는 변수 안정성(parameter stability)이 검증된다면, 해당 전략은

범용성(robust)과 유용성이 크다고 할 수 있다.

In, Out-Sample방법이나 전진분석에서 보여준 것처럼 일정 구간에 최적

변수는 결국 최적 변수가 아닐 가능성이 크다. 충분히 긴 기간(상승, 하락,

횡보, 변동성 확대구간, 변동성 축소구간 등을 포함한)을 통해 도출된 변수

가 시간 안정성(time stability)을 가진 변수이며, 이 변수가 최적의 변수일

것이다.

따라서 본서에서는 최적화에 대해 다음과 같은 의견을 제시한다.

1) 최적화는 미래 수익 극대화를 위해서가 아니라, 시스템의 범용성 및 유

용성의 검증에 국한해서 사용하는 것이 바람직하다.

2) 최적화는 짧은 기간을 사용할 경우 더 큰 문제점을 가지게 되므로 상승,

하락, 횡보, 변동성 확대, 축소 구간이 모두 포함된 긴 기간을 테스트

하는 것이 바람직하다.

3) 최적화를 통해 수익 곡선의 선형성, 월별 수익의 안전성 등을 분석하는

것이 더 중요하다.

4) 최적 변수는 다음 기에 최적의 변수는 아니지만 최악의 변수도 아니다.

따라서 전진 분석을 통해 도출된 최적 변수가 최악의 변수 범위에 들지

않는다면, 최적 변수로 사용하게 된다.

5) 전역최대값인지를 판단하는 것이 더 중요하다.