안녕하세요.
수식 구현에 어려움을 느껴서 문의드립니다.
제가 구현하고자 하는 것은
c > c[1] 만족하는 경우, C
만족하지 않는 경우, 0 (open아닙니다 숫자 0입니다)
lookback을 3으로 설정했을 경우
예를 들어
c: 1300 / c[1]: 1500 / c[2]: 1400 / c[3]: 1500 일 경우
1. c < c[1] = 0
2. c[1] > c[2] = 1500
3. c[2] < c[3] = 0
따라서 나오는 값이 (0+1500+0)/3 = 500 되도록 하고 싶습니다.
현재봉이 전봉보다 크면 Close, 현재봉이 전봉보다 작으면 0
lookback기간동안안에 있는 모든 봉을 비교해서 값을 구하고 싶습니다.
혹시 몰라서 iff 문으로 작성해보니
iff(c > c[1], C , 0) 이렇게 작성하였을 때
위의 경우를 똑같이 계산할 경우
c: 1300 / c[1]: 1500 / c[2]: 1400 / c[3]: 1500 일 경우
1. c < c[1] = c = 0
2. c[1] > c[2] 조건 상관없이 C[1]값 사용
3. c[2] < c[3] 조건 상관없이 C[2]값 사용
나오는 결과 값이 ( 0 + 1400 + 1500) = 966.6이 나옵니다.
예스랭귀지에서 해결할 수 있는 방법이 있다면 꼭 알려주세요.
감사합니다.
답변 1
예스스탁
예스스탁 답변
2021-03-19 12:51:16
안녕하세요
예스스탁입니다.
iff함수와 ma함수 사용하셔서 처리하시면 됩니다.
input : lookback(3);
var1 = iff(C>C[1],C,0);
Var2 = ma(var1,lookback);
Plot1(Var1,"iff");
plot2(var2",ma");
즐거운 하루되세요
> 7out 님이 쓴 글입니다.
> 제목 : 문의 드립니다.
> 안녕하세요.
수식 구현에 어려움을 느껴서 문의드립니다.
제가 구현하고자 하는 것은
c > c[1] 만족하는 경우, C
만족하지 않는 경우, 0 (open아닙니다 숫자 0입니다)
lookback을 3으로 설정했을 경우
예를 들어
c: 1300 / c[1]: 1500 / c[2]: 1400 / c[3]: 1500 일 경우
1. c < c[1] = 0
2. c[1] > c[2] = 1500
3. c[2] < c[3] = 0
따라서 나오는 값이 (0+1500+0)/3 = 500 되도록 하고 싶습니다.
현재봉이 전봉보다 크면 Close, 현재봉이 전봉보다 작으면 0
lookback기간동안안에 있는 모든 봉을 비교해서 값을 구하고 싶습니다.
혹시 몰라서 iff 문으로 작성해보니
iff(c > c[1], C , 0) 이렇게 작성하였을 때
위의 경우를 똑같이 계산할 경우
c: 1300 / c[1]: 1500 / c[2]: 1400 / c[3]: 1500 일 경우
1. c < c[1] = c = 0
2. c[1] > c[2] 조건 상관없이 C[1]값 사용
3. c[2] < c[3] 조건 상관없이 C[2]값 사용
나오는 결과 값이 ( 0 + 1400 + 1500) = 966.6이 나옵니다.
예스랭귀지에서 해결할 수 있는 방법이 있다면 꼭 알려주세요.
감사합니다.