커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수식문의

항상 도움 주셔서 감사드립니다. 종목검색 관련 수식에 대하여 아래 문의 드립니다. 1. 현재 1분봉에서 특정값 A 이상인 경우에 해당하는 종목을 검색하여 매매하고 있음. 2. 특정값 A가 1분봉인 관계로 최대 500봉 이상 검색이 되지 않는다는 안내에 따라 1~2일치 1분봉중 특정값 A에 해당하는 종목에 대해서만 검색을 하고 있음. 질문1. 최근 10일중 1분봉상 특정값A 이하였으나, 금일 처음으로 1분봉상 특정값A 이상인 경우만 종목검색 할 수 있는지요(가능하다면 예제 수식 부탁드립니다.) 질문2. 만약 1분봉 500봉까지가 검색의 한계라서 안된다면 현재봉이 500번 봉이라는 가정하에 1봉~100봉까지(아마 1분봉상 어제일듯)는 특정값A이하였고, 450봉~500봉(현재봉)까지(1분봉상 금일 1분봉)까지는 특정값 A이상인 경우를 조회할수 있는지요. (가능하다면 예제수식 부탁드립니다)
프로필 이미지
장태주
2022-05-06
1107
글번호 158633
종목검색
답변완료

또 질문드립니다

또 문의드립니다..! 함수 1 1. 거래대금 1000억이상 양봉 캔들이 생기고 다음날부터 (이때는 이평선 20일선 아래 있어도됨) 2. 이평선 20일선 위에 있는 조건으로 3. 엔벨로프 Period 5 Percent 5 의 지지선에 닿으면 매수 4. 매수가대비 4.5% 상승즉시 매도 5. 매수가가 이평선 5일선과 같아지면 손절 함수 2 1. 상한가 양봉 캔들이 생기고 다음날부터 (이때는 이평선 20일선 아래 있어도됨) 2. 이평선 20일선 위에 있는 조건으로 3. 엔벨로프 Period 3 Percent 3 의 지지선에 닿으면 매수 4. 매수가대비 3.8% 상승즉시 매도 5. 매수한날의 저점을 깨면 손절
프로필 이미지
hana1092
2022-05-06
1263
글번호 158630
사용자 함수
답변완료

수식 수정부탁드립니다.

