커뮤니티

질문 3가지

프로필 이미지
좌오비우오비
2020-04-29 08:21:57
947
글번호 138488
답변완료
질문 1) ATR(20)이 궁금합니다. 먼저, ATR은 아래 식을 이용하여 구하는 것인지요. 그리고 AVR 20일값인지요. TR Max(Max(H-C(1),C(1)-L),H-L) (당일고가 - 전일종가) , (전일종가 - 당일저가) , (당일고가 - 당일저가) 중에 최대값 ATR avg(max(max(h-l,abs(c(1)-h)),abs(c(1)-l)),Period) TR의 값을 기간(period)로 이동평균한 값 질문 2) 수식 이해 진입후 최고가에서 청산하는 경우에다 진입후 첫봉 고가에서 청산하는 조건도 포함한다는 뜻인가요. #진입이후 최고가에서 atr의 3배만큼 하락하면 청산 ExitLong ("ATR", AtStop, PosHigh - ATRVal); End else#진입후 첫봉에서는 진입봉의 고가에서 atr의 3배만큼 하락하면 청산 ExitLong ("ATR eb", AtStop, High - ATRVal); 질문 3) 간단한 수식으로 예제를 들어주셨으면 합니다. 예스랭귀지 함수중에 Correlation이란 함수가 있습니다. 2개의 데이타의 움직임에 따라 상관도를 리턴하는 함수입니다. 동일방향에 가까울수록 1에 가까운값, 역방향에 가까울수로 -1에 가까운 값을 리턴합니다. 해당 함수를 열어 수식 확인하실수 있습니다. ************************************************************************************** 안녕하세요 예스스탁입니다. 1 Input : AtrMult(5.0); Var : PosHigh(0), PosLow(0); #진입이후 최고가 PosHigh = Highest(H,BarsSinceEntry+1); #진입이후 최저가 PosLow = Lowest(L,BarsSinceEntry+1); If MarketPosition <> 0 Then { #매수진입이후 최고가에서 atr의 5배만큼 하락하면 청산 exitlong("EL_추적ATR",Atstop,PosHigh-ATR(20)*AtrMult); #매도진입이후 최저가에서 atr의 5배만큼 상승하면 청산 exitshort("ES_추적ATR",Atstop,PosLow+ATR(20)*AtrMult); } ### ATR Trailing LX(매수청산)### Inputs: ATRs(3); Variables: PosHigh(0), ATRVal(0); ATRVal = ATR(10) * ATRs; #무포지션에서는 해당봉의 고가 저장 If BarsSinceEntry() == 0 Then PosHigh = High; #매수진입후 If MarketPosition() == 1 Then Begin #기존값보다 더큰 고가가 발생하면 #최고가 갱신 If High > PosHigh Then PosHigh = High; #진입이후 최고가에서 atr의 3배만큼 하락하면 청산 ExitLong ("ATR", AtStop, PosHigh - ATRVal); End else#진입후 첫봉에서는 진입봉의 고가에서 atr의 3배만큼 하락하면 청산 ExitLong ("ATR eb", AtStop, High - ATRVal); ### ATR Trailing SX(매도청산)### Inputs: ATRs(3); Variables: PosLow(0), ATRVal(0); ATRVal = ATR(10) * ATRs; #무포지션에서는 해당봉의 저가 저장 If BarsSinceEntry() == 0 Then PosLow = Low; #매도진입 후 If MarketPosition() == -1 Then Begin #기존값보다 더 작은 저가가 발생하면 #최저가 갱신 If Low < PosLow Then PosLow = Low; #진입이후 최저가에서 atr의 3배만큼 상승하면 청산 ExitShort ("ATR", AtStop, PosLow + ATRVal); End else#진입후 첫봉에서는 진입봉의 저가에서 atr의 3배만큼 상승하면 청산 ExitShort ("ATR eb", AtStop, Low + ATRVal); 3 상관계수는 2개의 데이타의 움직임의 동일성을 계산하는 부분입니다. 2개의 데이타로 시스템들의 일간수익률을 이용했다는 의미입니다. 예스랭귀지 함수중에 Correlation이란 함수가 있습니다. 2개의 데이타의 움직임에 따라 상관도를 리턴하는 함수입니다. 동일방향에 가까울수록 1에 가까운값, 역방향에 가까울수로 -1에 가까운 값을 리턴합니다. 해당 함수를 열어 수식 확인하실수 있습니다. 다만 프로그램에서 시스템간 상관도를 알려주는 부분이 없습니다. 논문의 내용은 각 시스템의 일간수익률을 별도로 발취해서 엑셀이나 별도의 다른 프로그램으로 계산한 내용일것 같습니다. 즐거운 하루되세요
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2020-04-29 11:18:55

