커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내

안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
프로필 이미지
예스스탁
2026-02-27
1583
글번호 230811
지표
답변완료

다음의 수식 변환을 부탁드립니다.

다음 3개의 수식 변환을 부탁드립니다. (1) VV = if(time==090000 or time==153000, 0, V); Hv = HighestSince(1, date!=date(1), VV); HH = Valuewhen(1, Hv==VV, H); 조건 = Valuewhen(1, date!=date(1), HH(1)); CrossUp(C, 조건) (2) A = (Dayclose() + Predayclose() + nPredayclose(2) + nPredayclose(3) + nPredayclose(4))/5; B = (Predayclose() + nPredayclose(2) + nPredayclose(3) + nPredayclose(4) + nPredayclose(5))/5; 조건 = B < A && B(3)> B(2)>B(1)<B && (C >A && C >B) or (CrossUp(C, A) && CrossUp(C, B)); 조건 && !조건(1) (3) A = EnvelopeC(50,3); B = EnvelopeC(48, 2); Valuewhen(1, CrossUp(A, B), B)
프로필 이미지
redcon
2023-01-29
1025
글번호 165778
종목검색
답변완료

문의 드립니다2

수고 하십니다. 아래 지표식의 의미와 개략적인 사용법에 대한 설명 부탁드립니다. 수고하세요. #### inputs: Length(21), SDeg(3); Vars: LinRegY(0), X(0), StdErr(0), LinRegS(0), SErr(0), inx(0),calcB(0),calcA(0); inx = inx+1; Value1 = AccumN(inx * Close, Length) - (Length * ma(inx, Length) *ma(Close, Length)); Value2 = AccumN(Square(inx), Length) - (Length * Square(ma(inx, Length))); calcB = Value1/Value2; calcA = Average(Close, Length) - (calcB * ma(inx, Length)); LinRegY = LinearRegValue(Close, Length, 0); X = CurrentBar; IF CurrentBar > Length then Begin Value4 = (AccumN(Square(Close), Length)) - ((calcA * AccumN(Close, Length))) - ((calcB * AccumN(X * Close, Length))); Value5 = Length - 2; StdErr = SquareRoot(Value4 / Value5); LinRegS = Ma(LinRegY, SDeg); SErr = 2 * ma(StdErr, SDeg); Plot21(LinRegS, "LinRegS"); Plot22(LinRegS + SErr, "+StdErrS"); Plot23(LinRegS - SErr, "-StdErrS"); End; /* 문의하신 식은 다음과 같습니다. 사용자 함수에서 LinearRegValue란 이름으로 저장하시기 바랍니다. Input: Price(Numeric), Len(Numeric), TargetB(Numeric); Var: X(0), Num1(0), Num2(0), SumBars(0), SumSqrBars(0), SumY(0), Sum1(0), Sum2(0), Slope(0), Intercept(0); If Len == 0 Then LinearRegValue = 0; SumBars = 0; SumSqrBars = 0; SumY = 0; Sum1 = 0; Sum2 = 0; SumY = accumN(Price, Len); SumBars = Len * (Len - 1) * .5; SumSqrBars = (Len - 1) * Len * (2 * Len - 1) / 6; For X = 0 To Len - 1 Begin Sum1 = Sum1 + X * Price[X]; End; Sum2 = SumBars * SumY; Num1 = Len * Sum1 - Sum2; Num2 = SumBars * SumBars - Len * SumSqrBars; If Num2 != 0 Then Slope = Num1 / Num2; Else Slope = 0; Intercept = (SumY - Slope * SumBars) / Len; LinearRegValue = Intercept + Slope * (Len - 1 - TargetB); */
프로필 이미지
오이도인
2023-01-27
1057
글번호 165777
지표
답변완료

문의 드립니다

수고하십니다. 아래 식 오류 수정 부탁드립니다. 수고하세요 #### INPUTS: LENGTH(21), SDEG(3); VARS: LINREGY(0), X(0), STDERR(0), LINREGS(0), SERR(0),VALUE1(0),VALUE2(0),VALUE3(0); LINREGY = LRL(CLOSE, LENGTH); X = INDEX(); IF INDEX() > LENGTH THEN BEGIN VALUE1 = (ACCUMN(CLOSE^2, LENGTH)) - ((CALCA(LENGTH) * ACCUMN(CLOSE, LENGTH))) - ((CALCB(LENGTH) * ACCUMN(X * CLOSE, LENGTH))); VALUE2 = LENGTH - 2; VALUE3 = (VALUE1 / VALUE2); IF VALUE3 > 0 THEN STDERR = SQRT(VALUE1 / VALUE2); ELSE STDERR = STDERR[1]; LINREGS = MA(LINREGY, SDEG); SERR = 2 * MA(STDERR, SDEG); PLOT1(LINREGS, "LINREGS"); PLOT2(LINREGS + SERR, "+STDERRS"); PLOT3(LINREGS - SERR, "-STDERRS"); END;
프로필 이미지
오이도인
2023-01-27
1184
글번호 165776
지표
답변완료

