수식관리자

1. 화면설명
차트툴바의 버튼을 클릭하면 수식관리자 창이 팝업됩니다.
사용자 자신만의 '기술적 지표, 신호검색, 시스템트레이딩, 강세약세, 일반함수'를 만들 수 있습니다.
기본적으로 제공하는 지표나 신호검색 등은 수정이 불가능하나, 사용자가 저장한 항목은 수정이 가능합니다.
2. 사용방법
상단 메뉴
[복사] [이름바꾸기] [삭제] 메뉴는 사용자가 생성한 수식에서만 작동합니다.
 : 복사하려는 수식을 선택하여 [복사] 버튼을 누르면, 메뉴창의 '사용자 지표/검색/전략/강세약세/함수' 항목에 복사한 수식이 새롭게 추가됩니다.
 : 사용자 수식을 선택 후 변경하고자 하는 이름으로 변경 가능합니다.
 : 삭제하려는 수식을 선택 후 [삭제] 버튼을 누르면 해당 수식이 삭제됩니다.
 : 수식을 새롭게 작성하고자 할 때 새로 만들기 버튼을 누르면 화면이 초기화되며 편집을 할 수 있는 상태가 됩니다.
 : 사용자 수식의 경우에만 해당하며 수식을 새로 작성 및 편집 후에 저장할 때 사용합니다.
 : 기술적 지표 및 사용자 함수를 복사하여 응용하거나, 새로이 작성할 경우 오류검증 기능을 수행합니다.
해당 수식이 불완전하거나 변수가 부적절하면 오류 메세지를, 완전한 수식이면 확인 메세지 창이 팝업됩니다.
 : 기본적으로 제공되는 내장함수의 도움말을 화면에 보여줍니다.
기술적지표 탭
기술적지표 목록
Tree 구조로 되어 있으며, [추세지표] [변동성지표] [모멘텀지표] [시장강도지표] 등의 기본적으로 제공하는 지표는 복사만 가능하고 수식 수정이 불가능합니다.
[사용자지표]는 사용자가 직접 작성한 수식을 저장합니다.
기술적지표 설정 - 수식 탭
하나의 지표에 다섯 개의 수식을 지원하며, 수식탭 영역에 지표 수식을 작성 및 확인 할 수 있습니다.
한글 함수화 기능
수식 입력란에 영문표시 또는 한글표시 모두 가능합니다.
예를 들어 ‘C’(종가를 의미함) 또는 한글로 ‘종가’로 입력 가능합니다.
사용자가 쉽게 함수 로직을 입력할 수 있으며, ‘)’를 입력하면 함수의 로직이 끝났다는 의미입니다.
주석기능
수식 입력란에 ‘//’를 입력한 후 원하는 주석을 달 수 있습니다.
단 한 줄 이상을 넘길 수 없습니다.
함수로직 표시기능
함수의 로직을 쉽게 알 수 있도록, 함수명 입력 후 띄어쓰기 없이 ‘(‘를 입력하면 수식 탭 하단에 함수 로직이 나타납니다.
상단에 사용자가 함수를 입력하면 하단에 표기됩니다.
만일 함수로직이 끝났음을 표시하는 ‘)’를 입력하고서도 하단의 표시가 사라지지 않는다면 함수의 로직이 틀렸다는 의미이므로, 다시 한번 수식을 확인하기 바랍니다.
상단메뉴의 [수식검증] 버튼을 사용하지 않아도 기본적으로 수식에 오류가 있는지 편리하게 체크할 수 있습니다.
기술적지표 설정 - [지표조건설정] 탭
각 수식에 해당하는 기본 변수값을 입력하거나 편집할 수 있습니다.
기술적지표 설정 - [라인설정] 탭
해당 개별 지표의 [라인] [라인]보기 [색상] [스타일] [너비]를 설정할 수 있습니다.
라인[유형] 설정을 [막대]로 설정하면, 비교 기준에 따라 [상승] [하락] 색상을 설정할 수 있으며,
라인[유형] 설정을 [선]으로 설정하면, 사용자가 설정한 기준값에 따라 [과열] [침체] 색상을 설정 할 수 있습니다.
기술적지표 설정 - [기준선설정] 탭
해당 지표의 의미 있는 기준선을 추가/삭제, 라인 설정을 할 수 있습니다.
기술적지표 설정 - [스케일] 탭
해당 지표가 차트에 구현 될 때의 Y축 스케일을 설정할 수 있습니다.
기술적지표 설정 - [설명] 탭
지표에 대한 설명을 확인 및 작성 할 수 있습니다.
신호검색
신호검색은 지표/전략/캔들 검색을 저장하는 영역입니다.
신호검색 목록
기본 신호검색과 [사용자검색]으로 구분됩니다.
기본 신호검색은 수정이 불가능하며, 사용자가 작성한 항목은 [사용자검색] 폴더에서 확인할 수 있습니다.
사용자검색 설정
[수식] 탭 : 수식을 나타내며, 기본신호검색은 수정이 불가하나, [사용자검색]은 가능합니다.
[지표변수] 탭 : 조건 검색의 변수를 설정 할 수 있습니다.
[설명] 탭 : 사용자가 작성한 설명을 확인 및 변경 할 수 있습니다.
시스템트레이딩
시스템트레이딩 목록
기본 시스템트레이딩 전략과 [사용자전략]으로 구분됩니다.
기본 시스템트레이딩 전략은 수정이 불가능하며, 사용자가 작성한 [사용자전략]은 사용자 전략 폴더에서 확인할 수 있습니다.
사용자전략 설정
[수식] 탭 : 매매전략의 수식을 [매수진입] [매수청산] [매도진입] [매도청산] 별로 작성/확인 할 수 있습니다.
[지표변수] 탭 : 매매전략의 지표변수를 설정할 수 있습니다.
[설명] 탭 : 사용자가 작성한 설명을 확인 및 변경 할 수 있습니다.
강세약세
약세 목록
기본 강세약세와 [사용자강세약세]로 구분됩니다.
기본 강세약세는 수정이 불가능하며, 사용자가 작성한 항목은 [사용자강세약세] 폴더에서 확인할 수 있습니다.
사용자강세약세 설정
[수식] 탭 : 수식을 나타내며, 기본 강세약세는 수정이 불가하나, [사용자강세약세]는 가능합니다.
[지표변수] 탭 : 강세약세의 지표변수를 설정 할 수 있습니다.
[설명] 탭 : 사용자가 작성한 설명을 확인 및 변경 할 수 있습니다.
일반함수
일반함수는 기술적지표에서 자주 쓰이는 함수를 모아서 저장하는 영역입니다.
일반함수 목록
기본함수와 [사용자함수]로 구분됩니다.
기본함수는 수정이 불가능하며, 사용자가 작성한 함수는 [사용자함수] 폴더에서 확인할 수 있습니다.
사용자함수 설정
[수식] 탭 : 수식을 나타내며, 기본함수는 수정이 불가하나, [사용자함수]는 수정이 가능합니다.
[설명] 탭 : 사용자가 작성한 설명을 확인 및 변경 할 수 있습니다.


