커뮤니티

문의 드립니다.

프로필 이미지
무결점
2017-11-08 17:25:44
112
글번호 114021
답변완료
Arrays : Period[2](0), Relative[2](0); Period[0] = 11; Period[1] = 11; Relative[0] = RSI(Period[0]); Relative[1] = RSI(Period[1]); MessageLog("수치 %.f", Relative[0]); If O < C Then Buy(); 위와 같이 배열 변수를 선언하고 배열 변수에 RSI 지표값을 할당하였습니다. 그리고 메세지를 출력해 봤는데요. 이상한 점을 발견했는데, Period[1] 변수에 11이 아닌 9 를 넣으면 Relative[0] 수치값이 변합니다. 이 부분이 이해가 안갑니다. 분명히 Relative[0] 변수에는 Period[0] 의 11의 값을 넣어 놨는데 왜 Period[1] 의 값을 변경하면 Relative[0] 수치값이 변하는 것일까요? 두 변수는 각각 따로 반영이 되어야 정상인데 왜 Period[1] 의 값을 변경했다고 Relative[0] 값이 변하는 건지 이해가 안갑니다. Relative[0] 값은 이미 고정적으로 Period[0] 가 선언이 되고 있는데 말이죠. 배열변수랑 일반변수랑 다른 것인가요?
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2017-11-09 10:30:33

안녕하세요 예스스탁입니다. 첨부된 그림과 같이 값변경이 없습니다. 좌측은 1번식, 우측은 2번식 적용해서 메세지 출력시킨 화면입니다. 1번식 2번식 적용해 메세지 확인하시기 바랍니다. 1번 Arrays : Period[2](0), Relative[2](0); Period[0] = 11; Period[1] = 11; Relative[0] = RSI(Period[0]); Relative[1] = RSI(Period[1]); MessageLog("수치1 Period[1] %.f Relative[0] %.2f",Period[1],Relative[0]); plot1(Relative[0]); plot2(Relative[1]); 2번 Arrays : Period[2](0), Relative[2](0); Period[0] = 11; Period[1] = 9; Relative[0] = RSI(Period[0]); Relative[1] = RSI(Period[1]); MessageLog("수치2 Period[1] %.f Relative[0] %.2f",Period[1],Relative[0]); plot1(Relative[0]); plot2(Relative[1]); 즐거운 하루되세요 > 무결점 님이 쓴 글입니다. > 제목 : 문의 드립니다. > Arrays : Period[2](0), Relative[2](0); Period[0] = 11; Period[1] = 11; Relative[0] = RSI(Period[0]); Relative[1] = RSI(Period[1]); MessageLog("수치 %.f", Relative[0]); If O < C Then Buy(); 위와 같이 배열 변수를 선언하고 배열 변수에 RSI 지표값을 할당하였습니다. 그리고 메세지를 출력해 봤는데요. 이상한 점을 발견했는데, Period[1] 변수에 11이 아닌 9 를 넣으면 Relative[0] 수치값이 변합니다. 이 부분이 이해가 안갑니다. 분명히 Relative[0] 변수에는 Period[0] 의 11의 값을 넣어 놨는데 왜 Period[1] 의 값을 변경하면 Relative[0] 수치값이 변하는 것일까요? 두 변수는 각각 따로 반영이 되어야 정상인데 왜 Period[1] 의 값을 변경했다고 Relative[0] 값이 변하는 건지 이해가 안갑니다. Relative[0] 값은 이미 고정적으로 Period[0] 가 선언이 되고 있는데 말이죠. 배열변수랑 일반변수랑 다른 것인가요?