함수요청

안녕하세요? 아래의 전략에 대해 스크립트 작성 요청드립니다. 국내선물 1분봉으로 거래를 일중매매를 하고자 합니다. - 9시 1분에 완성되는 당일 첫봉이 양봉이고 과거봉 100개의 장중 고점보다 당일 첫 1분봉의 저가가 크면 익봉시가에 매수 - 9시 1분에 완성되는 당일 첫봉이 음봉이고 과거봉 100개의 장중 저점보다 당일 첫 1분봉의 고점이 작으면 익봉시가에 매도 - 금일의 봉을 고려하지 않은 전영업일부터 과거 100개 봉의 고점을 이탈하면 익봉시가에 매수청산 or - 당일의 현재봉 포함 과거 100개 봉의 고점을 이탈하면 익봉시가에 매수청산 - 금일의 봉을 고려하지 않은 전영업일부터 과거 100개 봉의 저점을 돌파하면 익봉시가에 매도청산 or - 당일의 현재봉 포함 과거 100개 봉의 저점을 돌파하면 익봉시가에 매도청산 - 15시 20분 강제청산 - 메수든 매도든 진입기준 일 최대 1번입니다.
프로필 이미지
흰둥이아빠
2023-01-27
922
글번호 165775
시스템
답변완료

수식부탁드립니다

안녕하세요? 전봉의 고점을 돌파하면 1틱 위에서부터 매수를 시작하여 1틱씩 오를 때마다 1계약씩 계속 매수해나가다가, 종가에는 종가 이하 가격에 체결된 계약수만큼을 청산하는 식 부탁드립니다(종가보다 높은 계약은 그냥 두고 다음 봉으로 넘깁니다). 감사합니다.
프로필 이미지
음양조파
2023-01-28
806
글번호 165774
시스템
답변완료

수식좀 부탁드려요

온라인상이지만 늘 도움주셔서 진심으로 감사드립니다~ 이격도 검색식 좀 부탁드리겠습니다. ============ 50일 고가 이동평균(가중) 과 65일 고가 이동평균(가중)과의 이격도가 99%이상 101% 이하 50일 고가 이동평균(가중) 과 35일 고가 이동평균(가중)과의 이격도가 99%이상 101% 이하 35일 고가 이동평균(가중) 과 65일 고가 이동평균(가중)과의 이격도가 99%이상 101% 이하 ============ 또하나는 동일 조건에 추가로 50일고가이동평균(가중)이 역배열에서 정배열로 전환되는조건도 추가해서 부탁드려용 요것좀 부탁드리겠습니다. 거듭 감사드리고 새해 복 많이 받으세요~
프로필 이미지
신데렐라맨
2023-01-28
712
글번호 165773
종목검색
답변완료

지표식표시

일정값을 계산해서 연결하는 지표식을 만들어서 봉차트에 겹쳐서 선이 나타나게 하고 싶은데, 분할이 되어 봉차트의 하단에 따로 나타납니다. 봉차트에 값을 겹쳐서 나타나게 하려면 어떻게 하면 되는지요?
프로필 이미지
음양조파
2023-01-27
808
글번호 165772
지표
답변완료

매매 중복 문의

안녕하세요 개발자님. 예를들어 시스템1, 시스템2로 자동매매를 진행한다고 가정해보겠습니다.(둘 다 코스피선물 매매 시스템 입니다.) 시스템 1,2 모두 매수 조건에 If marketposition==0 then buy(); 처럼 marketposition을 이용한 매매를 할 때, 시스템 1 이 먼저 진입한 상태에서 계좌는 코스피 매수 포지션을 들고 있으므로, 시스템 2의 매수는 발생하지 않나요? 아니면 시스템 1,2 모두 차트기반으로 marketposition 이 설정되므로 시스템 1 매수포지션을 들고 있는 상태에서도 시스템 2 매수 신호가 나온다면 매수가 이루어지나요? 항상 도움주셔서 감사합니다.
프로필 이미지
히익
2023-01-27
689
글번호 165771
시스템
답변완료

수긱부탁드립니다.

안녕하세요? 봉의 상단이 60이평선 위로 올라서고 그 이후 진행하는 어느 봉도 하단이 60이평선 아래로 내려간 적이 없으면, 그간 진행한 봉의 상단중 최고 높은 값과 최초로 60이평선 위로 올라선 봉의 60이평선값의 중간값을 계산해서, 어느 봉의 하단이 그 중간값보다 클 때만 하단 하향돌파시 1계약 매도, 중간값에 도달하면 청산하는 식 부탁드립니다. 늘 감사합니다.
프로필 이미지
음양조파
2023-01-27
688
글번호 165770
시스템