커뮤니티
2연상 종목검색 식 실행순서
2019-02-01 17:40:05
226
글번호 125875
정확히 2연상 종목만 검색하는 종목검색 식입니다.
아래 코드의 "상한가"는 상한가 구하는 사용자함수입니다.
실행순서가 궁금합니다.
input : 연속(2), 기간(8);
Condition1 = countif(C >=상한가,연속) == 연속 and countif(C >=상한가,연속+1) != 연속+1;
Condition2 = countif(C < 상한가 and Condition1[1] == true,기간) >= 1;
if Condition1 == true or Condition2 == true Then
find(1);
=====================================
실행 순서
=====================================
순서1) Condition1 = countif(C >=상한가,연속) == 연속 and countif(C >=상한가,연속+1) != 연속+1;
==> (1,2 캔들 실행) and (1,2,3 캔들 실행) ==> Condition1[0]은 True
==> (2,3 캔들 실행) and (2,3,4 캔들 실행) ==> Condition1[1]은 False
==> (3,4 캔들 실행) and (3,4,5 캔들 실행) ==> Condition1[2]은 False
==> ..........
==> (7,8 캔들 실행) and (7,8,X 캔들 실행) ==> Condition1[6]은 False
==> (8,X 캔들 실행) and (8,X,X 캔들 실행) ==> Condition1[7]은 False
순서2) Condition2 = countif(C < 상한가 and Condition1[1] == true,기간) >= 1;
==> (1 캔들) and (현재 Condition1[1]은 없음 즉 False) ==> Condition2[0]은 False
==> (2 캔들) and Condition1[1] ==> Condition2[1]은 False
==> (3 캔들) and Condition1[2] ==> Condition2[2]은 False
==> ..........
==> (8 캔들) and Condition1[7] ==> Condition2[7]은 False
순서3) if Condition1 == true or Condition2 == true Then
find(1);
순서1-->순서2-->순서3 순으로 실행이 되나요?
Condition1 값을 모두 구한 후 Condition2 값을 모두 구하고 그 다음에 "순서3"을 실행하나요?
- 1. 126474_캔들.png (0.00 MB)
답변 1
예스스탁 예스스탁 답변
2019-02-07 09:39:49
안녕하세요
예스스탁입니다.
예 맞습니다.
수식은 위에서 아래로 읽어가면서 계산하므로
condition1 계산후, conditio2계산하고 최종 if문 체크하게 됩니다.
즐거운 하루되세요
> 행복충전 님이 쓴 글입니다.
> 제목 : 2연상 종목검색 식 실행순서
> 정확히 2연상 종목만 검색하는 종목검색 식입니다.
아래 코드의 "상한가"는 상한가 구하는 사용자함수입니다.
실행순서가 궁금합니다.
input : 연속(2), 기간(8);
Condition1 = countif(C >=상한가,연속) == 연속 and countif(C >=상한가,연속+1) != 연속+1;
Condition2 = countif(C < 상한가 and Condition1[1] == true,기간) >= 1;
if Condition1 == true or Condition2 == true Then
find(1);
=====================================
실행 순서
=====================================
순서1) Condition1 = countif(C >=상한가,연속) == 연속 and countif(C >=상한가,연속+1) != 연속+1;
==> (1,2 캔들 실행) and (1,2,3 캔들 실행) ==> Condition1[0]은 True
==> (2,3 캔들 실행) and (2,3,4 캔들 실행) ==> Condition1[1]은 False
==> (3,4 캔들 실행) and (3,4,5 캔들 실행) ==> Condition1[2]은 False
==> ..........
==> (7,8 캔들 실행) and (7,8,X 캔들 실행) ==> Condition1[6]은 False
==> (8,X 캔들 실행) and (8,X,X 캔들 실행) ==> Condition1[7]은 False
순서2) Condition2 = countif(C < 상한가 and Condition1[1] == true,기간) >= 1;
==> (1 캔들) and (현재 Condition1[1]은 없음 즉 False) ==> Condition2[0]은 False
==> (2 캔들) and Condition1[1] ==> Condition2[1]은 False
==> (3 캔들) and Condition1[2] ==> Condition2[2]은 False
==> ..........
==> (8 캔들) and Condition1[7] ==> Condition2[7]은 False
순서3) if Condition1 == true or Condition2 == true Then
find(1);
순서1-->순서2-->순서3 순으로 실행이 되나요?
Condition1 값을 모두 구한 후 Condition2 값을 모두 구하고 그 다음에 "순서3"을 실행하나요?