3. 사용자 정의 함수/지표/전략 만들기 및 적용
지표 및 전략 작성 시 자주 사용하는 함수를 정의하여 손쉽게 이를 호출하여 쓸 수 있습니다.
사용자 함수 작성 방법
작성하고자 하는 함수의 로직을 정리합니다.
로직의 함수명을 정합니다.
예시) MAO
함수 로직을 명확히 합니다.
예시) 단기간의 지수이평 - 장기간의 지수이평
로직을 구체화 합니다.
로직에 필요한 데이터/함수/변수를 정합니다.
예시) 필요데이터 : 종가, 필요함수 : 지수이평, 필요변수 : 단기,장기
로직을 시스템언어로 변형합니다.
필요 데이터 종가를 'C' 로,
필요함수 지수이평을 'avg'로,
필요변수 단기,장기를 'short,long'으로,
수식에 필요한 함수 단순이평의 표기법을 'avg(C,short)'으로 바꾸어 줍니다.
[수식관리] 창에서 시스템 언어로 작성합니다.
차트툴바의 버튼을 클릭하여, [수식관리] 창을 호출합니다.
[수식관리] 창의 좌측메뉴에서 [일반함수] → [사용자함수]를 선택합니다.
상단의 [새로만들기] 버튼을 클릭하여, 수식을 작성할 준비를 합니다.
[함수명] 입력란에 [함수명]을 함수 표기 방식으로 입력합니다.
함수명 표기 방식은 함수명옆에 괄호 '()' 를 입력하면 됩니다.
이 괄호안에 수식에 들어갈 변수를 기재합니다.
변수가 두개 이상일 때는 변수 사이에 ',' 로 이용하면 됩니다.

예시) 함수명은 MAO, 변수는 short,long 두개이므로, 함수 표기 방식은 'MACD(short,long)'이 됩니다.

사용자 함수 명에서 자주 하는 실수들
사용자 함수 명에는 특수 문자를 삽입하지 않아야 한다.
사용자 함수 명을 쓸때 첫 글자에 숫자 를 기입하지 않아야 한다.
사용자 함수 명을 쓴 후 괄호입력 '( )' 을 반드시 하여야 한다.
괄호안에는 사용자 수식에서 사용되는 변수를 반드시 기입해야 한다.
변수가 없는 경우에는 변수 기입없이 '()'로 기입한다. Ex: AD()
수식 입력란에 수식을 입력합니다.
시스템 언어를 이용하여 수식을 입력합니다.
수식 입력 후 '//' 기재하면, 한 줄의 주석(설명)을 달 수 있습니다.
수식 이용에 이용되는 기본함수 목록은, 상단메뉴의 [함수설명] 버튼을 선택하면 나타나는 하단의 도움말에 있습니다.

예시) 수식을 'avg(C,short)-avg(C,long)으로, 주석을 "// 단기이평-장기이평" 으로 기재하였습니다.

상단 메뉴의 [수식검증] 버튼을 클릭하여 수식의 이상유무를 확인합니다.
설명탭에 함수에 대한 [설명]을 작성합니다.
모든 기재사항을 확인한 후 상단 메뉴의 [작업저장] 버튼을 선택하여 저장합니다.
저장한 함수는 사용자함수 리스트에서 확인할 수 있습니다.
사용자지표 작성 방법
자신의 로직을 구체화 합니다.
로직의 지표명, 필요한 함수/데이터/변수/기준선을 정리합니다.
예시) 필요함수 : 사용자정의 MAO, MAO의 smooth 방법인 단순이평, 필요변수 : 단기,장기, 시그널
로직을 시스템언어로 변형합니다.

예시) 필요함수 사용자 정의 MAO을 "MAO"로, 시그널 함수 단순이평을 "avg"로, 필요변수 단기, 장기, 시그널를 "short,long,signal"로, 수식에 필요한 함수 MAO 표기법을 "MAO(short,long)",단순이평의 표기법을 "avg(MAO(short,long),signal)"로 바꾸어 줍니다.

