커뮤니티
내가 만든 전략들과 지식을 공유하고 토론합니다.

52주 신고가 종목 고르기 질문

LimSung Hyun 2020.10.04 22:33 조회수  298 추천 0


52주 신고가인 종목을 고르기 위해 위처럼 블록코딩을 설정해봤는데 배열이 0이 나오네요.

어떤 부분을 잘못한건지 질문드려봅니다.

댓글 5
return 값이 있는 함수면 변수가 아니라 함수로 값을 불러와야 하고,
저라면 52주 신고가이면 240~252일 사이의 값(거래일 기준)을 쓰겠구요, 주가는 300 거래일까지만 호출되는 걸로 알고있습니다.
상장한지 얼마 안된 종목도 있을테니 필터에 "수정주가 240거래일 과거값 > 0" 추가하면 좋을 것 같고
바꾸기 블록은 변수 값을 바꿔주는게 아니라 누적 덧셈입니다.

반복문에 리스트 형태로 주가를 받아서 return 부에서 조건문 넣고 boolean으로 값을 받는 것도 괜찮아보입니다.
koa55 2020.10.05 03:03
답변 감사합니다. 어떤 부분 바꿔야 할지 대충 감이 오네요.
LimSung Hyun 2020.10.06 07:45
'52주비교' 함수에서 if 블록 안쪽에 오류가 있어 보여 코멘트 남깁니다.

조건이 만족되면, 즉 기존의 최고값(52최고 변수값)보다 더 큰 새로운 값을 만나면 52최고 변수를 그 새로운 값으로 바꾸어 주는 블록을 잘못 사용하신 거 같습니다.

"바꾸기 (52최고) 만큼 (수정종가의 i 거래일 과거값)" 블록은 52최고  <-  52최고 + (수정종가의 i 거래일 과거값)를 의미하는 블록입니다. (블록 라이브러리의 한글버전에서 바꾸기와 만큼이라는 한글 표현이 영어로 되어 있는 위치에 그대로 번역되어 있다 보니 좀 이상합니다.)

그 블록 대신에 "(52최고)를 (수정종가의 i 거래일 과거값) 로 설정" 블록을 사용하셔야 맞습니다.
Joseph 2020.10.06 12:15
조언 감사합니다. 고쳐서 해보겠습니다~
LimSung Hyun 2020.10.06 16:37
저도 참고하겠습니다~
JulyyKim 2021.07.23 19:18
댓글 등록을 위해서 로그인해주세요.
 
최신 게시글