커뮤니티
변수에 대한 질문
2016-09-07 06:40:27
116
글번호 101751
수고하십시니다.
VAR : TR0(0), TR1(0), TR2(0),TRD(0);
TR0=EMA(C,기간)[0]; TR1=EMA(C,기간)[1]; TR2=EMA(C,기간)[2];
IF ((TR0>TR1) AND (TR1>TR2)) OR
((TR0>TR1) AND (TR1<TR2) AND (TR0>TR2)) OR
((TR0<TR1) AND (TR1>TR2) AND (TR0>TR2))
THEN TRD=1;
ELSE TRD=0;
IF ((TR0<TR1) AND (TR1<TR2)) OR
((TR0<TR1) AND (TR1>TR2) AND (TR0<TR2)) OR
((TR0>TR1) AND (TR1<TR2) AND (TR0<TR2))
THEN TRD=-1;
ELSE TRD=0;
이렇게 해서 비교하는 수식을 만들려고 하는데 비교를 정상적으로 잘 하지 못하는 것같은데요.
messagelog해서 보니 tr값이 소숫점5자리까지 값이 나오고 같은 값이 하나도 없는데 TRD값이 0인 경우가 많이 있는데 왜그런지 모르겠습니다.
답변 1
예스스탁 예스스탁 답변
2016-09-07 10:24:21
안녕하세요
예스스탁입니다.
조건1 만족하면 1 아니면 0
조건2 만족하면 -1 아니면 0
수식이 조건을 만족하면 값을 할당하고
아니면 항상 0으로 초기화를 하게 작성했습니다.
그러므로 조건1을 만족해서 1할당후
조건2에 이해 0이 할당이 됩니다.
조건1만족하면 1, 조건2만족하면 -2 아니면 0으로 작성하셔야 합니다.
VAR : TR0(0), TR1(0), TR2(0),TRD(0);
TR0=EMA(C,기간)[0]; TR1=EMA(C,기간)[1]; TR2=EMA(C,기간)[2];
IF ((TR0>TR1) AND (TR1>TR2)) OR
((TR0>TR1) AND (TR1<TR2) AND (TR0>TR2)) OR
((TR0<TR1) AND (TR1>TR2) AND (TR0>TR2))THEN
TRD=1;
else IF ((TR0<TR1) AND (TR1<TR2)) OR
((TR0<TR1) AND (TR1>TR2) AND (TR0<TR2)) OR
((TR0>TR1) AND (TR1<TR2) AND (TR0<TR2)) THEN
TRD=-1;
ELSE
TRD=0;
즐거운 하루되세요
> kwon0718 님이 쓴 글입니다.
> 제목 : 변수에 대한 질문
> 수고하십시니다.
VAR : TR0(0), TR1(0), TR2(0),TRD(0);
TR0=EMA(C,기간)[0]; TR1=EMA(C,기간)[1]; TR2=EMA(C,기간)[2];
IF ((TR0>TR1) AND (TR1>TR2)) OR
((TR0>TR1) AND (TR1<TR2) AND (TR0>TR2)) OR
((TR0<TR1) AND (TR1>TR2) AND (TR0>TR2))
THEN TRD=1;
ELSE TRD=0;
IF ((TR0<TR1) AND (TR1<TR2)) OR
((TR0<TR1) AND (TR1>TR2) AND (TR0<TR2)) OR
((TR0>TR1) AND (TR1<TR2) AND (TR0<TR2))
THEN TRD=-1;
ELSE TRD=0;
이렇게 해서 비교하는 수식을 만들려고 하는데 비교를 정상적으로 잘 하지 못하는 것같은데요.
messagelog해서 보니 tr값이 소숫점5자리까지 값이 나오고 같은 값이 하나도 없는데 TRD값이 0인 경우가 많이 있는데 왜그런지 모르겠습니다.