[수식관리] 창에서 시스템 언어로 작성합니다.
차트툴바의 버튼을 클릭하여, [수식관리] 창을 호출합니다.
[수식관리] 창의 좌측메뉴 중 [기술적지표] → [사용자지표] 탭를 선택합니다.
상단의 [새로만들기] 버튼을 클릭하여, 수식을 작성할 준비를 합니다.
[지표명] 입력란에 [지표명]을 입력합니다.
[수식] 입력란에 수식을 입력합니다.
시스템 언어를 이용하여 수식 탭별로 지표 수식을 입력합니다.
(수식은 최대 5개까지 지원합니다.)
수식탭 별로 개별 수식명과 변수를 입력할 수 있습니다.
수식탭에서의 변수는 차트의 범례에 표시되며, 변수 입력은 "%변수%" 형식으로 작성해야 합니다.
수식 작성시 함수명기재후 괄호를 입력하면, 함수표기팁에 그 표기형식이 나타납니다.
수식 입력 후 "//" 기재하면, 한 줄의 주석(설명)을 달 수 있습니다.
수식 이용에 이용되는 기본함수 목록은, 상단메뉴의 함수 설명을 선택 시 나타나는 하단의 도움말에 있습니다.

예시)
[수식1] 탭의 [수식 이름]에 "MAO %short%,%long%",
수식 입력란에 수식을 "MAO(short,long)" 입력
[수식2] 탭의 [수식 이름]에 "시그널 %signal%",
수식 입력란에 수식을 "avg(MAO(short,long),signal)",
주석을"// MAO의 시그널"로 기재하였습니다.
지표 변수를 입력합니다.
상단 메뉴의 [수식검증] 버튼을 클릭하여 수식의 이상유무를 확인합니다.
라인을 설정합니다.

예시) MAO 라인 설정을 보이기 표시, 선유형, 초록색, 0기준값에 다른 과열 침체 색상을 설정하였습니다.

각 수식 별로 라인을 설정할 수 있으며, [선]형일 경우는 기준값에 따른 [과열] [침체] 색상을 설정할 수 있습니다.
지표에 기준선을 추가합니다.

예시) MAO의 지표에 의미있는 기준값을 0으로 설정하여 기준선 추가 및 [색상] [스타일] [너비]를 설정하였습니다.

스케일 및 설명을 작성합니다.
모든 기재사항을 확인한 후 상단 메뉴의 [작업저장] 버튼을 클릭하여 저장합니다.
저장한 지표는 [사용자지표] 리스트에서 확인할 수 있습니다.
사용자지표 적용방법
자신이 만든 기술적지표는 좌측 메뉴의 [기술적지표] 탭 내에 [사용자지표] 폴더 목록에 나타납니다.
이를 차트에 적용시켜서 확인하고자 할 때는 지표명을 클릭 또는 drag & drop 으로 차트에 적용시킵니다.
적용 후, 지표의 변수를 바꾸고자 한다면, 지표 범례 또는 지표선을 더블클릭하여 [지표 설정] 창에서 변수를 변경합니다. 변경 후 이를 차트의 범례에서 변경된 변수를 확인할 수 있습니다.
변경된 변수를 확인 후 이 변수를 기본값으로 설정하고 싶은 경우, [지표 설정] 창에서 [기본값으로 저장]을 선택하고, [확인] 버튼을 클릭하면 됩니다.
사용자전략 작성 방법
사용자가 원하는 매매로직을 구체화하여 시스템 언어를 가지고 시스템을 구현합니다.
이를 임의의 종목에 적용시켜 얻어진 수익을 최대화 하기 위해 지표/변수/시간 최적화를 실행시켜 이익을 극대화 합니다.
자신의 로직을 구체화 합니다. 전략로직의 이름, 매매로직, 필요한 함수/데이터/변수를 정리합니다.

예시) 전략명 : ROC와 0선 교차
매매로직 : ROC가 0선을 상향 돌파시 매수
필요함수 : 상향돌파,하향돌파, ROC
필요변수 : 적용기간

로직을 시스템언어로 변형합니다.

예시) 매수 : ROC가 0선 상향 돌파시
A=ROC(C,적용기간);
Crossup(A,0)
매도 : ROC가 0선 하향 돌파시
A=ROC(C,적용기간);
Crossdown(A,0)

수식 관리자에 시스템 언어로 작성합니다.
차트툴바의 버튼을 클릭하여, [수식관리] 창을 호출합니다.
[수식관리] 창의 좌측메뉴 중 [시스템트레이딩] → [사용자전략] 탭를 선택합니다.
상단의 [새로만들기] 버튼을 클릭하여, 수식 작성할 준비를 합니다.
[전략명] 입력란에 전략명을 입력합니다.
[수식] 입력란에 포지션별로 수식을 입력합니다.
시스템 언어를 이용하여 포지션 탭 별로 매매 수식을 입력합니다.
(포지션은 매수진입/매수청산/매도진입/매도청산)
포지션 수식탭 별로 수식과 신호 색상을 입력할 수 있습니다.
수식 작성시 함수명 기재후 괄호를 입력하면, 함수표기팁에 그 표기형식이 나타납니다.
수식 입력 후 " // " 기재하면, 한 줄의 주석(설명)을 달 수 있습니다.
멀티 라인 수식 작성이 가능합니다.
수식 이용에 이용되는 기본함수 목록은, 상단메뉴의 [함수설명]을 클릭하면 나타나는 하단의 도움말에 있습니다.

예시) [전략명]을 ROC와 0선 교차, 매매수식을 포지션별로 작성하였습니다.
[매수진입]과 [매도청산] 포지션 수식을 "A=ROC( 종가,적용기간); 상향돌파(A,0)"
주석을 이용하여 "//A는 ROC 를 의미 " "//ROC지표가 0을 상향돌파를 의미함.
으로 기재하였습니다.

