커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수정부탁드립니다

텍스트 위치 우즉 끝자리로이동 방법부탁드립니다. Input:기간(10000), 구간개수(20); //최대 20 Var:최대(0),최소(0),j(0),행번호(0),총거래량(0),가격대거래량(0),kValue1(0), 시작번호(0),끝번호(0); Array:가격대[21](0),거래량[21](0),비율[21](0),Text[21](0),TL[21](0); #----------------------------------------------------------------------------------# # 가격대를 배열변수에 세팅한다. #----------------------------------------------------------------------------------# //if CurrentDate == sDate Then //당일기준 //{ var1 = DateToJulian(CurrentDate)-1; IF DayOfWeek(CurrentDate) == 1 Then Var1 = Var1-2; if sDate >= JulianToDate(var1) Then { TL_Delete(TL[j]); 최대 = Highest(H,기간-1); 최소 = Lowest(L,기간-1); kValue1 = Round((최대-최소)/구간개수,0); 가격대[0] = 최대; For 행번호 = 0 To 구간개수-1 { 가격대[행번호+1] = 가격대[행번호] - kValue1; 거래량[행번호] = 0; 비율[행번호] = 0; } 총거래량 = 0; For j = 0 To 기간-2 { 총거래량 = 총거래량 + V[j]; #----------------------------------------------------------------------------------# # 거래량을 걸쳐있는 가격대에 분배 #----------------------------------------------------------------------------------# for 행번호 = 0 To 구간개수-1 { if 가격대[행번호] >= H[j] and 가격대[행번호+1] < H[j] then 시작번호 = 행번호; if 가격대[행번호] >= L[j] and 가격대[행번호+1] < L[j] then 끝번호 = 행번호; } 가격대거래량 = V[j]/(끝번호-시작번호+1); for 행번호 = 시작번호 To 끝번호 { 거래량[행번호] = 거래량[행번호] + 가격대거래량; } } #----------------------------------------------------------------------------------# # 비율 계산 #----------------------------------------------------------------------------------# for 행번호 = 0 To 구간개수-1 { 비율[행번호] = 거래량[행번호] * 100 / 총거래량; } #----------------------------------------------------------------------------------# # 지표출력 #----------------------------------------------------------------------------------# for j = 0 to 구간개수-1 { Text_Delete(Text[j]); Text[j] = Text_New(date[0], stime[0], (가격대[j]+가격대[j+1])/2,NumToStr(거래량[j],0)+"("+NumToStr(비율[j],2)+"%)("+NumToStr(가격대[j+1],0)+" ~ "+NumToStr(가격대[j],0)+")"); Text_SetStyle(Text[j], 1, 2); } j = 구간개수; }
프로필 이미지
외국인
2023-02-03
998
글번호 165995
지표
답변완료

함수요청

청산식 조건에 현재가가 당일 시가보다 높거나 전일대비 상승시 완성의 익봉 시가 청산 조건을 추가 하고 싶습니다.
프로필 이미지
흰둥이아빠
2023-02-03
1286
글번호 165990
시스템
답변완료

문의 드립니다 봉 갯수매매

해외선물 일봉매매에서 캔들의 고점 매도 주문과 저점 매수 주문을 할려고 합니다. 1. 고점 매도 연결되어진 10봉중 각 고점들이 50틱안의 봉이 4개인경우 고점보다 - 30틱에서 매도주문후 14봉 종가 청산하는 수식어 2. 저점 매수 연결되어진 10봉중 각 저점들이 50틱안의 봉이 4개인경우 저점보다 + 30틱에서 매수주문후 14봉이후 종가 청산하는 수식어 ----------- 해외선물에서 18시부터 익일 06시 청산되고 익절 100틱, 손절50틱인 10분봉 매매를 위의 수식어 주문 내용과 동일하게 부탁드립니다.
프로필 이미지
푸른
2023-02-19
1114
글번호 165987
시스템
답변완료

수식 문의 드립니다.

안녕하세요 수식 문의 드립니다. 1. 스토캐스틱 5.3.3 이 80 (과열권)을 상향 돌파해서 20 (침체권)을 하향 돌파 할때 까지는 바탕색이 분홍색으로 나오게 하고 2. 스토캐스틱 5.3.3 이 20 (침체권)을 하향 돌파해서 80 (과열권) 을 상향 돌파 할때 까지는 바탕색이 파란색으로 나오게 하는 식입니다. 항상 감사드립니다.
프로필 이미지
돌쇠2
2023-02-03
1121
글번호 165985
지표
답변완료

해당 전략의 매매 손익을 지표로 사용

어느덧 코로나도 끝이 보여지는 것 같네요. 항상 건강하시길 바랍니다. ----- 시스템에서 매매 전략을 적용하면, 백테스트 결과를 볼수 있는 걸로 아는데, 해당 백테스트 결과를 지표로 사용하길 원합니다. 어떻게 가능 한 방법이 없을까요..??
프로필 이미지
이만스닥
2023-02-03
794
글번호 165984
시스템
답변완료