안녕하세요 예스스탁입니다. 1 예 맞습니다. 2 청산에 사용하는 신호타입이 atstop입니다. 봉완성시에 값세팅하고 다음봉의 현재가와 비교해 신호가 발생합니다. 그러므로 진입 신호가 발생하고 한봉은 완성이 된 후에야 감시하므로 진입후 첫봉에는 신호가 발생하지 않습니다 else 이하의 내용은 이부분에 대응하는 내용으로 진입 후 첫봉을 감시하는 내용입니다. 3 단순이평과 지수이평의 100봉동안의 상관관계 지표입니다. var1 = ma(C,20); var2 = ema(c,20); var3 = Correlation(var1,var2,100); plot1(var3); 즐거운 하루되세요 > 좌오비우오비 님이 쓴 글입니다. > 제목 : 질문 3가지 > 질문 1) ATR(20)이 궁금합니다. 먼저, ATR은 아래 식을 이용하여 구하는 것인지요. 그리고 AVR 20일값인지요. TR Max(Max(H-C(1),C(1)-L),H-L) (당일고가 - 전일종가) , (전일종가 - 당일저가) , (당일고가 - 당일저가) 중에 최대값 ATR avg(max(max(h-l,abs(c(1)-h)),abs(c(1)-l)),Period) TR의 값을 기간(period)로 이동평균한 값 질문 2) 수식 이해 진입후 최고가에서 청산하는 경우에다 진입후 첫봉 고가에서 청산하는 조건도 포함한다는 뜻인가요. #진입이후 최고가에서 atr의 3배만큼 하락하면 청산 ExitLong ("ATR", AtStop, PosHigh - ATRVal); End else#진입후 첫봉에서는 진입봉의 고가에서 atr의 3배만큼 하락하면 청산 ExitLong ("ATR eb", AtStop, High - ATRVal); 질문 3) 간단한 수식으로 예제를 들어주셨으면 합니다. 예스랭귀지 함수중에 Correlation이란 함수가 있습니다. 2개의 데이타의 움직임에 따라 상관도를 리턴하는 함수입니다. 동일방향에 가까울수록 1에 가까운값, 역방향에 가까울수로 -1에 가까운 값을 리턴합니다. 해당 함수를 열어 수식 확인하실수 있습니다. ************************************************************************************** 안녕하세요 예스스탁입니다. 1 Input : AtrMult(5.0); Var : PosHigh(0), PosLow(0); #진입이후 최고가 PosHigh = Highest(H,BarsSinceEntry+1); #진입이후 최저가 PosLow = Lowest(L,BarsSinceEntry+1); If MarketPosition <> 0 Then { #매수진입이후 최고가에서 atr의 5배만큼 하락하면 청산 exitlong("EL_추적ATR",Atstop,PosHigh-ATR(20)*AtrMult); #매도진입이후 최저가에서 atr의 5배만큼 상승하면 청산 exitshort("ES_추적ATR",Atstop,PosLow+ATR(20)*AtrMult); } ### ATR Trailing LX(매수청산)### Inputs: ATRs(3); Variables: PosHigh(0), ATRVal(0); ATRVal = ATR(10) * ATRs; #무포지션에서는 해당봉의 고가 저장 If BarsSinceEntry() == 0 Then PosHigh = High; #매수진입후 If MarketPosition() == 1 Then Begin #기존값보다 더큰 고가가 발생하면 #최고가 갱신 If High > PosHigh Then PosHigh = High; #진입이후 최고가에서 atr의 3배만큼 하락하면 청산 ExitLong ("ATR", AtStop, PosHigh - ATRVal); End else#진입후 첫봉에서는 진입봉의 고가에서 atr의 3배만큼 하락하면 청산 ExitLong ("ATR eb", AtStop, High - ATRVal); ### ATR Trailing SX(매도청산)### Inputs: ATRs(3); Variables: PosLow(0), ATRVal(0); ATRVal = ATR(10) * ATRs; #무포지션에서는 해당봉의 저가 저장 If BarsSinceEntry() == 0 Then PosLow = Low; #매도진입 후 If MarketPosition() == -1 Then Begin #기존값보다 더 작은 저가가 발생하면 #최저가 갱신 If Low < PosLow Then PosLow = Low; #진입이후 최저가에서 atr의 3배만큼 상승하면 청산 ExitShort ("ATR", AtStop, PosLow + ATRVal); End else#진입후 첫봉에서는 진입봉의 저가에서 atr의 3배만큼 상승하면 청산 ExitShort ("ATR eb", AtStop, Low + ATRVal); 3 상관계수는 2개의 데이타의 움직임의 동일성을 계산하는 부분입니다. 2개의 데이타로 시스템들의 일간수익률을 이용했다는 의미입니다. 예스랭귀지 함수중에 Correlation이란 함수가 있습니다. 2개의 데이타의 움직임에 따라 상관도를 리턴하는 함수입니다. 동일방향에 가까울수록 1에 가까운값, 역방향에 가까울수로 -1에 가까운 값을 리턴합니다. 해당 함수를 열어 수식 확인하실수 있습니다. 다만 프로그램에서 시스템간 상관도를 알려주는 부분이 없습니다. 논문의 내용은 각 시스템의 일간수익률을 별도로 발취해서 엑셀이나 별도의 다른 프로그램으로 계산한 내용일것 같습니다. 즐거운 하루되세요