커뮤니티

질문 있습니다.

프로필 이미지
자오지환웅
2008-06-10 10:30:24
934
글번호 15684
답변완료
// 1번식 var : BuyCon1(false), BuyCon2(false) ; BuyCon1 = ma(c,20) > ma(c,60) ; BuyCon2 = ma(c,60) > ma(c,120) ; if stime > 1000 and BuyCon1 == true and BuCon2 == true then begin if c > highest(h,6 )[1] then buy(); end setstopendofday() ; // 2번식 var : BuyCon1(false), BuyCon2(false) ; BuyCon1 = ma(c,20) > ma(c,60) ; BuyCon2 = ma(c,60) > ma(c,120) ; if date <> date[1] then begin BuyCon1 = false ; BuyCon2 = false ; end if stime > 1000 and BuyCon1 == true and BuCon2 == true then begin if c > highest(h,6 )[1] then buy(); end setstopendofday() ; 1번식과 2번식을 시뮬레이션 돌려보면 서로 다른 값이 나오는데 이 두식은 어떤 차이점이 있나요 ??? 원래 같은 값이 나와야 하지 않나요 ??? 답변 부탁드립니다. 감사합니다. 좋은 하루 되세요.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2008-06-10 13:55:48

안녕하세요 예스스탁입니다. if date <> date[1] then begin BuyCon1 = false ; BuyCon2 = false ; end 날짜 변경시 각 조건을 false로 초기화 하는 부분 때문에 다른 결과를 가져옵니다. 날짜 변경봉은 당일 첫봉입니다. 당일첫봉에서 1번식은 True를 낼수 있지만 2번식은 무조건 False값을 내보냅니다. 해당부분은 삭제하시는 방법과 기술순서를 변경하시는 방법이 있습니다. var : BuyCon1(false), BuyCon2(false) ; if date <> date[1] then begin BuyCon1 = false ; BuyCon2 = false ; end BuyCon1 = ma(c,20) > ma(c,60) ; BuyCon2 = ma(c,60) > ma(c,120) ; if stime > 1000 and BuyCon1 == true and BuCon2 == true then begin if c > highest(h,6 )[1] then buy(); end setstopendofday() ; BuyCon1 과 BuyCon2에 할당전에 날짜 초기화 부분이 들어가면 위에서 아래로 식을 계산되므로 날짜 변경을 먼저 체크하고 BuyCon1 과 BuyCon2에 True 혹은 False값이 할당되므로 기술순서에 따라서도 식내용이 변경됩니다. 추가적으로 예스랭귀지에서 날짜표현은 YYYYMMDD로 8자리며 시간은 HHMMSS로 6자리입니다. 10시라면 100000으로 표기하셔야 합니다. 참고하시기 바랍니다. 즐거운 하루되세요 > 자오지환웅 님이 쓴 글입니다. > 제목 : 질문 있습니다. > // 1번식 var : BuyCon1(false), BuyCon2(false) ; BuyCon1 = ma(c,20) > ma(c,60) ; BuyCon2 = ma(c,60) > ma(c,120) ; if stime > 1000 and BuyCon1 == true and BuCon2 == true then begin if c > highest(h,6 )[1] then buy(); end setstopendofday() ; // 2번식 var : BuyCon1(false), BuyCon2(false) ; BuyCon1 = ma(c,20) > ma(c,60) ; BuyCon2 = ma(c,60) > ma(c,120) ; if date <> date[1] then begin BuyCon1 = false ; BuyCon2 = false ; end if stime > 1000 and BuyCon1 == true and BuCon2 == true then begin if c > highest(h,6 )[1] then buy(); end setstopendofday() ; 1번식과 2번식을 시뮬레이션 돌려보면 서로 다른 값이 나오는데 이 두식은 어떤 차이점이 있나요 ??? 원래 같은 값이 나와야 하지 않나요 ??? 답변 부탁드립니다. 감사합니다. 좋은 하루 되세요.