커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

문의 드립니다.

항상 감사드립니다~~ 아래 수식으로 데모해 보았는데요.. 종가에 매수 매도 진입하는 것인데, 종가 가격하고 다르게 들어가는 경우가 몇번 있습니다. 그리고 익절, 손절 가격에 청산되지 않고 약 손절 가격으로 청산되는 내용이 몇개 있습니다. bx, sx라고 표시되어 나옵니다. 이 부분은 어떤 문제인지 확인, 수정 부탁드립니다. 그 내역 부분 첨부해서 올립니다. 감사합니다~~^^ input : ntime1(6),ntime2(30),n(10); input : StartTime(222500),EndTime(010000); input : 익절틱수(50),손절틱수(50); var : S1(0),D1(0),TM(0),TF1(0),TF2(0),cnt(0); Array : H1[50](0),L1[50](0),H2[50](0),L2[50](0); var : Tcond(false); 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 Bdate != Bdate[1] Then { S1 = TimeToMinutes(stime); D1 = sdate; } if D1 > 0 then { if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; TF1 = TM%ntime1; TF2 = TM%ntime2; if Bdate != Bdate[1] or (Bdate == Bdate[1] and ntime1 > 1 and TF1 < TF1[1]) or (Bdate == Bdate[1] and ntime1 > 1 and TM >= TM[1]+ntime1) or (Bdate == Bdate[1] and ntime1 == 1 and TM > TM[1]) Then { H1[0] = H; L1[0] = L; For cnt = 1 to 49 { H1[cnt] = H1[cnt-1][1]; L1[cnt] = L1[cnt-1][1]; } } if H1[0] > 0 and H > H1[0] Then H1[0] = H; if L1[0] > 0 and L < L1[0] Then L1[0] = L; if Bdate != Bdate[1] or (Bdate == Bdate[1] and ntime2 > 1 and TF2 < TF2[1]) or (Bdate == Bdate[1] and ntime2 > 1 and TM >= TM[1]+ntime2) or (Bdate == Bdate[1] and ntime2 == 1 and TM > TM[1]) Then { H2[0] = H; L2[0] = L; For cnt = 1 to 49 { H2[cnt] = H2[cnt-1][1]; L2[cnt] = L2[cnt-1][1]; } } if H2[0] > 0 and H > H2[0] Then H2[0] = H; if L2[0] > 0 and L < L2[0] Then L2[0] = L; if Tcond == true Then { if MarketPosition <= 0 and H1[n] > 0 and H2[n] > 0 and H < min(H1[n],H2[n])+PriceScale*1 Then Buy("b",AtStop,max(H1[n],H2[n]+PriceScale*1)); if MarketPosition >= 0 and L1[n] > 0 and L2[n] > 0 and L > max(L1[n],L2[n])-PriceScale*1 Then Sell("s",AtStop,min(L1[n],L2[n])-PriceScale*1); if MarketPosition == 1 Then ExitLong("bx",AtStop,L-PriceScale*1); if MarketPosition == -1 Then ExitShort("sx",AtStop,H+PriceScale*1); } } SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopLoss(PriceScale*손절틱수,PointStop); IF Endtime > starttime Then SetStopEndofday(Endtime); Else { if sDate != sDate[1] Then SetStopEndofday(Endtime); } if (sdate != sdate[1] and stime >= StartTime) or (sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then { IF Endtime <= starttime Then { SetStopEndofday(0); } }
프로필 이미지
jesten77
2021-10-25
873
글번호 153129
시스템
답변완료

함수요청

안녕하세요? 아래 글번호 74340번 재질문입니다. 첨부 확인 부탁드립니다. 감사합니다. ----------------------------------------------------------------------------- 아래의 요건으로 지표작성을 요청드립니다. 국내선물 1분봉으로 거래합니다. 이에 매일매일 데일리로 의미있는 고점과 저점을 잡고자 하는데 - MACD오실레이터가 9시 1분 완성봉의 첫 히스토그램이 양의 값이면 그 값 포함부터 MACD오실레이터 값이 음으로 반전하고 다시 양의 값으로 재전환할 때까지를 포함하여 (MACD오실레이터 양의 값 포함->음->양으로 변환할 때포함) 주가의 고점(HH)과 저점(LL)을 잡습니다. - MACD오실레이터가 9시 1분 완성봉의 첫 히스토그램이 음의 값이면 그 값 포함부터 MACD오실레이터 값이 양으로 반전하고 다시 음으로 값으로 재전환할 때까지를 포함하여 (MACD오실레이터 음의 포함->양-> 음으로 변환할 때포함) 주가의 고점(HH)과 저점(LL)을 잡습니다.
프로필 이미지
흰둥이아빠
2021-10-25
1044
글번호 153128
지표
답변완료

지표 부탁 드립니다.

var : st1(0), st2(0), st3(0), rmo(0); st1=100*(c-((ma(c,2)+ ma(ma(c,2),2)+ ma(ma(ma(c,2),2),2)+ ma(ma(ma(ma(c,2),2),2),2)+ ma(ma(ma(ma(ma(c,2),2),2),2),2)+ ma(ma(ma(ma(ma(ma(c,2),2),2),2),2),2)+ ma(ma(ma(ma(ma(ma(ma(c,2),2),2),2),2),2),2)+ ma(ma(ma(ma(ma(ma(ma(ma(c,2),2),2),2),2),2),2),2)+ ma(ma(ma(ma(ma(ma(ma(ma(ma(c,2),2),2),2),2),2),2),2),2)+ ma(ma(ma(ma(ma(ma(ma(ma(ma(ma(c,2),2),2),2),2),2),2),2),2),2))/10))/ (highest(c,10)-lowest(c,10)); st2=ema(st1,30); st3=ema(st2,30); rmo=ema(st1,81); plot1(iff(rmo>=0,rmo,0),"막대1"); plot2(iff(rmo<0,rmo,0),"막대2"); plot3(st2,"swing trd2"); plot4(st3,"swing trd3"); PlotBaseLine1(0,"기준선"); PlotBaseLine2(10); PlotBaseLine3(-10); PlotBaseLine4(5); PlotBaseLine5(-5); 직전봉 보다 작을때 파랑 컷을때 빨강으로 부탁 드립니다. 수고하세요.
프로필 이미지
와라바다
2021-10-25
1142
글번호 153121
지표
답변완료

변동성완화장치 수식

변동성완화장치 모니터에서 나오는 종목이 나올 수 있게 1. 상승, 하락 변동성완화장치 표시하는 선 수식 2. 상승, 하락 변동성완화장치가 나타나면 1 아니면 0 으로 표시하는 수식 3. 사이드카가 표시하는 선 수식 4. 지수에서 사이드카가 발생되면 1 아니면 0 으로 표시하는 수식 만약에 안돼는 수식이면 비슷한거래도 부탁드립니다
프로필 이미지
팔보채
2021-10-25
1045
글번호 153115
지표
답변완료

수정 부탁 드립니다.

수식 만들어 주셔서 감사 드립니다. 제가 설명을 잘 드리지 못한거 같네요. 아래 수식에 C값이 클때(if C > O*k Then)만 적용이 되어 있는데 C값이 작을때(if C < O*k Then)를 추가해서 구분을 해주셨으면 합니다. C값이 클때는 -1없이 상승 라인만 C값이 작을땐 하락만 라인이 그려지게요. 라인이 그려지다가 반대 신호가 나오면 정지 되고 반대 라인이 그려지면 되고요 신호가 바뀌는 구간에는 반대라인과 갭이 생기더라도 무관 합니다. input : k(1.000); input : 상승색(RED),하락색(BLUE); if C > O*k Then { var1 = (c-o)/4*3+o; Var2 = (c-o)/4*2+o; Var3 = (c-o)/4+o; } if var1 > var1[1] Then value1 = 1; if var1 < var1[1] Then value1 = -1; if var2 > var2[1] Then value2 = 1; if var2 < var2[1] Then value2 = -1; if var3 > var3[1] Then value3 = 1; if var3 < var3[1] Then value3 = -1; Plot1(var1,"상",iff(value1==1,상승색,하락색)); plot2(Var2,"중",iff(value1==1,상승색,하락색)); plot3(Var3,"하",iff(value1==1,상승색,하락색)); 감사합니다.^^
프로필 이미지
참아람
2021-10-25
791
글번호 153114
지표

신대륙발견 님에 의해서 삭제되었습니다.

프로필 이미지
신대륙발견
2021-10-25
10
글번호 153113
시스템
답변완료

문의드립니다.

안녕하세요! 지난번 알려준 종목검색식을 활용하여 응용해볼려고 했는데, 몇시간이나 했는데, 자꾸 에러나서 요청드립니다. 매번 너무나 감사드립니다. 답변을 통해 주신 도움으로, 어려운 주식시장 이겨내는데 커다란 힘이되고 있습니다. 1. 일목균형표 후행스팬이 기준선을 상향돌파하는 종목검색식 &#8203; 2. 일목균형표 후행스팬이 전환선을 상향돌파하는 종목검색식 3. 일목균형표 후행스팬이 20이평선을 상향돌파하는 종목검색식 4. 일목균형표 후행스팬이 선행스팬1을 상향돌파하는 종목검색식 5. 일목균형표 후행스팬이 볼린저밴드(기간값 20, 승수2)상단을 상향돌파하는 종목검색식 6. 일목균형표 기준선이 선행스팬1을 상향돌파할때 종목검색식 7. 일목균형표 전환선이 선행스팬1을 상향돌파할때 종목검색식 8. 일목균형표 기준선이 20이평선을 상향돌파하는 종목검색식
프로필 이미지
마법77
2021-10-25
843
글번호 153112
지표
답변완료

문의

현재의 분봉(보통1분봉)에서 5분봉의5이평,20이평,60이평,120이평,200이평을 부탁드립니다
프로필 이미지
레전드
2021-10-24
774
글번호 153111
지표
답변완료

수식문의

안녕하세요? 수식 수정 부탁드립니다. if MarketPosition == 1 Then { if CurrentContracts >= abs(VV)+유격 Then ExitLong("bx",OnClose,DEf,"",abs(CurrentContracts-abs(VV)),2); if CurrentContracts <= abs(VV)-유격 Then Buy("bb",OnClose,DEf,abs(CurrentContracts-abs(VV))); } 요렇게 했더니, 주문은 들어갔는데, 결국은 끝내 체결이 안되는 문제가 생기더라구요... 이렇게 된 이유, onclose 주문의 실매매에서의 작동 방식 등이 궁금하구요, 저는 if 조건을 만족시키면 무조건 체결 되기를 원합니다. 이를 위해서 가능하다면 1) 시장가 주문 버전과 2) 지정가 주문 버전으로 수정해 주시고, 그들의 (지금처럼 if CurrentContracts >= abs(VV)+유격 등의 if 문이 있는 상황에서의) 특징 및 장단점 간단 설명 해주시면 고맙겠습니다. 감사합니다.
프로필 이미지
에구머니
2021-10-24
671
글번호 153110
시스템