커뮤니티

수식문의

프로필 이미지
ksks
2025-11-23 11:53:17
38
글번호 228328
답변완료

input : length(22); input : mult(3.0); input : useClose(1);#1:종가, 0:고가/저가 var : alpha(0),atrv(0),a(0); var : longStop(0),longStopPrev(0),shortStop(0),shortStopPrev(0),dir(1); var : Buysignal(False),Sellsignal(False),tx(0); alpha = 1 / length ; atrv =  IFf(IsNan(ATRV[1]) == true, ma(TrueRange,length) , alpha * TrueRange + (1 - alpha) * IFf(isnan(ATRV[1])==true,0,ATRV[1])); a = mult * atrv; longStop = IFF(useClose == 1,highest(close, length), highest(H,length)) - a; longStopPrev = iff(isnan(longStop[1])==true, longStop,longStop[1]); longStop = iff(close[1] > longStopPrev , max(longStop, longStopPrev) , longStop); shortStop = IFF(useClose == 1,lowest(close, length), lowest(L,length)) + a; shortStopPrev = iff(IsNan(shortStop[1])==true, shortStop[1], shortStop); shortStop = iff(close[1] < shortStopPrev , min(shortStop, shortStopPrev) , shortStop); dir = iff(close > shortStopPrev , 1 , iff(close < longStopPrev , -1 , dir)); buySignal = dir == 1 and dir[1] == -1; sellSignal = dir == -1 and dir[1] == 1; if buySignal == true then Find(1); 위 수식은 트레이딩뷰의 Chandelier exit을 예스트레이드 수식으로 변환요청해서 받은 것입니다. 받고보니 의문이 있어 글 올립니다.  -예스스팟에서 위 수식을 넣고 + 마지막 줄의  if buySignal == true then을 sellSignal로 바꿔 추가로 넣으면    buy/sell 신호시 매수매도가 가능한지요? -선물같이 한종목이 아닌 여러종목이라 불가하다면 한종목만(예.삼성전자 또는 sk하이닉스) 지정해서 할 방법은 없는지요? -느낌에는 buy용 수식하나, sell용 별도 수식하나를 작성하고 예스스팟도 각 수식을 넣은 두개로 돌리면 될거같은데요.

답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-11-26 16:28:07

안녕하세요 예스스탁입니다. 예스랭귀지와 예스스팟은 언어가 다릅니다. 해당 수식을 스팟편집기에 입력은 의미가 없습니다.
차트가 기반이 되어야 하는 해당 내용 자체를 스팟으로 구현할 수 없습니다. 해당 내용은 차트에 적용해야 계산이 가능내용입니다. 아래와 식을 예스랭귀지 시스템식으로 만드신 후에 거래하고자 하는 종목의 차트를 열고 각각 다 적용하셔야 합니다, input : length(22); input : mult(3.0); input : useClose(1);#1:종가, 0:고가/저가 var : alpha(0),atrv(0),a(0); var : longStop(0),longStopPrev(0),shortStop(0),shortStopPrev(0),dir(1); var : Buysignal(False),Sellsignal(False),tx(0); alpha = 1 / length ; atrv =IFf(IsNan(ATRV[1]) == true, ma(TrueRange,length) , alpha * TrueRange + (1 - alpha) * IFf(isnan(ATRV[1])==true,0,ATRV[1])); a = mult * atrv; longStop = IFF(useClose == 1,highest(close, length), highest(H,length)) - a; longStopPrev = iff(isnan(longStop[1])==true, longStop,longStop[1]); longStop = iff(close[1] > longStopPrev , max(longStop, longStopPrev) , longStop); shortStop = IFF(useClose == 1,lowest(close, length), lowest(L,length)) + a; shortStopPrev = iff(IsNan(shortStop[1])==true, shortStop[1], shortStop); shortStop = iff(close[1] < shortStopPrev , min(shortStop, shortStopPrev) , shortStop); dir = iff(close > shortStopPrev , 1 , iff(close < longStopPrev , -1 , dir)); buySignal = dir == 1 and dir[1] == -1; sellSignal = dir == -1 and dir[1] == 1; if buySignal == true then Buy(); if buySignal == true then Sell(); 즐거운 하루되세요