안녕하십니까 아래 수식중 일부를 수정하고 싶어 부탁드립니다. input : 금액(10000000),ntime(100000); var : 상한가(0), UpLimit(0); var : up1(0), up2(0), up3(0), up4(0), up5(0),up6(0),Up7(0); input : P1(5),P2(20),P3(60),P(20),진입횟수(3),BBP(20),dv(2); input : 진입시작1(91500),진입종료1(110000); input : 진입시작2(130000),진입종료2(153000); var : mav1(0),mav2(0),mav3(0),entry(0),volma(0),Tcond(False),BBup(0); if Bdate != Bdate[1] Then { entry = 0; Condition1 = False; } if TotalTrades > TotalTrades[1] Then Condition1 = False; if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; mav1 = ma(C,P1); mav2 = ma(C,P2); mav3 = ma(C,P3); volma = ma(V,P); BBup = BollBandUp(BBP,dv); Tcond = (sTime >= 진입시작1 and sTime < 진입종료1) or (sTime >= 진입시작2 and sTime < 진입종료2); #오전 09:30~11:00, 오후 1:00~15:30분 사이만 매수 if date >= 19981207 then { if date < 20050328 && CodeCategory() == 2 then UpLimit = (BP[0] * 1.12); Else if date >= 20050328 and date < 20150615 Then UpLimit = (BP[0] * 1.15); Else UpLimit = (BP[0] * 1.30); if CodeCategory() == 2 then { if date >= 20030721 then { up1 = int(UpLimit/100+0.00001)*100; up2 = int(UpLimit/100+0.00001)*100; up3 = int(UpLimit/100+0.00001)*100; up4 = int(UpLimit/50+0.00001)*50; up5 = int(UpLimit/10+0.00001)*10; up6 = int(UpLimit/5+0.00001)*5; up7 = int(UpLimit/1+0.00001)*1; } else { up1 = int(UpLimit/1000+0.00001)*1000; up2 = int(UpLimit/500+0.00001)*500; up3 = int(UpLimit/100+0.00001)*100; up4 = int(UpLimit/50+0.00001)*50; up5 = int(UpLimit/10+0.00001)*10; up6 = int(UpLimit/10+0.00001)*10; up7 = int(UpLimit/1+0.00001)*1; } } Else { up1 = int(UpLimit/1000+0.00001)*1000; up2 = int(UpLimit/500+0.00001)*500; up3 = int(UpLimit/100+0.00001)*100; up4 = int(UpLimit/50+0.00001)*50; up5 = int(UpLimit/10+0.00001)*10; up6 = int(UpLimit/5+0.00001)*5; up7 = int(UpLimit/1+0.00001)*1; } if CodeCategory() == 1 || CodeCategory() == 2 then { if sdate < 20101004 Then { If BP >= 500000 Then 상한가 = up1; Else If BP >= 100000 Then 상한가 = iff(up2>=500000, up1, up2); Else If BP >= 50000 Then 상한가 = iff(up3>=100000, up2, up3); Else If BP >= 10000 Then 상한가 = iff(up4>=50000, up3, up4); Else If BP >= 5000 Then 상한가 = iff(up5>=10000, up4, up5); Else If BP >= 1000 Then 상한가 = iff(up5>=5000, up5, up6); Else 상한가 = iff(up6>=1000, up6, up6); } Else { If BP >= 500000 Then 상한가 = up1; Else If BP >= 100000 Then 상한가 = iff(up2>=500000, up1, up2); Else If BP >= 50000 Then 상한가 = iff(up3>=100000, up2, up3); Else If BP >= 10000 Then 상한가 = iff(up4>=50000, up3, up4); Else If BP >= 5000 Then 상한가 = iff(up5>=10000, up4, up5); Else If BP >= 1000 Then 상한가 = iff(up5>=5000, up5, up6); Else 상한가 = iff(up6>=1000, up6, up7); } } else if CodeCategory() == 8 || CodeCategory() == 9 then { // ETF 상한가 = up6; } } if MarketPosition == 0 Then { if Tcond == true and entry < 진입횟수 and #당일진입은 3회까지 C > DayOpen and #일봉양봉 mav2 > mav2[1] and (TotalTrades == 0 or (TotalTrades > 0 and CountIf(mav2<mav2[1],BarsSinceExit(1)) >= 1)) and V >= volma[1]*2.0 Then #20거래량 평균 2배이상 거래량 발생 { Condition1 = true; TL_New(sDate,sTime,0,sDate,sTime,9999999); } if Condition1 == true and CrossDown(C,mav2) and mav1 > mav2 and mav2 > mav3 and mav2 > mav2[1] Then Buy("b"); } if MarketPosition == 1 Then #if CrossDown(C,BBup) Then #볼밴상단 하향돌파 #ExitLong("bx2"); ExitLong("bx",AtLimit,상한가); SetStopProfittarget(1.7,PercentStop); SetStopLoss(1.3,PercentStop); SetStopEndofday(151500); ------------------------------------------------------------ ㅇ 현재 조건 1. 일봉양봉 2. 20거래량 평균 2배이상 거래량 발생 위 조건 만족후 3. 현재가격이 20일선 하향 돌파 4. 5,20,60일선이 정배열 5. 20일선 상승 ㅇ 수정 요청 사항 3. 현재가격이 20일선 하향 돌파 -> 이부분을 5거래량 이동평균이 20, 60일 거래량 이동평균을 차례로 하향돌파 위 3번 조건을 수정 부탁드립니다 감사합니다.
프로필 이미지
대한이
2022-05-06
1045
글번호 158629
시스템
답변완료

Williams accDist 관련

안녕하세요 Williams AccDist 지표의 타분봉 수치를 구하는 수식을 부탁드립니다. 예를 들어 1분봉에서 5분봉의 Williams AccDist지표를 나타내는 수식을 구하고자 합니다. 감사합니다.
프로필 이미지
단팥빵
2022-05-06
1350
글번호 158616
지표
답변완료

문의드립니다

호가잔량 표시는 asks/bids 로 하는데요 호가건수 표시는 어떻게 하면 되나요? 감사합니다
프로필 이미지
러블리
2022-05-06
1107
글번호 158615
지표
답변완료

수식부탁드려요