수식 검토 부탁합니다.

항상 도와주셔서 감사합니다. 아래와 같이 수식을 작성해서 검증을 했는데 매수 매도가 안되는데 왜 그런지 모르겠습니다. 검토 부탁 드립니다. input : StartTime(080000),EndTime(053000); input : N(60); input : 익절틱수(160),손절틱수(80); var : HH(0),LL(0),PH(0),NL(0),S1(0),D1(0),count1(0),count2(0),Tcond(False),entry(0); var : BXcond(False),SXcond(False); var : cnt(0),bloss(0),sloss(0); HH = highest(H,N); LL = lowest(N,H); IF Endtime > starttime Then SetStopEndofday(Endtime); Else// { if sDate != sDate[1] Then SetStopEndofday(Endtime); } if (sdate != sdate[1] and stime >= EndTime) or (sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then Tcond = False; if (sdate != sdate[1] and stime >= StartTime) or (sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then { Tcond = true; IF Endtime <= starttime Then { SetStopEndofday(0); } } if Bdate != Bdate[1] Then { S1 = TimeToMinutes(stime); D1 = sdate; Condition3 = False; entry = 0; } if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; bloss = 0; sloss = 0; for cnt = 1 to 3 { if MarketPosition(cnt) == 1 and IsExitName("StopLoss",cnt) == true Then bloss = bloss+1; if MarketPosition(cnt) == -1 and IsExitName("StopLoss",cnt) == true Then sloss = sloss+1; } BXcond = MarketPosition == 0 and (bloss == 3 or (bloss < 3 and MarketPosition(1) == 1 and IsExitName("StopLoss",1) == true and C >= ExitPrice(1))); SXcond = MarketPosition == 0 and (sloss == 3 or (sloss < 3 and MarketPosition(1) == -1 and IsExitName("StopLoss",1) == true and C <= ExitPrice(1))); #N봉 신저가발생 if L < LL[1] Then { Condition1 = true; #파동카운트 0으로 초기화 count1 = 0; #양음봉 고가 저장변수 초기화 PH = 0; } Else { #직전 고점보다 큰 양봉다음음봉 발생 if Condition1 == true and C[1] > O[1] and C < O and (PH == 0 or (PH > 0 and H[1] > PH)) Then { #양봉고가 저장 PH = H[1]; #카운트 count1 = count1+1; #6번째 매도진입 if count1 == 6 and SXcond == true Then Sell(); } } #N봉 신고가발생 if H > HH[1] Then { Condition2 = true; #파동카운트 0으로 초기화 count2 = 0; #양음봉 고가 저장변수 초기화 NL = 0; } Else { #지전고점보다 큰 양봉다음음봉 발생 if Condition2 == true and C[1] < O[1] and C > O and (NL == 0 or (NL > 0 and L[1] < NL)) Then { #음봉저가 저장 NL = L[1]; #카운트 count2 = count2+1; #6번째 매수진입 if count2 == 6 and BXcond == False Then Buy(); } } SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopLoss(PriceScale*손절틱수,PointStop); if MarketPosition == 0 and TotalTrades> TotalTrades[1] and IsExitName("StopProfitTarget",1) == true Then { if MarketPosition(1) == 1 Then Buy("b",AtMarket); if MarketPosition(1) == -1 Then Sell("s",AtMarket); }
프로필 이미지
동백초보
2023-02-03
1093
글번호 165975
시스템
답변완료

함수요청

안녕하세요? 국내선물 분봉상 차트에 당일의 시가선을 가로선으로 그리고 싶습니다. 전일의 시가선은 전일에 표시되고 당일은 당일의 시가선이 표시되고 누적해서 연결되게 그리고 싶습니다.
프로필 이미지
흰둥이아빠
2023-02-03
810
글번호 165973
지표
답변완료

산식작성

아래조건의 추세선 산식을 부탁드립니다 <추세선청산 조건> 1)고점과 저점의 밴드지정 LH=ma(H,3)+3; LL=ma(L,3)-3; 2)스윙 input : left(3), right(3); sl = SwingLow(1, LL, left, right, Left+Right+1); sh = SwingHigh(1, LH, left, right,Left+Right+1); 3)sh[1]>sh[0] 일때 하락추세선 작성 sl[1]<sl[0] 일때 상승추세선 작성 4)C값>하락추세선일때 EShort C값<상승추세선일때 ELong
프로필 이미지
티끌
2023-02-02
869
글번호 165969
지표
답변완료

수식 문의드려요.

A=adx(20); if(A>30, A, 0) and if(crossdown(A,A(1)), A, 0) 키움에서 사용중인데 예스트레이더로 바꾸고 싶은데 잘 안되네요.
프로필 이미지
로서
2023-02-02
910
글번호 165968
지표