매매전략 변수를 입력합니다.
매매전략 [설명]을 작성합니다.
상단 메뉴의 [수식검증] 버튼을 클릭하여 수식의 이상유무를 확인합니다.
모든 기재사항을 확인한 후 상단 메뉴의 [작업저장] 버튼을 클릭하여 저장합니다.
저장한 전략은 [사용자전략] 리스트에서 확인할 수 있습니다.
[사용자전략]을 저장하고, 암호화 하려면 상단메뉴의 [암호설정] 버튼을 클릭합니다.
사용자전략 적용 방법
시험 적용
자신이 만든 매매전략은 좌측 메뉴의 [시스템트레이딩] → [사용자전략] 폴더 목록에 나타납니다.
이를 차트에 적용시켜서 확인하고자 할 때는 지표명을 클릭 또는 drag & drop 으로 차트에 적용시킵니다.
차트에 매매 전략을 적용시키기 전에 [매매전략 조건 설정] 창이 팝업되어 조건을 설정해야 차트에 적용이 됩니다.
포지션 설정
매수/매수청산(매도)
매수 포지션 거래(매수 후 매수 청산(전매도))에만 시스템 설정을 적용합니다.
현물의 경우는 이 포지션만 사용할 수 있습니다.
매도/매도청산(매수)
매도 포지션 거래(신규 매도 후 매도청산(환매수))에만 시스템 설정을 적용합니다.
모두 허용
매수, 매도 포지션 모두 시스템 설정을 적용합니다.
신호시 주문처리
주문적용
시험 적용 : 선택하신 시스템을 적용 수익성을 측정하여 최적의 조건을 찾는데 도움을 줍니다. 시험 적용에서는 시스템 매매는 불가능합니다.
주문창 연동 : 시스템을 적용하여 신호 발생시 주문창을 연동하여 보여줍니다. 주문창에서 사용자 주문을 하실 수 있습니다.
시작신호
모든신호 : 시스템 적용 후 발생되는 모든 신호에 주문이 나갑니다.
진입 신호 :시스템을 차트에 적용한 후 처음 나오는 신호 진입신호부터 주문이 나가게 됩니다. 발생 첫 신호가 청산 신호이면, 주문이 첫 신호에서 안나가고 두번째 진입신호부터 나가게 됩니다.
주문시점
봉 완성시 : 특정한 주기의 봉이 완성된 시점에 주문이 들어갑니다. 예를 들면 10분봉인 경우, 10분간의 봉이 완성된 후에 주문이 나가게 됩니다.
조건 만족시 : 시스템에 적용한 조건이 발생시 바로 주문이 들어갑니다.
진입가격과 청산가격
시장에 진입(매수)하는 것과 시장에서 청산(매도)하는 두 가지를 각각 다른 가격으로 설정가능합니다.
[신호가] 시점으로 설정하는 경우, 매매 조건에 합당하게 되면 그 시점의 가격으로 지정가 주문이 나가게 됩니다.
[신호가 ±1,2] 단계 호가는 가격의 최소 가격단위로 주문이 나갑니다.
알람설정
알람 선택할 수 있으며, 알람음을 변경시에는 [찾기] 버튼을 눌러 원하는 wave파일을 선택하시면 됩니다.
거래 비용
거래수수료 : 매매 진입 청산시 들어가는 모든 거래 수수료를 의미합니다. 원과 %로 설정할 수 있으며, 이는 ‘시스템 리포트’의 거래 결과와 거래 내역에 포함되어 수수료 차감 후의 거래 결과를 확인하실 수가 있습니다.
주문편차 : 호가 공백이 생기거나 주문 실행 시점이 늦어 매매하고자 하는 가격보다 불리한 가격으로 매매가 체결된 경우 발생되는 가격 차이를 말합니다.
강제청산
시험 적용후 효용을 극대화 하기 위하여 [강제 청산]을 설정합니다.
각 [강제 청산] 항목의 색상을 별도로 설정 할 수 있습니다.
항목 설명
최대허용손실 : 시스템의 가격이 최대 허용 손실 값을 초과하면 현재의 포지션을 청산합니다.
최대수익대비하락
현재의 수익이 최대 수익에서 지정된 값만큼 감소하였을 때 그 포지션을 청산합니다.
포지션의 수익이 상승하면 최대 수익은 현재의 포지션으로 설정됩니다.
단 ]% 수익 이후]를 설정해야만 적용이 가능합니다.
이 거래는 손실을 제한하는 것이 아니고 수익의 감소를 제한하는 것입니다.
최고/최저가 이익보존율 : 진입 후 최고/최저가 대비 지정된 값(%,Pt) 이상의 변동이 발생하면 청산합니다.
목표수익 : [목표수익]에 도달했을 때 현재의 포지션을 청산합니다.
최소가격변화 : 지정한 특정 [봉 이내]에 매수일 경우는 상, 매도일 경우는 하로 변동폭이 없을 때 청산합니다.
당일 청산 : 당일 지정한 시간에 진입 포지션을 모두 청산합니다.
강제 청산 시점
조건 만족시 : 봉이 완성되기 전이라도 조건이 만족되었다면 강제청산에 의한 주문이 나갑니다.
봉 완성시 : 신호가 발생한 봉이 완성되고 다음 봉이 생길 때 강제청산 주문이 나갑니다.
시스템 트레이딩 설정 : [시스템트레이딩 설정] 창이 팝업되어, 변수를 수정할 수 있습니다.
최적화
변수 최적화 : 차트툴바의  버튼을 클릭하면 [변수 최적화] 창이 팝업되어, 사용자가 선택한 매매전략에 가장 적합한 변수를 찾아 줍니다.
지표 최적화 : 차트툴바의  버튼을 클릭하면 [지표 최적화] 창이 팝업되어, 매매전략(지표를 이용) 중 사용자의 요구(총손익선호, 승률선호 등)에 부합되는 지표를 찾아줍니다.
시간 최적화 : 차트툴바의  버튼을 클릭하면 [시간 최적화] 창이 팝업되어, 사용자가 선택한 매매전략(변수/지표 최적화를 거쳐 도출됨)의 시간(결합할 봉의 개수)을 찾아 줍니다.
시뮬레이션 : 최적화를 통해서 얻어진 변수/지표/시간을 설정하여, 시뮬레이션합니다.
[변수 최적화] [지표 최적화] [시간 최적화] 창에서 전략을 선택하고, [실행] 버튼을 클릭하면 시뮬레이션이 진행됩니다.
리포트 : [변수 최적화] [지표 최적화] [시간 최적화] 창에서 시뮬레이션을 진행하고, 결과를 선택한 후 [상세보기] 버튼을 클릭하면 [시스템 성과분석 보고서] 창이 팝업되어, 시뮬레이션 결과에 대한 리포트를 제공합니다.
성과 요약 : [전체 거래] [매수 거래] [매도 거래]에 대한 [손익 요약] [거래 횟수] [최대 손익] [평균 손익] [효율성]에 대한 리포트를 제공합니다.
[성과요약] 항목
항목 구성요소 상세설명
손익요약 총손익 총이익 - 총손실
총수익 모든 이익거래의 누계
Profit Factor 총이익 / 총손실
총손실 모든 손실거래의 누계
거래횟수 총거래횟수 시스템의 총거래횟수
승률 수익거래수 / 총거래횟수
수익거래수 이익을 나타낸 거래횟수
손실거래수 손실을 나타낸 거래횟수
수익거래 평균 봉 개수 수익이 날 때까지의 평균 보유기간
손실거래 평균 봉 개수 손실이 날 때까지의 평균 보유기간
최대손익 최대수익 수익거래 중 최대수익을 낸 금액
최대연속수익금액 연속하여 나타난 수익금액합계의 최대값
최대연속수익거래 연속하여 나타난 수익거래합계의 최대값
최대손실 손실거래 중 최대손실을 낸 금액
최대연속손실금액 연속하여 나타난 손실금액합계의 최대값
최대연속손실거래 연속하여 나타난 손실거래합계의 최대값
평균손익 평균수익 총수익 / 손익거래수
평균손실 총수익 / 손실거래수
평균거래손익 총손익 / 총거래수
평균수익/평균손실 평균수익 / 평균손실
표준편차 표준편차
효율성 진입효율성 매수진입효율성과 매도진입효율성의 평균
매수진입효율성 (매수진입 후 최고가 - 매수진입가) / (매수진입 후 최고가 - 매수진입 후 최저가) * 100
매도진입효율성 (매도진입 후 최고가 - 매도진입가) / (매도진입 후 최고가 - 매도진입 후 최저가) * 100
청산효율성 매수청산효율성과 매도청산효율성의 평균
매수청산효율성 (매수청산가 - 매수청산 후 최저가) / (매수청산 후 최고가 - 매수청산 후 최저가) * 100
매도청산효율성 (매도청산가 - 매도청산 후 최저가) / (매도청산 후 최고가 - 매도청산 후 최저가) * 100
전체효율성 진입효율성 + 청산효율성 - 100
상세내역 : 시스템의 매매내역에 대한 [진입일자] [진입시간] [진입가격] [수익률] 등을 제공합니다.
차트분석 : 그래프로 [수익곡선] [거래별손익] [최대손실폭]을 보여줍니다.