A. 5이평선이 연속5회이상 상승한후 하락전환될 때에 이 하락전환된 봉이전 5봉이내의 봉중에서 고가가 가장 높은 봉(조건봉) B. A조건봉은 그 이전 직전 조건봉A(1),전전 조건봉A(2)보다는 높아야 한다. 또한 이전 조건봉A(1)나 A(2)보다 30%이상의 이격(상승)이 있어야 한다 C. B가 만족되면 A의 조건봉으로부터 Period(26)만큼 후행시켰을때에 해당되는 봉의 시가,종가,중심가, 저가,고가라인을 표시되게 할 수 있는 수식. 저가와 고가는 구름대로 표시되게 하고 후행시킨봉으로부터 현재봉까지 표시되게 하고, A의 조건봉이 새로 형성되면 이 표시가격라인도 변동되게 하여야 한다. 특히 이 후행시켜 대응되는 봉의 고가가 A의 조건봉 시저고종가중 가장 낮은 가격보다 높아서는 안되므로 B의 조건이 만족되더라도 라인을 변경 갱신하면 안된다 위의 조건을 만족하는 지표수식을 부탁드립니다. 그리고 A의 조건봉을 형성하고 C에서 설정된 고가와 저가사이 가격대까지 하락한 종목 검색식도 부탁드립니다.
프로필 이미지
해피오
2022-05-06
1468
글번호 158614
지표
답변완료

수정 부탁드립니다

안녕하세요 아래의 수식중 5일선이 20선을 통과할때 또는 60선을 통과할 때 매수 매도 신호가 나오는데 5일선이 통과후 한번더 꺾였다가 올라가거나 내려갈때 신호로 수정좀 부탁드립니다. 표현이 잘 전달되었는지 모르겠습니다. 고맙습니다. var : mav1(0),mav2(0),mav3(0),T1(0),T2(0),T3(0); mav1 = ma(c,5); mav2 = ma(c,20); mav3 = ma(c,60); if mav1 > mav1[1] Then T1 = 1; if mav1 < mav1[1] Then T1 = -1; if T1 == 1 and T1[1] != 1 Then var1 = 0; // if T1 == 1 and C > O and (C+O)/2 >= mav1 and mav2 > mav2[1] and mav3 > mav3[1] Then{ 60이평포함 if T1 == 1 and C > O and (C+O)/2 >= mav1 and mav2 > mav2[1] and mav1 > mav2 Then{ var1 = var1+1; if var1 == 1 Then buy("5매수"); } if T1 == -1 and T1[1] != -1 Then var2 = 0; // if T1 == -1 and C < O and (C+O)/2 <= mav1 and mav2 < mav2[1] and mav3 < mav3[1] Then{ 60이평포함 if T1 == -1 and C < O and (C+O)/2 <= mav1 and mav2 < mav2[1] and mav1 < mav2 Then{ var2 = var2+1; if var2 == 1 Then sell("5매도"); }
프로필 이미지
라몬
2022-05-06
1464
글번호 158612
시스템
답변완료

수식 질문드립니다.

1. 참조차트 분봉으로 불러들일경우 관련된 data 전부 다 딸려서 pc로 불러지나요? (ex interest 거래량 등등) 예를들어 data1(interest) 이런걸 쓰면 새로 서버에서 받는건가요? 아니면 이미 다운받은걸 활용하는건가요? 2. 선물 1분봉의 경우 , upvol , ask 등등 관련된 지표들 시고저종 표시 가능한지 궁금합니다. 감사합니다.
프로필 이미지
캣피쉬
2022-05-06
1224
글번호 158609
시스템
답변완료

안녕하세요 도움 부탁드립니다

안녕하세요 수식작성 어려움이 있어서 도움 요청 드립니다 1) 오늘의 중심가격 아래에 가격 중 최저가(A)를 저장합니다 2) 오늘의 고점이 갱신되면 1)에서 저장되었던 가격(A)의 선을 출력합니다 3) 저가 ~ 갱신된 고점의 중심가격 아래 가격 중 최저가(B)를 저장합니다 4) 다시 고점이 갱신되면 (B)가격의 선을 출력합니다 감사합니다 즐거운 주말 되세요:)
프로필 이미지
티끌모아티끌
2022-05-06
1411
글번호 158608
지표