예시) 함수명은 MAO, 변수는 short,long 두개이므로, 함수 표기 방식은 'MACD(short,long)'이 됩니다.
예시) 수식을 'avg(C,short)-avg(C,long)으로, 주석을 "// 단기이평-장기이평" 으로 기재하였습니다.
예시) 필요함수 사용자 정의 MAO을 "MAO"로, 시그널 함수 단순이평을 "avg"로, 필요변수 단기, 장기, 시그널를 "short,long,signal"로, 수식에 필요한 함수 MAO 표기법을 "MAO(short,long)",단순이평의 표기법을 "avg(MAO(short,long),signal)"로 바꾸어 줍니다.
예시) MAO 라인 설정을 보이기 표시, 선유형, 초록색, 0기준값에 다른 과열 침체 색상을 설정하였습니다.
예시) MAO의 지표에 의미있는 기준값을 0으로 설정하여 기준선 추가 및 [색상] [스타일] [너비]를 설정하였습니다.
예시) 전략명 : 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을 상향돌파를 의미함.
으로 기재하였습니다.
항목 | 구성요소 | 상세설명 |
---|---|---|
손익요약 | 총손익 | 총이익 - 총손실 |
총수익 | 모든 이익거래의 누계 | |
Profit Factor | 총이익 / 총손실 | |
총손실 | 모든 손실거래의 누계 | |
거래횟수 | 총거래횟수 | 시스템의 총거래횟수 |
승률 | 수익거래수 / 총거래횟수 | |
수익거래수 | 이익을 나타낸 거래횟수 | |
손실거래수 | 손실을 나타낸 거래횟수 | |
수익거래 평균 봉 개수 | 수익이 날 때까지의 평균 보유기간 | |
손실거래 평균 봉 개수 | 손실이 날 때까지의 평균 보유기간 | |
최대손익 | 최대수익 | 수익거래 중 최대수익을 낸 금액 |
최대연속수익금액 | 연속하여 나타난 수익금액합계의 최대값 | |
최대연속수익거래 | 연속하여 나타난 수익거래합계의 최대값 | |
최대손실 | 손실거래 중 최대손실을 낸 금액 | |
최대연속손실금액 | 연속하여 나타난 손실금액합계의 최대값 | |
최대연속손실거래 | 연속하여 나타난 손실거래합계의 최대값 | |
평균손익 | 평균수익 | 총수익 / 손익거래수 |
평균손실 | 총수익 / 손실거래수 | |
평균거래손익 | 총손익 / 총거래수 | |
평균수익/평균손실 | 평균수익 / 평균손실 | |
표준편차 | 표준편차 | |
효율성 | 진입효율성 | 매수진입효율성과 매도진입효율성의 평균 |
매수진입효율성 | (매수진입 후 최고가 - 매수진입가) / (매수진입 후 최고가 - 매수진입 후 최저가) * 100 | |
매도진입효율성 | (매도진입 후 최고가 - 매도진입가) / (매도진입 후 최고가 - 매도진입 후 최저가) * 100 | |
청산효율성 | 매수청산효율성과 매도청산효율성의 평균 | |
매수청산효율성 | (매수청산가 - 매수청산 후 최저가) / (매수청산 후 최고가 - 매수청산 후 최저가) * 100 | |
매도청산효율성 | (매도청산가 - 매도청산 후 최저가) / (매도청산 후 최고가 - 매도청산 후 최저가) * 100 | |
전체효율성 | 진입효율성 + 청산효율성 - 100 |
함수 | 영문/한글표기 | 과거표시 | 예제 | 예제설명 |
---|---|---|---|---|
거래대금 | 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 |
---|---|---|---|---|---|
함수식 |
A=가격; B=A(적용기간); (A-B)/B*100 |
수식 |
A=가격; B=A(적용기간); (A-B)/B*100 |
수식 (함수이용) |
ROC 가격=종가, 적용기간=14 |
변수정의 |
가격=종가, 적용기간=14 |
변수정의 |
가격=종가, 적용기간=14 |
함수명 | 영문/한글표기 | 과거(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 |
---|---|---|---|---|---|
함수식 | MA(가격,단기,이평방법)-(MA(가격,장기,이평방법) | 수식 | MA(가격,단기,이평방법)-(MA(가격,장기,이평방법) | 수식 (함수이용) |
MACD(가격,단기,장기,이평방법) |
변수정의 |
가격=종가, 단기=12, 장기=26, 이평방법=지수 |
변수정의 |
가격=종가, 단기=12, 장기=26, 이평방법=지수 |
함수명' 표기 |
NRange(기간) | 지표명 | N기간 주가범위 | 지표명 | N기간 주가범위 |
---|---|---|---|---|---|
함수식 | Highest(H,기간)-Lowest(L,기간) | 수식 | Highest(H,기간)-Lowest(L,기간) | 수식 (함수이용) |
NRange(기간) |
변수정의 | 기간=10 | 변수정의 | 기간=10 |
함수명' 표기 |
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 |
---|---|---|---|---|---|
함수식 |
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 크로스 전략 | 전략명 | 이동평균 크로스 |
---|---|---|---|
수식: 매수진입/매도청산 |
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 |