커뮤니티

수식문의

프로필 이미지
백진강
2012-08-15 17:02:50
317
글번호 53781
답변완료
#==========================================# # 지표명 : 5일이평선 지그재그차트 # 5일이평선(허용치 부여)을 골드,데드크로스할 때의 변곡점을 구한다. #==========================================# Input:Percent(0.015); Var:j(0),k(0),상승(100),하락(-100), 추세(0),ZZ(0), 기준고(0),기준저(0),기준고Bar(0),기준저Bar(0); Array:고[20](0),저[20](0),고Bar[20](0),저Bar[20](0); #==========================================# # 초기 처리 #==========================================# Value1 = Ma(C,5); #==========================================# # 전고점,전저점 index 증가 #==========================================# For j = 1 To 19 { 고Bar[j] = 고Bar[j] + 1; 저Bar[j] = 저Bar[j] + 1; } #==========================================# # 최근 고,저 갱신 #==========================================# If 기준고 <= C || 기준고 == 0 || IsNaN(기준고) == True Then { 기준고 = C; 기준고Bar = 0; } Else 기준고Bar = 기준고Bar + 1; If 기준저 >= C || 기준저 == 0 || IsNaN(기준저) == True Then { 기준저 = C; 기준저Bar = 0; } Else 기준저Bar = 기준저Bar + 1; #==========================================# # 5일선 지그재그 파동 계산 #==========================================# If ((추세 == 상승 || 추세 == 0) && CrossDown(C,Value1*(1-Percent))) || (추세 == 상승 && AccumN(Iff(C < Value1,1,0),5)==5) Then { For j = 18 DownTo 1 { 고[j+1] = 고[j]; 고Bar[j+1] = 고Bar[j]; } 고[1] = 기준고; ZZ = 기준고; 고Bar[1] = 기준고Bar; 기준고 = C; 기준저 = C; 기준고Bar = 0; 기준저Bar = 0; 추세 = 하락; } If ((추세 == 하락 || 추세 == 0) && CrossUp(C,Value1*(1+Percent))) || (추세 == 하락 && AccumN(Iff(C > Value1,1,0),5)==5) Then { For j = 18 DownTo 1 { 저[j+1] = 저[j]; 저Bar[j+1] = 저Bar[j]; } 저[1] = 기준저; ZZ = 기준저; 저Bar[1] = 기준저Bar; 기준저 = C; 기준고 = C; 기준고Bar = 0; 기준저Bar = 0; 추세 = 상승; } #==========================================# # 지표식 출력 #==========================================# If ZZ[1] != ZZ Then Plot1(ZZ); Else If LastBarOnChart == 1 Then plot1(Iff(추세 == 상승,기준고,기준저)); 예스스탁님 안녕하세요 위의수식은 지그재그 직선으로 표현되는데요 이걸부드러운곡선으로도 가능한가요 감사합니다 한가지더 부탁합니다 if sdate == CurrentDate Then{ plot1(dayhigh(1)); plot2(DayLow(1)); plot3(DayOpen(0)); plot4((DayHigh+DayLow)/2,"중간값",RED); plot5((DayHigh(1)+DayLow(1))/2,"전중",BLUE); } 이수식도10틱에 출력되게해주세요
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2012-08-16 09:15:46

안녕하세요 예스스탁입니다. 1. 해당 식 내용은 특정봉들에서만 값이 출력되는 내용이라 곡선처리를 어떻게 해야 할지 모르겠습니다. 도움을 드리지 못해 죄송합니다. 2 input : N(10); if sdate == CurrentDate Then{ if C <= dayhigh(1)+PriceScale*N and C >= dayhigh(1)-PriceScale*N Then plot1(dayhigh(1)); if C <= DayLow(1)+PriceScale*N and C >= DayLow(1)-PriceScale*N Then plot2(DayLow(1)); if C <= DayOpen(0)+PriceScale*N and C >= DayOpen(0)-PriceScale*N Then plot3(DayOpen(0)); if C <= (DayHigh+DayLow)/2+PriceScale*N and C >= (DayHigh+DayLow)/2-PriceScale*N Then plot4((DayHigh+DayLow)/2,"중간값",RED); if C <= (DayHigh(1)+DayLow(1))/2+PriceScale*N and C >= (DayHigh(1)+DayLow(1))/2-PriceScale*N Then plot5((DayHigh(1)+DayLow(1))/2,"전중",BLUE); } 즐거운 하루되세요 > 백진강 님이 쓴 글입니다. > 제목 : 수식문의 > #==========================================# # 지표명 : 5일이평선 지그재그차트 # 5일이평선(허용치 부여)을 골드,데드크로스할 때의 변곡점을 구한다. #==========================================# Input:Percent(0.015); Var:j(0),k(0),상승(100),하락(-100), 추세(0),ZZ(0), 기준고(0),기준저(0),기준고Bar(0),기준저Bar(0); Array:고[20](0),저[20](0),고Bar[20](0),저Bar[20](0); #==========================================# # 초기 처리 #==========================================# Value1 = Ma(C,5); #==========================================# # 전고점,전저점 index 증가 #==========================================# For j = 1 To 19 { 고Bar[j] = 고Bar[j] + 1; 저Bar[j] = 저Bar[j] + 1; } #==========================================# # 최근 고,저 갱신 #==========================================# If 기준고 <= C || 기준고 == 0 || IsNaN(기준고) == True Then { 기준고 = C; 기준고Bar = 0; } Else 기준고Bar = 기준고Bar + 1; If 기준저 >= C || 기준저 == 0 || IsNaN(기준저) == True Then { 기준저 = C; 기준저Bar = 0; } Else 기준저Bar = 기준저Bar + 1; #==========================================# # 5일선 지그재그 파동 계산 #==========================================# If ((추세 == 상승 || 추세 == 0) && CrossDown(C,Value1*(1-Percent))) || (추세 == 상승 && AccumN(Iff(C < Value1,1,0),5)==5) Then { For j = 18 DownTo 1 { 고[j+1] = 고[j]; 고Bar[j+1] = 고Bar[j]; } 고[1] = 기준고; ZZ = 기준고; 고Bar[1] = 기준고Bar; 기준고 = C; 기준저 = C; 기준고Bar = 0; 기준저Bar = 0; 추세 = 하락; } If ((추세 == 하락 || 추세 == 0) && CrossUp(C,Value1*(1+Percent))) || (추세 == 하락 && AccumN(Iff(C > Value1,1,0),5)==5) Then { For j = 18 DownTo 1 { 저[j+1] = 저[j]; 저Bar[j+1] = 저Bar[j]; } 저[1] = 기준저; ZZ = 기준저; 저Bar[1] = 기준저Bar; 기준저 = C; 기준고 = C; 기준고Bar = 0; 기준저Bar = 0; 추세 = 상승; } #==========================================# # 지표식 출력 #==========================================# If ZZ[1] != ZZ Then Plot1(ZZ); Else If LastBarOnChart == 1 Then plot1(Iff(추세 == 상승,기준고,기준저)); 예스스탁님 안녕하세요 위의수식은 지그재그 직선으로 표현되는데요 이걸부드러운곡선으로도 가능한가요 감사합니다 한가지더 부탁합니다 if sdate == CurrentDate Then{ plot1(dayhigh(1)); plot2(DayLow(1)); plot3(DayOpen(0)); plot4((DayHigh+DayLow)/2,"중간값",RED); plot5((DayHigh(1)+DayLow(1))/2,"전중",BLUE); } 이수식도10틱에 출력되게해주세요