수고많으십니다 아래의 제가 작성한 수식을 지표등록했더니 챠트가 위로 말려 올라가서 읽을수가 없습니다 0선을y축과 공유를 해서 그런가 봅니다. var1=M5;이니 내부함수는 VAR1(0)이렇게 작성해서하는게 아닌가요? ㅋ.잘못된곳을 수정 좀 부탁드립니다^^
- 아래 -
VAR : LL(0),M5(0),M20(0),Var1(0);
LL = Lowest(L, 20);
if LL[1]>L Then
M5=ma((DayClose()+dayclose(1)+dayclose(2)+dayclose(3)+dayclose(4))/5,Index+1);
if LL[1]>L Then
M20=ma((dayclose()+dayclose(1)+dayclose(2)+dayclose(3)+dayclose(4)+dayclose(5)
+dayclose(6)+dayclose(7)+dayclose(8)+dayclose(9)+dayclose(10)+dayclose(11)+dayclose(12)
+dayclose(13)+dayclose(14)+dayclose(15)+dayclose(16)+dayclose(17)+dayclose(18)+dayclose(19))/20,Index+1);
IF M5 < M20 && CrossUp(M5, M20) TheN
Var1=M5;
Plot1(Var1);
답변 1
예스스탁
예스스탁 답변
2025-03-13 12:32:40
안녕하세요
예스스탁입니다.
1
IF M5 < M20 && CrossUp(M5, M20) TheN
Var1=M5;
위 조건식을 보시면 M5가 M20을 상향돌파했는데
M5가 M20보다 작다고 되어 있습니다.
상향돌파가 발생하면 M5가 M20보다 크게 됩니다.
조건이 상충되어 만족하지 못하므로 var1에 저장되는 값이 없고
기본값인 0이 됩니다.
M5 < M20조건을 제외하시면 됩니다.
2
var1값이 0일때는 지표로 출력할 필요가 없으니
var1이 값이 저장되어 0보다 큰값일때만 출력하게 하시면 됩니다.
3
VAR : LL(0),M5(0),M20(0),Var1(0);
LL = Lowest(L, 20);
if LL[1]>L Then
M5=ma((DayClose()+dayclose(1)+dayclose(2)+dayclose(3)+dayclose(4))/5,Index+1);
if LL[1]>L Then
M20=ma((dayclose()+dayclose(1)+dayclose(2)+dayclose(3)+dayclose(4)+dayclose(5)
+dayclose(6)+dayclose(7)+dayclose(8)+dayclose(9)+dayclose(10)+dayclose(11)+dayclose(12)
+dayclose(13)+dayclose(14)+dayclose(15)+dayclose(16)+dayclose(17)+dayclose(18)+dayclose(19))/20,Index+1);
IF M5 > M20 && CrossUp(M5, M20) TheN
Var1=M5;
if var1 > 0 Then
Plot1(Var1);
즐거운 하루되세요
> 트라이 님이 쓴 글입니다.
> 제목 : 전략작성등
> 수고많으십니다 아래의 제가 작성한 수식을 지표등록했더니 챠트가 위로 말려 올라가서 읽을수가 없습니다 0선을y축과 공유를 해서 그런가 봅니다. var1=M5;이니 내부함수는 VAR1(0)이렇게 작성해서하는게 아닌가요? ㅋ.잘못된곳을 수정 좀 부탁드립니다^^
- 아래 -
VAR : LL(0),M5(0),M20(0),Var1(0);
LL = Lowest(L, 20);
if LL[1]>L Then
M5=ma((DayClose()+dayclose(1)+dayclose(2)+dayclose(3)+dayclose(4))/5,Index+1);
if LL[1]>L Then
M20=ma((dayclose()+dayclose(1)+dayclose(2)+dayclose(3)+dayclose(4)+dayclose(5)
+dayclose(6)+dayclose(7)+dayclose(8)+dayclose(9)+dayclose(10)+dayclose(11)+dayclose(12)
+dayclose(13)+dayclose(14)+dayclose(15)+dayclose(16)+dayclose(17)+dayclose(18)+dayclose(19))/20,Index+1);
IF M5 < M20 && CrossUp(M5, M20) TheN
Var1=M5;
Plot1(Var1);