Squeeze Momentum Scanner
- 지표
-
Evgenii Sutulov
I build trading indicators, strategies, and dashboards that don't repaint.
Seven years doing this. MetaTrader 4, MetaTrader 5, TradingView.
Closed bars only. What you see is what happened.
The bar being formed never changes a published value. - 버전: 1.3
- 활성화: 20
Squeeze Momentum Scanner는 하나의 파일에 두 개의 제품이 들어 있습니다. 첫째는 이 차트의 전용 서브윈도우에 그려지는 Squeeze Momentum MTF 자체입니다. 확장과 감쇠에 따라 색이 바뀌는 모멘텀 히스토그램과, 볼린저 밴드가 켈트너 채널 안에 있는지 밖에 있는지 아니면 방금 밖으로 나왔는지를 말해 주는 스퀴즈 점의 줄입니다.
둘째는 같은 계산을 여러 종목과 여러 타임프레임에 한 번에 돌리는 보드입니다. 스퀴즈 해제는 짧게 지나가는 사건이고 상품마다 서로 다른 때에 일어납니다. 보드가 존재하는 이유가 바로 이런 경우입니다. 표가 그것을 찾아내고, 그 아래 서브윈도우가 그것을 만든 히스토그램을 보여줍니다.
보드
종목마다 한 행, 스캔하는 타임프레임마다 한 열이며 최대 4열, 최대 28종목입니다. 종목 목록은 쉼표로 구분하거나 Market Watch 목록을 그대로 쓸 수 있습니다. 브로커 접두사와 접미사는 현재 차트에서 인식하거나 직접 지정합니다. 기본값은 M15, H1, H4, D1의 네 개입니다.
셀은 ^14b 형태로 읽습니다. 스퀴즈가 해제되던 순간 모멘텀이 어느 쪽에 있었는지, 그리고 그 해제가 몇 봉 전이었는지입니다. flat은 계산이 실행되었으나 구간에서 해제를 찾지 못했다는 뜻입니다. 점 세 개는 아직 측정되지 않은 셀이며, 마우스를 올리면 이유를 설명합니다. 신선도 기준보다 오래된 해제는 색조는 유지하고 농도를 잃습니다. 신선한 해제가 하나라도 있는 행에는 강조색이 옅게 깔립니다.
AGREE 열은 종목마다 보이는 타임프레임 열을 모아 다수 쪽을 찾아 v3/4 같은 형태로 표시합니다. 방향과, 보이는 타임프레임 중 몇 개가 그쪽에 서 있는지입니다. 완전 일치는 해당 방향의 색으로 굵게 그립니다. 동수이면 대시를 표시하며 판정이 아닙니다. 1 대 1로 갈린 것을 신호라 부르는 것은 확신을 지어내는 일이기 때문입니다. 타임프레임이 하나만 보일 때는 옆 셀을 되풀이할 뿐인 1/1을 찍는 대신 열 자체를 없앱니다.
열 머리글은 버튼입니다. 타임프레임 머리글을 누르면 그 열 기준으로 정렬되며 신선한 순서가 위, 아무것도 없는 행이 아래로 갑니다. 다시 누르면 역순입니다. AGREE를 누르면 합의 정도로 정렬되며 완전 합의가 먼저 옵니다. 활성 머리글에는 강조색과 삼각 표시가 붙습니다. 별도의 Sort 버튼은 freshest, grade, name을 순환합니다.
Show 버튼은 all, buys, sells, fresh를 순환합니다. buys와 sells는 개별 셀이 아니라 AGREE 판정을 따릅니다. 따라서 buys에 보이는 행은 AGREE에서 항상 위쪽 기호를 읽으며, 동수인 행은 어느 쪽에도 나타나지 않습니다. 필터가 작용하는 곳은 계산이 아니라 화면입니다.
표 위의 범례는 표기법을 풀어 주며 끌 수 있습니다. 타임프레임 버튼은 뒤의 측정을 멈추지 않고 열만 보이거나 숨깁니다. 셀을 누르면 현재 차트가 그 종목과 그 타임프레임으로 전환됩니다.
표시되는 행 수는 차트 창에 맞춰 조정되며 행 설정값은 상한입니다. 페이지 버튼은 행이 다 들어가지 않을 때만 나타납니다. 보드는 창이 담을 수 있는 것보다 많은 행을 절대 그리지 않으므로, 행 설정을 아무리 크게 잡아도 페이지 버튼은 항상 화면 안에 있고 항상 누를 수 있습니다.
상태 두 줄은 항상 표시됩니다. 준비된 종목 수와 전체 수, 마지막 갱신 이후 경과 시간, 조회 구간에서 찾은 해제의 수, 그리고 워치독 줄이거나 아무것도 보이지 않는 이유를 설명하는 문장입니다.
진단
기본값이 꺼짐인 두 번째 패널은 "왜 신호가 없는가"에 답합니다. 종목 커버리지, 봉이 부족한 계열, 구간에서 찾은 신호 수, 그리고 이 지표가 Market Watch에서 켠 종목 수입니다. 측정할 수 없었던 셀은 비워 두지 않고 이유를 설명합니다.
차트 지표
전용 서브윈도우에 그려집니다. 네 가지 색의 모멘텀 히스토그램과 세 가지 상태의 스퀴즈 점입니다. 이 지표의 타임프레임은 보드가 스캔하는 타임프레임과 별도로 설정합니다.
설정 시트
톱니바퀴를 누르면 세 개의 탭이 열립니다. Values에는 타임프레임, 볼린저 길이, 볼린저 승수, 켈트너 길이, 켈트너 승수, 그리고 켈트너 레인지에 트루 레인지를 쓸지 단순한 고가 빼기 저가를 쓸지가 있습니다. 모든 행에 증감 버튼과 허용 범위, 한 문장의 도움말이 붙습니다. 하나를 바꾸면 보드 전체가 다시 계산되며 패널이 진행 상황을 보고합니다.
Alerts에는 마스터 스위치, 이벤트별 스위치, 네 개의 채널, 쿨다운, 테스트 버튼이 있습니다.
Styles에는 범례, 팔레트, 모멘텀 히스토그램, 스퀴즈 점, 점 크기가 있습니다. 짝을 이루는 단일 차트 지표가 가진 것과 같은 표시 컨트롤이며 이름도 같습니다. 한쪽에서 맞춘 차트를 다른 쪽에서 그대로 재현할 수 있습니다.
색 구성표는 세 가지이며, 빨강과 초록 대신 파랑과 주황을 쓰는 색맹 안전 구성표가 포함됩니다. 패널 위치, 구성표, 정렬, 필터, 보이는 열, 시트에서 바꾼 모든 값은 차트별로 저장되어 타임프레임 변경과 터미널 재시작을 넘어 유지됩니다. 인터페이스는 영어입니다.
알림
기본값은 꺼짐이며, 마스터 스위치는 패널 위에 있고 그 옆에 Test alert 버튼이 있습니다.
이벤트는 신선한 BUY와 신선한 SELL이며 스캔하는 타임프레임마다 따로 선언됩니다. 여기에 종목이 데이터를 잃거나 되찾을 때 말하는 data health가 더해집니다. 최소 등급 설정이 있으나 이 포트는 등급을 매기지 않으므로 모든 신호가 등급 1로 계산됩니다.
채널은 팝업 창, 소리, 모바일 터미널 푸시, 이메일입니다. 쿨다운은 셀별 이벤트별로 유지되며 기본값은 30분입니다. Telegram은 이 제품에 포함되지 않습니다.
비용
작업량은 예산으로 관리됩니다. 타이머 한 틱마다 정해진 수의 종목만 갱신하므로, 목록이 길어도 부하가 분산되고 터미널이 멈추지 않습니다. 첫 통과는 점진적으로 진행되며 패널이 측정된 비율을 보고합니다.
EA에서 읽기
차트 지표의 버퍼는 iCustom과 CopyBuffer로 읽을 수 있습니다. 버퍼 0 Momentum은 추세를 제거한 계열에 대한 선형 회귀의 끝점 값이고, 버퍼 1은 그 색 인덱스입니다. 0은 상승하며 확장, 1은 상승하며 감쇠, 2는 하락하며 확장, 3은 하락하며 감쇠를 뜻합니다. 버퍼 2 Squeeze는 점이며 보이는 자리에서는 언제나 0.0입니다. 버퍼 3은 그 색 인덱스로 0은 스퀴즈 없음, 1은 스퀴즈 진행 중, 2는 스퀴즈 해제를 뜻합니다. 버퍼 4 Signal은 강세 해제에 +1, 약세 해제에 -1, 해제가 없으면 0입니다.
이 제품에는 Buy와 Sell 가격을 담는 별도의 버퍼가 없습니다. 이벤트는 버퍼 4입니다.
Styles 탭은 플롯의 색을 거두는 방식으로 숨기며 버퍼를 비우는 방식은 절대 쓰지 않습니다. 위에 나열한 모든 인덱스는 표시 스위치를 꺼도 iCustom과 CopyBuffer로 계속 읽히고 Data Window에도 계속 보입니다.
보드 자체는 패널이지 버퍼가 아닙니다. 눈으로 읽고 알림으로 받습니다.
출처
이 제품은 저자 자신의 오픈소스 게시물에 근거한 "Squeeze Momentum Indicator [LazyBear]"의 포트입니다. 그 게시물에는 라이선스가 붙어 있지 않으며, 그래서 수식에 충실한 포팅이 허용됩니다. 이 구현은 짐작이 아니라 그 수식을 따릅니다.
제품이 이 방법의 이름을 쓰는 것은 그것을 구현하기 때문입니다. 원저작물은 LazyBear의 것이며 여기서 그 저작권을 주장하지 않습니다.
정직한 한계
보드는 마감된 봉을 읽고 셀의 나이도 마감된 봉으로 셉니다. 서브윈도우에서는 아직 마감되지 않은 봉의 히스토그램과 점이 살아 있으며 그 봉이 마감될 때까지 계속 바뀌므로, 봉 중간에 보이던 해제가 마감 시점에는 없을 수 있습니다. 마감된 봉이 공개한 것은 이후 바뀌지 않습니다.
스퀴즈 해제는 변동성에 대한 진술이지 방향에 대한 진술이 아닙니다. 모멘텀의 부호는 해제 순간에 에너지가 어느 쪽에 있었는지를 말합니다. 스퀴즈는 아무 일도 없이 풀릴 수도 있습니다. 압축은 확장의 필요조건이지 충분조건이 아닙니다.
AGREE는 타임프레임을 세는 것이지 확률을 추정하지 않으며, 한 상품에 대한 상관된 네 개의 판독이 일치한 것은 독립적인 네 번의 확인과 같지 않습니다. 동수는 의도적으로 판정을 내리지 않으며 buys 필터와 sells 필터 양쪽에서 숨겨집니다.
볼린저와 켈트너 설정은 검출되는 스퀴즈의 수를 실질적으로 바꿉니다. 켈트너 승수를 넓히면 더 많아지고 좁히면 더 적어지며, 어느 구성도 정답은 아닙니다.
스캔에는 비용이 듭니다. 28종목에 네 개의 타임프레임이면 112개의 셀입니다. 느린 장비에서 낮출 대상은 예산 설정입니다.
여기서 수익 수치, 승률, 백테스트 결과를 주장하지 않습니다.

