커뮤니티
기초적인 질문 드립니다.
2013-10-28 02:52:36
129
글번호 68895
내부변수 value에 대해서 기초적인 질문드립니다.
아래 value1, value2 처럼 동일 변수이름으로 중복 할당해도 되는 건가요?
안되는 줄 알았다가 우연히 저렇게 중복되었는데도
에러가 나지 않아서 문의드립니다. 내부변수를 많이 사용하다 보니
헤깔려서 부탁드립니다. 감사합니다.
Value1 = ma(c,20);
Value2 = ma(c,60);
if dayindex() == 0 then {
Value3 = Value1[1]; }
if < ------ 수식들 ------- >
then buy("a");
Condition15 = crossdown(c,ma(c,60));
value1 = NthLowestBar(1,c,60);
value2 = countif(Condition15 == true,value1);
if < ----- 수식들 ------ >
then sell("b");
답변 1
예스스탁 예스스탁 답변
2013-10-28 16:26:12
안녕하세요
예스스탁입니다.
Value1 = ma(c,20);
Value2 = ma(c,60);
if dayindex() == 0 then {
Value3 = Value1[1]; }
if < ------ 수식들 ------- > #1번 if
then buy("a");
Condition15 = crossdown(c,ma(c,60));
value1 = NthLowestBar(1,c,60);
value2 = countif(Condition15 == true,value1);
if < ----- 수식들 ------ > #2번 if
then sell("b");
예 가능합니다. 수식은 위에서 아래로 읽어 들어 가며
값을 저장하게 됩니다.
그러므로 1번 if문과 2번 if문에서 각각 다른 값을 저장한
변수를 사용하게 됩니다.
1번 if문에서는
Value1 = ma(c,20);
Value2 = ma(c,60);
2번 if문에서는
value1 = NthLowestBar(1,c,60);
value2 = countif(Condition15 == true,value1);
을 사용하게 되며
해당 식에서 value1,value2에 최종 저장된 값은
value1 = NthLowestBar(1,c,60);
value2 = countif(Condition15 == true,value1);
식상 가장 아래에 있는 위 내용이므로
이전 봉의 값은 모두 위 내용으로 리턴이 됩니다.
즉 만약 1번 if문에서 20이평이 전봉보다 상승했다는 의미로
value1 > value1[1]와 같이 표현해도
전봉에서 최종 저장된 value1은 value1 = NthLowestBar(1,c,60); 이므로
해당 내용은 20이평이 전봉의 NthLowestBar(1,c,60)보다 크다라는 내용이 됩니다.
저장하는 값이 다르고 이전봉의 값을 사용하신다면
변수를 따로 만드셔서 사용하셔야 합니다.
즐거운 하루되세요
> 하우즐영 님이 쓴 글입니다.
> 제목 : 기초적인 질문 드립니다.
> 내부변수 value에 대해서 기초적인 질문드립니다.
아래 value1, value2 처럼 동일 변수이름으로 중복 할당해도 되는 건가요?
안되는 줄 알았다가 우연히 저렇게 중복되었는데도
에러가 나지 않아서 문의드립니다. 내부변수를 많이 사용하다 보니
헤깔려서 부탁드립니다. 감사합니다.
Value1 = ma(c,20);
Value2 = ma(c,60);
if dayindex() == 0 then {
Value3 = Value1[1]; }
if < ------ 수식들 ------- >
then buy("a");
Condition15 = crossdown(c,ma(c,60));
value1 = NthLowestBar(1,c,60);
value2 = countif(Condition15 == true,value1);
if < ----- 수식들 ------ >
then sell("b");