커뮤니티

변수에 대한 질문

프로필 이미지
kwon0718
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인 경우가 많이 있는데 왜그런지 모르겠습니다.