커뮤니티

재문의 드립니다.

프로필 이미지
아침못
2013-03-12 23:54:11
249
글번호 60629
답변완료
보통의 지그재그식은 고가/저가의 상승/하락률을 만족하면 종가로 주문이 나가는데요, 종가까지 기다리지 않고 atstop을 써서 상승/하락률이 만족하는 즉시 봉이 완성되기 전이라도 주문이 나가게 하고 싶습니다. 그런 문의를 드렸더니 아래의 식을 만들어 주셨는데 주문함수도 없고 시스템식이 아니더군요, 한번 더 부탁드립니다. #==========================================# # 지표명 : 지그재그차트 # 작성자 : 수식지왕 # 블로그 : http://yahoosir.blog.me #==========================================# Input:상승률(100),하락률(100); Var:j(0),상승(100),하락(-100),추세(0), 기준고(0),기준저(0),기준고Bar(0),기준저Bar(0),zz(0); Array:고[20](0),저[20](0),고Bar[20](0),저Bar[20](0); #==========================================# # 전고점,전저점 index 증가 #==========================================# For j = 1 To 19 { 고Bar[j] = 고Bar[j] + 1; 저Bar[j] = 저Bar[j] + 1; } #==========================================# # 최근 고,저 갱신 #==========================================# If 기준고 <= H || 기준고 == 0 || IsNaN(기준고) == True Then { 기준고 = H; 기준고Bar = 0; } Else 기준고Bar = 기준고Bar + 1; If 기준저 >= L || 기준저 == 0 || IsNaN(기준저) == True Then { 기준저 = L; 기준저Bar = 0; } Else 기준저Bar = 기준저Bar + 1; #==========================================# # 추세방향 결정 #==========================================# If 기준저[1] * (1 + (상승률*0.01/100)) > L[1] && 기준저[1] * (1 + (상승률*0.01/100)) <= L Then 추세 = 상승; Else If 기준고[1] * (1 - (하락률*0.01/100)) < H[1] && 기준고[1] * (1 - (하락률*0.01/100)) >= H Then 추세 = 하락; #==========================================# # 추세변화에 따른 변곡점 처리 #==========================================# If 추세[1] == 상승 && 추세 == 하락 Then { For j = 18 DownTo 1 { 고[j+1] = 고[j]; } 고[1] = 기준고; 고Bar[1] = 기준고Bar; ZZ = 기준고; 기준고 = H; 기준고Bar = 0; 기준저 = H; 기준저Bar = 0; } Else if 추세[1] == 하락 && 추세 == 상승 Then { For j = 18 DownTo 1 { 저[j+1] = 저[j]; } 저[1] = 기준저; 저Bar[1] = 기준저Bar; ZZ = 기준저; 기준저 = L; 기준저Bar = 0; 기준고 = L; 기준고Bar = 0; } Else If 추세[1] == 하락 && 추세 == 하락 Then { If 기준고[1] * (1 - (하락률*0.01/100)) <= L[1] && 기준고[1] * (1 - (하락률*0.01/100)) > L && 고[1] < 기준고 Then { 고[1] = 기준고; 고Bar[1] = 기준고Bar; ZZ = 기준고; 기준고 = L; 기준고Bar = 0; } } Else If 추세[1] == 상승 && 추세 == 상승 Then { If 기준저[1] * (1 + (상승률*0.01/100)) >= H[1] && 기준저[1] * (1 + (상승률*0.01/100)) < H && 저[1] > 기준저 Then { 저[1] = 기준저; 저Bar[1] = 기준저Bar; ZZ = 기준저; 기준저 = H; 기준저Bar = 0; } } plot1(추세);
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2013-03-13 11:49:04

