커뮤니티

문의드립니다.

프로필 이미지
다니엘87
2015-11-25 11:05:54
138
글번호 92719
답변완료
항상 좋은 말씀 감사합니다. 수식 작성 중 해결이 안돼 조언 부탁 드립니다. 감사합니다. ^^ 1. 시스템 식에서 사용하였던 샹들리에 청산을 지표로 보려고 시스템 식을 다음과 같이 바꿔 보았습니다.그러나 제대로 나타나지가 않네요. # __________<<< 매수 진입 >>>___________________________________________________ If 현재포지션 == 0 Then Begin If 포지션신호[1] != 1 And 포지션신호 == 1 Then Begin 매수진입예정가 = High; If CrossUp(Close,매수진입예정가) Then { 현재포지션 = 1; 진입후봉수 = -1; } End; End; # ----------<<< 매수 청산 >>>--------------------------- If 현재포지션 == 1 Then Begin 진입후봉수 = 진입후봉수 + 1; 매수청산선 = Highest(High,진입후봉수)-ATR(ATR_Len1)*ATR_Mul1; If CrossDown(Close,매수청산선) Then 현재포지션 = 0; End; If 현재포지션 == 1 Then Plot1(매수청산선,"매수청산선",BLUE); Else NoPlot(1); 2. CrossUp, Down은 atStop 명령어를 대신한 것입니다. 이게 적절한 것인지요? 3. 위 식 중에서 (시스템 식에서) 매수진입예정가 = High; If CrossUp(Close,매수진입예정가) Then Buy; 라고 한다면, 현재가가 고가를 넘어야 한다는 얘기라 논리적으로 말이 안 된다고 생각되는데 실제로는 신호가 나옵니다. 그래서 매수진입예정가 = High[1] 라고 하면 시스템 성과가 -로 돌아서서 이해가 되지 않지만 포기를 못하고 있습니다. 왜 그런가요?
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2015-11-25 14:59:56

안녕하세요 예스스탁입니다. 1. input : ATR_Len1(20),ATR_Mul1(2); var : 현재포지션(0),포지션신호(0),매수진입예정가(0),진입후봉수(-1),매수청산선(0),매수후최고가(0); If 현재포지션 <= 0 and H >= H[1] Then { 현재포지션 = 1; 진입후봉수 = -1; plot2(H,"진입봉",RED);//진입봉 마크 } # ----------<<< 매수 청산 >>>--------------------------- If 현재포지션 == 1 Then{ 진입후봉수 = 진입후봉수 + 1; if 진입후봉수 == 0 Then{ 매수후최고가 = H; } if 진입후봉수 >= 1 and H > 매수후최고가 Then 매수후최고가 = H; 매수청산선 = 매수후최고가-ATR(ATR_Len1)*ATR_Mul1; If L <= 매수청산선 Then 현재포지션 = 0; Plot1(매수청산선,"매수청산선",BLUE);//점그래프나 일자그래프 } 2. atstop은 봉완성시 가격을 셋팅하고 다음봉에서 해당 가격이상인지 감시합니다. buy("b",atstop,H); 라고 하면 현재가가 직전완성봉의 고가보다 크면 즉시 신호가 발생합니다. atstop뒤에 가격은 봉완성시 셋팅이 되는 가격입니다. atstop을 풀어서 if문으로 표현할때는 if H >= 매수예정가[1] then 으로 표현하셔야 합니다. 3 매수진입예정가 = High; If CrossUp(Close,매수진입예정가) Then Buy; 위 내용으로는 신호가 발생할수 없습니다. 아래식 시스템으로 작성하고 적용해 보시기 바랍니다. var : 매수진입예정가(0),매도진입예정가(0); 매수진입예정가 = High; If CrossUp(Close,매수진입예정가) Then Buy(); 매도진입예정가 = Low; If CrossDown(Close,매도진입예정가) Then sell(); 즐거운 하루되세요 > 다니엘87 님이 쓴 글입니다. > 제목 : 문의드립니다. > 항상 좋은 말씀 감사합니다. 수식 작성 중 해결이 안돼 조언 부탁 드립니다. 감사합니다. ^^ 1. 시스템 식에서 사용하였던 샹들리에 청산을 지표로 보려고 시스템 식을 다음과 같이 바꿔 보았습니다.그러나 제대로 나타나지가 않네요. # __________<<< 매수 진입 >>>___________________________________________________ If 현재포지션 == 0 Then Begin If 포지션신호[1] != 1 And 포지션신호 == 1 Then Begin 매수진입예정가 = High; If CrossUp(Close,매수진입예정가) Then { 현재포지션 = 1; 진입후봉수 = -1; } End; End; # ----------<<< 매수 청산 >>>--------------------------- If 현재포지션 == 1 Then Begin 진입후봉수 = 진입후봉수 + 1; 매수청산선 = Highest(High,진입후봉수)-ATR(ATR_Len1)*ATR_Mul1; If CrossDown(Close,매수청산선) Then 현재포지션 = 0; End; If 현재포지션 == 1 Then Plot1(매수청산선,"매수청산선",BLUE); Else NoPlot(1); 2. CrossUp, Down은 atStop 명령어를 대신한 것입니다. 이게 적절한 것인지요? 3. 위 식 중에서 (시스템 식에서) 매수진입예정가 = High; If CrossUp(Close,매수진입예정가) Then Buy; 라고 한다면, 현재가가 고가를 넘어야 한다는 얘기라 논리적으로 말이 안 된다고 생각되는데 실제로는 신호가 나옵니다. 그래서 매수진입예정가 = High[1] 라고 하면 시스템 성과가 -로 돌아서서 이해가 되지 않지만 포기를 못하고 있습니다. 왜 그런가요?