4. 수식관리자에 사용되는 내장함수
내장 함수 사용에 관한 기본 사항
기본규칙
사칙연산자간 우선순위
사칙연산자간 우선순위는 '*''/'이 '+' '-'에 우선하여 연산을 실행합니다.
소괄호()를 통한 우선순위
변수를 지정할 경우에 사용하기도 하며, 연산자간의 계산상의 우선순위를 결정할 때에도 사용합니다.
ex) RSI(14), (High+Low)/2
논리연산자 And와 Or의 중복
조건문 내에서 And와 Or를 중복할 경우 작성자의 의도대로 계산하여, 참과 거짓 여부를 판단하여야 합니다.
이러한 경우에는 소괄호 ()로서 각 조건사이의 관계를 명확히 하여야 합니다.
조건1 And 조건2 or 조건 3은 다음과 같이 2가지로 해석될 수 있으므로,
ⓐ (조건1 And 조건2) or 조건 3
ⓑ 조건1 And (조건2 or 조건 3)
ⓐ 혹은 ⓑ 둘 중 하나로 명확하게 작성하셔야 합니다.
문자와 소문자의 구분
대소문자의 구분이 없습니다.
따라서 RSI, rSI, RSi, RsI, Rsi 등이 모두 동일한 함수입니다.
공백 및 줄의 변경
함수식 작성시 공백 및 줄에 의한 영향 없습니다.
예를 들자면, RSI(14)와 RSI( 14 )는 동일한 수식이라고 인식됩니다.
변수에 대한 제약
변수는 영문뿐 아니라 한글 변수도 가능하며, 글자 수에도 제한이 없습니다.
ex) ADX(Period) , ADX(적용기간)
유의사항
함수명과 변수명에 특수문자 사용금지
사용자 정의 함수명에 특수 문자 ' * , # , _ , + , " . " '등의 모든 특수 문자를 금합니다.
사용자 정의 지표명을 기본지표에 있는 MACD라고 사용할 수 없으므로, myMACD 또는 MACD변형 등 사용자 임의대로 변형하여 사용하여야 합니다.
ex) " +DI " 라고 함수명을 정의하여 사용할 수 없습니다.
ex) " *Period " 라고 변수명을 정의하여 사용할 수 없습니다.
함수명/변수명 앞에 숫자 사용 금지
사용자 정의 함수명을 정하는 경우 함수명/변수명 앞에 숫자 사용을 금합니다.
ex) '1MAO' 라고 함수 명 앞에 숫자를 기입하여 함수명을 정의하면 안됩니다.
ex) '3기간' 라고 변수 명 앞에 숫자를 사용하여 변수명을 사용할 수 없습니다.
기본 함수명/지표명/조건검색명/강세약세명/매매전략명과 사용자 정의 명과 동일 이름 사용 금지
기본 함수명(내장함수 포함)의 하나를 선택하여 사용자 정의 함수명 및 변수명으로 사용할 수 없습니다.
ex) 사용자 정의 함수명을 기본함수에 있는 ATR 이라는 이름으로 정의할 수 없습니다.
데이터 함수
기술적 분석에 쓰이는 기본적인 시세 데이터를 의미합니다.
함수 영문/한글표기 과거표시 예제 예제설명
거래대금 account account(N) account + account(5) 현재봉의 거래금액과 5봉 전의 거래금액의 합
거래대금 거래대금(N) 거래대금 + 거래대금(5)
거래량 Volume V(N) V + V(1) 현재봉의 거래량과 1봉 전(직전봉)의 거래량의 합
거래량 거래량(N) 거래량 + 거래량(1)
시가 Open, O O(N) O - O(1) 현재봉의 시가와 1봉 전(직전봉)의 시가와의 차
시가 시가(N) 시가 - 시가(1)
고가 High, H H(N) H - H(2) 현재봉의 고가와 2봉 전의 고가의 차
고가 고가(N) 고가 - 고가(2)
저가 Low, L L(N) L - L(2) 현재봉의 저가와 2봉 전의 저가의 차
저가 저가(N) 저가 - 저가(2)
종가 Close, C C(N) C - C(1) 현재봉의 종가와 1봉 전(직전봉)의 종가와의 차
종가 종가(N) 종가 - 종가(1)
미결제약정 OI OI(N) OI + OI(2) 현재봉의 미결제약정과 2봉 전의 미결제 약정의 합
미결제약정 미결제약정(N) 미결제약정+미결제약정(2)
날짜 date Date(N) Date 봉의 끝 날짜를 의미함
(20030809" 형태의 값)
일자 일자(N) 일자
시간 time Time(N) time 봉의 끝 시간을 의미함
("102500" 형태의 값)
시간 시간(N) 시간
산술 및 관계 연산자
데이터 함수에 산술 및 관계 연산자를 이용한 수식을 만들어 사용할 수 있습니다.
이를 통해 과거 및 현재 시세 데이터의 관계 및 논리를 판단할 수 있습니다.
함수명 의미 예제 예제설명
+ 더하기 H + L 금일 고가와 저가의 합
- 빼기 H(1) - L(1) 1봉 전의 고가와 1봉 전의 저가의 차
* 곱하기 V * 100 금일 거래량에 100을 곱한 값
/ 나누기 C(1) / C 1봉 전의 종가를 금일의 종가로 나눈 값
나머지 10 % 3 나눈 값의 나머지
= 대입 A = H - L A에 고가와 저가의 차를 대입
== 논리적으로 같음 C == O 종가와 시가가 같다
!= 논리적으로 다름 C != O 종가와 시가가 다르다
< 우측이 큼 C < O 종가가 시가보다 작다
<= 우측이 크거나 같음 C <= O 종가가 시가보다 작거나 같다
> 좌측이 큼 C > O 종가가 시가보다 크다
>= 좌측이 크거나 같음 C >= O 종가가 시가보다 크거나 같다
!, not 부정 not A A가 아니다
&&, and 논리곱 C>O && C(1)>O(1) 현재 봉의 종가가 시가보다 크고, 직전 봉의 종가가 시가가 크다
||, or 논리합 C>O || C(1)>O(1) 현재 봉의 종가가 시가보다 크거나, 직전 봉의 종가가 시가보다 크다
If, 만일 조건문 if(C>O, 1, 0) 현재 봉의 종가가 시가보다 크면 1, 크지 않으면 0 이다

데이터와 산술 및 관계 연산자를 이용한 예제
양봉 : 종가가 시가보다 크거나 같은 봉
함수명'표기 양봉() 지표명 양봉 지표명 양봉
함수식 C>=O 수식 C>=O 수식
(함수이용)
양봉()
변수정의 변수정의
중간가격 : 고가와 저가와의 차의 중간값
함수명'표기 MidPoint() 지표명 MidPoint 지표명 MidPoint
함수식 (H+L)/2 수식 (H+L)/2 수식
(함수이용)
MidPoint()
변수정의 변수정의
ROC
함수명'
표기
ROC
(가격,적용기간)
지표명 ROC 지표명 ROC
함수식 A=가격;
B=A(적용기간);
(A-B)/B*100
수식 A=가격;
B=A(적용기간);
(A-B)/B*100
수식
(함수이용)
ROC
가격=종가,
적용기간=14
변수정의 가격=종가,
적용기간=14
변수정의 가격=종가,
적용기간=14
통계함수
일정 범위의 데이터를 통계적으로 분석할 때 사용하는 함수로서, 기술적지표의 특성으로 인해 가장 많이 사용되는 함수입니다.
A - 값, N & M - 기간
함수명 영문/한글표기 과거(M봉 전 값) 의미 예제
단순평균 Avg(A,N) Avg(A,N,M) A의 N일간의 단순평균 avg(C,10) 종가의 10일간 단순평균
평균(A,N) 평균(A,N,M) 평균(종가,10)
가중평균 wavg(A,N) wavg(A,N,M) A의 N일간의 가중평균 wavg(H,10) 고가의 10일간 가중평균
가중평균(A,N) 가중평균(A,N,M) 가중평균(고가,10)
지수평균 eavg(A,N) eavg(A,N,M) A의 N일간의 단순평균 eavg(O,10) 시가의 10일간 단순평균
지수평균(A,N) 지수평균(A,N,M) 단순평균(시가,10)
이평 MA(A,N,D이평) MA(A,N,D이평,M) A의 N일간의 D이평 MA(C,10,단순) 종가의 10일 단순이평
MA(종가,5,지수) 종가의 5일 지수이평
표준편차 stdev(A,N) stdev(A,N,M) A의 N일간의 표준편차 stdev(C,10) 종가의 10일간 표준편차
표준편차(A,N) 표준편차(A,N,M) 표준편차(종가,10)
최고값 highest(A,N) highest(A,N,M) A의 N일간의 최고값 highest(C,10) 10일 간의 종가 중 최고가
최고값(A,N) 최고값(A,N,M) 최고값(C,10)
최저값 lowest(A,N) lowest(A,N,M) A의 N일간의 최저값 lowest(C,10) 10일 간의 종가 중 최저가
최저값(A,N) 최저값(A,N,M) 최저값(C,10)
누적합계 sum(A) - A의 누적합계 sum(V) 거래량의 누적합계
sum(A,N) sum(A,N,M) A의 N일간의 누적합계 sum(V,10) 10일간의 거래량의 누적합계
합계(A,N) 합계(A,N,M) 합계(거래량,10)
통계함수를 이용한 함수식 및 지표식 예제
MACD : 단기단순이평 - 장기단순이평
함수명'
표기
MACD(가격,단기,장기,이평방법) 지표명 MACD 지표명 MACD
함수식 MA(가격,단기,이평방법)-(MA(가격,장기,이평방법) 수식 MA(가격,단기,이평방법)-(MA(가격,장기,이평방법) 수식
(함수이용)
MACD(가격,단기,장기,이평방법)
변수정의 가격=종가,
단기=12,
장기=26,
이평방법=지수
변수정의 가격=종가,
단기=12,
장기=26,
이평방법=지수
일정기간 동안의 최고가(고가 중)와 최저가(저가 중)의 차
함수명'
표기
NRange(기간) 지표명 N기간 주가범위 지표명 N기간 주가범위
함수식 Highest(H,기간)-Lowest(L,기간) 수식 Highest(H,기간)-Lowest(L,기간) 수식
(함수이용)
NRange(기간)
변수정의 기간=10 변수정의 기간=10
William"s R (%R) 산식
함수명'
표기
WilliamsR(적용기간) 지표명 WilliamsR%R 지표명 WilliamsR%R
함수식 (highest(H,적용기간)-C)/(highest(H,적용기간)-lowest(L,적용기간))*-100 수식 (highest(H,적용기간)-C)/(highest(H,적용기간)-lowest(L,적용기간))*-100 수식
(함수이용)
WilliamsR(적용기간)
변수정의 기간=14 변수정의 기간=14
수학함수
로그 및 삼각함수 등의 수학적인 계산에 이용되는 함수입니다.
함수명 영문/한글표기 의미 예제 설명
최대값 Max(A,B) A와 B중 큰 값을 선택 max(C,C(1)) 종가와 전일종가의 최대값
최대값(A,B) 최대값(종가,종가(1))
최소값 Min(A,B) A와 B중 작은 값을 선택 min(C,C(1)) 종가와 전일종가의 최소값
최소값(A,B) 최소값(종가,종가(1))
누승 a^b A의 누승 C^2 종가의 제곱(누승2)을 구한다
pow(a,b) pow(C,2)
누승(밑,단순) 누승(C,2)
로그 log(A) A의 로그 log(100) 로그 100의 값
로그(A) 로그(100)
상용로그 log10(A) A의 상용로그 log10(100) 상용로그 100의 값
상용로그(A) 상용로그(100)
절대값 abs(A) A의 절대값 abs(C-O) 종가와 시가 차의 절대값
절대값(A) 절대값(C-O)
제곱근 sqrt(A) A의 제곱근 sqrt(C) 종가의 제곱근
제곱근(A) 제곱근(종가)
사인 sin(A) A의 사인 값 sin(H) 고가의 사인 값
사인(A) 사인(H)
코사인 cos(A) A의 코사인 값 cos(H) 고가의 코사인 값
코사인(A) 코사인(H)
탄젠트 tan(A) A의 탄젠트 값 tan(H) 고가의 탄젠트 값
탄젠트(A) 탄젠트(H)
아크사인 asin(A) A의 아크사인 값 asin(H) 고가의 아크사인 값
아크사인(A) 아크사인(H)
아크코사인 acos(A) A의 아크코사인 값 acos(H) 고가의 아크코사인 값
아크코사인(A) 아크코사인(H)
아크탄젠트 atan(A) A의 아크탄젠트 값 atan(H) 고가의 아크탄젠트 값
아크탄젠트(A) 아크탄젠트(H)
수학함수 및 통계함수를 이용한 함수식 및 지표식 예제
일정기간 동안 최고가(종가 중)와 최저가(종가 중)를 뺀 값의 절대값
함수명'
표기
AbsRange(기간) 지표명 AbsRange 지표명 AbsRange
함수식 abs(Highest(C,기간)-Lowest(C,기간)) 수식 abs(Highest(C,기간)-Lowest(C,기간)) 수식
(함수이용)
AbsRange(기간)
변수정의 기간=10 변수정의 기간=10
일정기간 동안 금일종가와 전일종가를 뺀 값의 누적합산 값
함수명'
표기
sumabsR(기간) 지표명 sumabsR 지표명 sumabsR
함수식 A=abs(C-C(1));sum(A,기간) 수식 A=abs(C-C(1));sum(A,기간) 수식
(함수이용)
sumabsR(기간)
변수정의 기간=10 변수정의 기간=10
VHF
산식 : 일정기간 동안 최고가에서 최저가를 뺀 값의 절대값/일정기간 동안의 가격변화분(금일종가-전일종가)을 누적 합산한 수치
함수명'
표기
VHF(적용기간) 지표명 VHF 지표명 VHF
함수식 A=abs(Highest(C,적용기간)-Lowest(C,적용기간));
B=sum(asb(C-C(1)),적용기간);
A/B
수식 A=abs(Highest(C,적용기간)-Lowest(C,적용기간));
B=sum(asb(C-C(1)),적용기간);
A/B
수식
(함수이용)
VHF(적용기간)
변수정의 적용기간 변수정의
기타함수
상향돌파와 하향돌파는 매매전략 작성에 주로 사용되는 함수입니다.
함수명 사용법(영문/한글) 의미 예제
상향돌파 crossup(A,B) A가 B를 상향돌파 crossup(C,avg(C,5)) 상향돌파(종가,평균(종가,5))
상향돌파(A,B) 종가가 5일 종가 단순이평을 상향 돌파
하향돌파 crossdown(A,B) A가 B를 하향돌파 crossdown(C,avg(C,5)) 하향돌파(종가,평균(종가,5))
하향돌파(A,B) 종가가 5일 종가 단순이평을 하향 돌파
만약 If(condition,A,B) 만일 condition을 만족하면 A를, 만족하지 않으면 B If(C==C(1),1,0) 만일(종가==종가(1),1,0)
만일(condition,A,B) 만일 현재 종가와 1봉전 종가가 같으면, 1, 아니면 0
이동 Shift(A,N) 차트 상에서 A를 N(양/음)만큼 우(좌)측 으로 이동 shift(C,10)
종가를 10만큼 우측으로 이동
Countsince CountSince
(condition,data)
condition이 만족된 이후 data의 값이 참인 횟수 CountSince(date!=date(1),
CrossUp(Trix(12),0))
일자가 변경된 후 Trix가 0기준선을 상향돌파한 횟수
BarsSince BarsSince
(condition)
condition이 만족된 이후 지나간 봉 갯수 BarsSince(CrossUp(Tri x(12),0))
Trix가 0기준선을 상향돌파한 이후 지난 봉 갯수
HighestSince HighestSince
(condition, data)
condition이 만족된 이후 data의 최고값 HighestSince(CrossUp(Trix(12),0), c)
Trix가 0기준선을 상향돌파한 이후 c의 최고가
LowestSince LowestSince
(condition, data)
condition이 만족된 이후 data의 최저값 LowestSince(CrossDown(Trix(12),0), c)
Trix가 0기준선을 하향돌파한 이후 c의 최저가
ValueWhen ValueWhen
(nth,condition,data)
condition이 nth번째 만족된 시점의 data값 ValueWhen(1, CrossUp(Trix(12),0), c)
Trix가 0기준선을 상향 돌파한 시점의 종가
DayOpen DayOpen() 장 시작가 Dayopen()
장 시작가
DayHigh DayHigh() 장중 고가 DayHigh()+ Dayopen()
장중 고가와 장 시가의 합
DayLow DayLow() 장중 저가 DayLow() + DayHigh()
장중 저가와 장중 고가의 합
PredayOpen PredayOpen() 전일 시가 PredayOpen()+DayOpen()
전일 시가와 장 시작가의 합
PredayHigh PredayHigh() 전일 고가 PredayHigh()
전일 고가
PredayLow PredayLow() 전일 저가 (PredayLow() + PredayHigh())/2
전일 저가와 전일 고가의 합을 2로 나눈값
PredayClose PredayClose() 전일 종가 PredayClose()
전일 종가
기타 함수를 이용한 매매전략 /조건검색 함수식 예제
가격 이동평균의 크로스를 이용한 전략
전략 로직 : 골든크로스 시 매수, 데드크로스 시 매도
검색 로직 : 골든크로스 시 매수, 데드크로스 시 매도
전략명 이동평균 크로스 전략 검색명 이동평균 크로스
수식:매수진입/매도청산 A=avg(C,단기);
B=avg(C,장기);
Crossup(A,B)
수식:매수검색 A=avg(C,단기);
B=avg(C,장기);
Crossup(A,B)
수식:매수청산/매도진입 A=avg(C,단기);
B=avg(C,장기);
Crossdown(A,B)
수식:매수검색 A=avg(C,단기);
B=avg(C,장기);
Crossdown(A,B)
변수 단기=5, 장기=20 변수 단기=5, 장기=20
MACD와 시그널과의 크로스를 이용한 전략
전략 로직 : MACD가 시그널을 상향돌파 시 매수, MACD가 시그널을 하향돌파 시 매도
전략명 MACD 크로스 전략 전략명 이동평균 크로스
수식:
매수진입/매도청산
A=eavg(C,단기);
B=eavg(C,장기);
M=A-B;
Signal=eavg(M,시그널기간);
Crossup(M,Signal)
기본함수이용
수식(매수)
A=MACD(C,단기,장기,지수);
B=eavg(A,시그널기간);
Crossup(A,B)
수식:
매수청산/매도진입
A=eavg(C,단기);
B=eavg(C,장기);
M=A-B;
Signal=eavg(M,시그널기간);
Crossdown(M,Signal)
기본함수이용
수식(매도)
A=MACD(C,단기,장기,지수);
B=eavg(A,시그널기간);
Crossdown(A,B)
변수 단기=12,
장기=26,
시그널기간=9
변수 단기=12,
장기=26,
시그널기간=9