안녕하세요 예스스탁입니다.' 해당 식 추세의 판단이 저가가 직전봉에서는 기준저[1] * (1 + (상승률*0.01/100)) 보다 작고 저가가 현재봉에서는 기준저[1] * (1 + (상승률*0.01/100)) 작지 않으면 상승이고 고가가 직전봉에서는 기준고[1] * (1 - (하락률*0.01/100)) 보다 크고 고가가 현재봉에서는 기준고[1] * (1 - (하락률*0.01/100)) 크지 않으면 하락으로 판단하므로 atstop이나 atlimit같이 현재가가 특정값 이상이나 이하일때 신호가 나오는 유형으로는 작성이 가능하지 않습니다. 즉 현재봉에서 가격이 지정된 가격 이상이나 이하가 형성이 되지 않았다고 지정을 해야 하므로 봉완성시로만 작성이 가능합니다. #==========================================# # 지표명 : 지그재그차트 # 작성자 : 수식지왕 # 블로그 : http://yahoosir.blog.me #==========================================# Input:상승률(100),하락률(100); Var:j(0),상승(100),하락(-100),추세(0), 기준고(0),기준저(0),기준고Bar(0),기준저Bar(0),zz(0); Array:고[20](0),저[20](0),고Bar[20](0),저Bar[20](0); #==========================================# # 전고점,전저점 index 증가 #==========================================# For j = 1 To 19 { 고Bar[j] = 고Bar[j] + 1; 저Bar[j] = 저Bar[j] + 1; } #==========================================# # 최근 고,저 갱신 #==========================================# If 기준고 <= H || 기준고 == 0 || IsNaN(기준고) == True Then { 기준고 = H; 기준고Bar = 0; } Else 기준고Bar = 기준고Bar + 1; If 기준저 >= L || 기준저 == 0 || IsNaN(기준저) == True Then { 기준저 = L; 기준저Bar = 0; } Else 기준저Bar = 기준저Bar + 1; #==========================================# # 추세방향 결정 #==========================================# If 기준저[1] * (1 + (상승률*0.01/100)) > L[1] && 기준저[1] * (1 + (상승률*0.01/100)) <= L Then 추세 = 상승; Else If 기준고[1] * (1 - (하락률*0.01/100)) < H[1] && 기준고[1] * (1 - (하락률*0.01/100)) >= H Then 추세 = 하락; #==========================================# # 추세변화에 따른 변곡점 처리 #==========================================# If 추세[1] == 상승 && 추세 == 하락 Then { For j = 18 DownTo 1 { 고[j+1] = 고[j]; } 고[1] = 기준고; 고Bar[1] = 기준고Bar; ZZ = 기준고; 기준고 = H; 기준고Bar = 0; 기준저 = H; 기준저Bar = 0; } Else if 추세[1] == 하락 && 추세 == 상승 Then { For j = 18 DownTo 1 { 저[j+1] = 저[j]; } 저[1] = 기준저; 저Bar[1] = 기준저Bar; ZZ = 기준저; 기준저 = L; 기준저Bar = 0; 기준고 = L; 기준고Bar = 0; } Else If 추세[1] == 하락 && 추세 == 하락 Then { If 기준고[1] * (1 - (하락률*0.01/100)) <= L[1] && 기준고[1] * (1 - (하락률*0.01/100)) > L && 고[1] < 기준고 Then { 고[1] = 기준고; 고Bar[1] = 기준고Bar; ZZ = 기준고; 기준고 = L; 기준고Bar = 0; } } Else If 추세[1] == 상승 && 추세 == 상승 Then { If 기준저[1] * (1 + (상승률*0.01/100)) >= H[1] && 기준저[1] * (1 + (상승률*0.01/100)) < H && 저[1] > 기준저 Then { 저[1] = 기준저; 저Bar[1] = 기준저Bar; ZZ = 기준저; 기준저 = H; 기준저Bar = 0; } } If 추세 == 상승 and 추세[1] != 상승 Then buy("b"); If 추세 == 하락 and 추세[1] != 하락 Then sell("s"); 즐거운 하루되세요 > 아침못 님이 쓴 글입니다. > 제목 : 재문의 드립니다. > 보통의 지그재그식은 고가/저가의 상승/하락률을 만족하면 종가로 주문이 나가는데요, 종가까지 기다리지 않고 atstop을 써서 상승/하락률이 만족하는 즉시 봉이 완성되기 전이라도 주문이 나가게 하고 싶습니다. 그런 문의를 드렸더니 아래의 식을 만들어 주셨는데 주문함수도 없고 시스템식이 아니더군요, 한번 더 부탁드립니다. #==========================================# # 지표명 : 지그재그차트 # 작성자 : 수식지왕 # 블로그 : http://yahoosir.blog.me #==========================================# Input:상승률(100),하락률(100); Var:j(0),상승(100),하락(-100),추세(0), 기준고(0),기준저(0),기준고Bar(0),기준저Bar(0),zz(0); Array:고[20](0),저[20](0),고Bar[20](0),저Bar[20](0); #==========================================# # 전고점,전저점 index 증가 #==========================================# For j = 1 To 19 { 고Bar[j] = 고Bar[j] + 1; 저Bar[j] = 저Bar[j] + 1; } #==========================================# # 최근 고,저 갱신 #==========================================# If 기준고 <= H || 기준고 == 0 || IsNaN(기준고) == True Then { 기준고 = H; 기준고Bar = 0; } Else 기준고Bar = 기준고Bar + 1; If 기준저 >= L || 기준저 == 0 || IsNaN(기준저) == True Then { 기준저 = L; 기준저Bar = 0; } Else 기준저Bar = 기준저Bar + 1; #==========================================# # 추세방향 결정 #==========================================# If 기준저[1] * (1 + (상승률*0.01/100)) > L[1] && 기준저[1] * (1 + (상승률*0.01/100)) <= L Then 추세 = 상승; Else If 기준고[1] * (1 - (하락률*0.01/100)) < H[1] && 기준고[1] * (1 - (하락률*0.01/100)) >= H Then 추세 = 하락; #==========================================# # 추세변화에 따른 변곡점 처리 #==========================================# If 추세[1] == 상승 && 추세 == 하락 Then { For j = 18 DownTo 1 { 고[j+1] = 고[j]; } 고[1] = 기준고; 고Bar[1] = 기준고Bar; ZZ = 기준고; 기준고 = H; 기준고Bar = 0; 기준저 = H; 기준저Bar = 0; } Else if 추세[1] == 하락 && 추세 == 상승 Then { For j = 18 DownTo 1 { 저[j+1] = 저[j]; } 저[1] = 기준저; 저Bar[1] = 기준저Bar; ZZ = 기준저; 기준저 = L; 기준저Bar = 0; 기준고 = L; 기준고Bar = 0; } Else If 추세[1] == 하락 && 추세 == 하락 Then { If 기준고[1] * (1 - (하락률*0.01/100)) <= L[1] && 기준고[1] * (1 - (하락률*0.01/100)) > L && 고[1] < 기준고 Then { 고[1] = 기준고; 고Bar[1] = 기준고Bar; ZZ = 기준고; 기준고 = L; 기준고Bar = 0; } } Else If 추세[1] == 상승 && 추세 == 상승 Then { If 기준저[1] * (1 + (상승률*0.01/100)) >= H[1] && 기준저[1] * (1 + (상승률*0.01/100)) < H && 저[1] > 기준저 Then { 저[1] = 기준저; 저Bar[1] = 기준저Bar; ZZ = 기준저; 기준저 = H; 기준저Bar = 0; } } plot1(추세);