커뮤니티

중복 처리에 대한 추가 문의입니다.

프로필 이미지
edan
2010-08-19 12:42:37
579
글번호 31694
답변완료
안녕하세요 어제 질문드린 내용에 대해서 다음과 같이 답변해주셨습니다. (15236번) ------------------------------------------------------------------- 예스스탁입니다. 1. 시뮬레이션의 경우 각봉에 한번씩만 계산되며 실시간에서는 시세를 받을때마다 계산됩니다. 그러므로 메세지로그도 실시간에서는 시세수신시 마다 찍히게 되며 해당 부분은 따로 처리가 가능하지 않습니다. ------------------------------------------------------------------- if(stime == 090000 And VarA == 0) Then { MessageLog("TEST"); .. .. .. (기타 명령들) .. VarA = 1; } 이렇게 하면 시세를 받을때마다 계산이 되어도 VarA 라는 변수값이 1로 변경되어 다시 TEST를 출력할 수 없을것 같은데요 시세수신시마다 시스템이 개별적으로 동작하는것인지, 혹은 변수가 업데이트 되기전에 연속적으로 실행이 되어 계속 출력이 되는지 알고싶습니다. 이대로라면 어떤 조건에 따라 주문을 한개 걸었음에도 연속적으로 주문이 20-30개 호출이 되어버릴것이 염려됩니다. 감사합니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2010-08-19 17:09:05

안녕하세요 예스스탁입니다. 현재 시세를 받았는데 해당 시세의 시간이 다음봉의 시가가 아니면 사용되는 변수의 값을 다시 전봉의 값으로 초기화를 하게 됩니다. 그러므로 작성하신 내용으로는 한번 발동하게 막으실 수 없고 수식적으로는 제어할 수 없습니다. 해당봉의 현재시세가 해당봉의 최종시세일 수 있으므로 계산하여 만족여부를 판단하고 다음봉의 시가가 수신이될때 주문함수가 발동하므로 주문함수가 여러번 호출되지는 않습니다. 해당 부분은 염려하지 않으셔도 됩니다. 즐거운 하루되세요 > edan 님이 쓴 글입니다. > 제목 : 중복 처리에 대한 추가 문의입니다. > 안녕하세요 어제 질문드린 내용에 대해서 다음과 같이 답변해주셨습니다. (15236번) ------------------------------------------------------------------- 예스스탁입니다. 1. 시뮬레이션의 경우 각봉에 한번씩만 계산되며 실시간에서는 시세를 받을때마다 계산됩니다. 그러므로 메세지로그도 실시간에서는 시세수신시 마다 찍히게 되며 해당 부분은 따로 처리가 가능하지 않습니다. ------------------------------------------------------------------- if(stime == 090000 And VarA == 0) Then { MessageLog("TEST"); .. .. .. (기타 명령들) .. VarA = 1; } 이렇게 하면 시세를 받을때마다 계산이 되어도 VarA 라는 변수값이 1로 변경되어 다시 TEST를 출력할 수 없을것 같은데요 시세수신시마다 시스템이 개별적으로 동작하는것인지, 혹은 변수가 업데이트 되기전에 연속적으로 실행이 되어 계속 출력이 되는지 알고싶습니다. 이대로라면 어떤 조건에 따라 주문을 한개 걸었음에도 연속적으로 주문이 20-30개 호출이 되어버릴것이 염려됩니다. 감사합니다.