커뮤니티
수식문의
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틱에 출력되게해주세요
이전글