커뮤니티

예스랭귀지 Q&A

글쓰기

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

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

수식 수정 요청드립니다.

안녕하세요. 229850번 작성자입니다.만들어주신 수식에 '추가매수조건' '추가매도조건'을 적어주셨는데기존에 조건식 한개로 '모든 신호 진입 허용'에 체크하여 5계약까지 진입했기 때문에 추가매수조건이나 추가매도조건은 따로 없습니다. 조건식 한개로 229850번에 질문드렸던 조건을 만족할 수 있는 수식을 부탁드립니다.감사합니다.
프로필 이미지
트레이더365
2026-01-19
101
글번호 229908
시스템

ksks 님에 의해서 삭제되었습니다.

프로필 이미지
ksks
2026-01-19
37
글번호 229907
종목검색
답변완료

문의드립니다.

청산식만 부탁드립니다.진입량: 매수,매도 진입은 한번에 2계약씩 매수 또는 매도로 주문으로 진입됩니다. 매수 청산: 매수 손절 : 매수봉 직전봉 저가를 손절가로 잡고 종가가 아닌 현재가가 이탈하면실시간 손절합니다. 절반 1계약청산: 매수후에 종가가 매수봉 종가보다크면 절반 1계약을 청산합니다. 나머지 잔존 1계약 청산: 잔존 1계약만 남으면 차트에서 가장 최근의 2연속 양봉을 찾아 첫번째 양봉의 시가를 잔존청산가라고 하고 이 잔존청산가를 현재가가 하향 이탈시 실시간으로 잔존 1계약을 청산합니다. 잔존청산가는 2연속 양봉의 시가 변수로 정하고 잔존청산가= 2연속 양봉의 시가2연속 양봉이 생기면 갱신합니다.매도 청산도 같은 논리로 청산식 부탁 드립니다.
프로필 이미지
종호
2026-01-19
103
글번호 229906
시스템

요타 님에 의해서 삭제되었습니다.

프로필 이미지
요타
2026-01-19
16
글번호 229905
지표
답변완료

수식 문의

수식 문의를 아래와 같이 드립니다.1. 1차 매수, 유로 1계약 매수 진입 1) 매수 1.60100 2) 이익 : 1.60150 3) 손절 : 1.600502. 2차 매수, 유로 1계약 추가 매수 진입 1) 매수 : 1.60080 2) 이익 : 1.60090(2계약 청산) 3) 손절 : 1.60000(2계약 청산)조건 : 1) 1차 진입 후 현재가가 떨어져 2차 매수한 경우 2계약 모두 청산되고 1차 진입한 포지션은 자동해지 2) 1차 진입 후 이익이 발생하면 2차 매수하려는 포지션은 자동해지 3) 즉 1차 진입으로 바로 올라 이익이 생기면 2차 진입 포지션은 자동해지되고 2차까지 진입한 경우 계약이 모두 청산되면 1차 포지션은 자동해지되는 조건식을 알고 싶습니다** 유로를 할 경우와 마이크로 유로를 할 경우 수식 부탁합니다감사합니다.
프로필 이미지
장안
2026-01-19
137
글번호 229896
시스템
답변완료

data

수고하십니다.현재 '프로그램' 탭을 열면 '프로그램 매매종합'에서 차익, 비차익,전체가 표시되는데요질문1. 이들을 투자주체별(외인, 기관 개인 등)로 구분해서 보여주는 메뉴는 없는가요?질문2. 프로그램 매매로 매수한 물량은 투재주체별 매매동향에 포함되나요 아니면, 별도인가요? 예컨데 당일 외인이 현물매수 100억이고, 프로그램매수 중 차익매수한 금액이 20억, 비차익매수한 금액이 30억, 합계 50억인 경우 '투자주체매매종합'에는매수금액이 100억으로 표시되나요 150억으로 표시되나요, 아니면 다르게 표시되나요?
프로필 이미지
가람봉
2026-01-19
197
글번호 229885
지표
답변완료

추세선

아래 차트의 꺽은선을, 위 차트와 같이 직선으로 표시. plot을 체크 해제하면 전체가 안보입니다. 위 차트는 plot이 없는 수식입니다. 감사합니다.input : Period(30);Var:j(0),T(0),box(0),tx(0),TL(0),TL1(0),TL2(0);Var: date11(0),date12(0),time11(0),time12(0); Array: HiVal[20](0),LoVal[20](0),HiBar[20](0),LoBar[20](0);Plot1(value12,"value12",IFf(t==1,Red,Blue));{ HiBar[j] = HiBar[j] + 1; LoBar[j] = LoBar[j] + 1;}if crossup(c,highest(H,Period)[1]) Then T = 1;if CrossDown(c,Lowest(L,Period)[1]) Then T = -1;If T == -1 Then{ If T[1] != -1 Then { { LoVal[j+1] = LoVal[j]; LoBar[j+1] = LoBar[j]; } LoVal[0] = L; LoBar[0] = 0; date11 = date[HiBar[0]]; time11 = stime[HiBar[0]]; Value11 = HiVal[0]; date12 = date[LoBar[0]]; time12 = stime[LoBar[0]]; Value12 = LoVal[0]; TL_Delete(TL2); TL2 = TL_New_Self(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); TL1 = TL_New_Self(date11,time11,Value11,date12,time12,Value12); TL_SetColor(TL1,Blue); TL_SetSize(TL1,1); if abs(value12[1]-value11[1]) < 1.25 Then Text_Delete(tx); tx = Text_New_Self(sDate,stime,value12,NumToStr(value11-value12,2)); Text_SetColor(Tx,Blue); Text_SetStyle(tx,1,0); Text_SetSize(tx,20); Text_SetBold(tx,1); Condition1 = False; box = Box_New_Self(date11,time11,Value11,date12,time12,Value12); } If LoVal[0] >= L Then { LoVal[0] = L; LoBar[0] = 0; date12 = date[LoBar[0]]; time12 = stime[LoBar[0]]; Value12 = LoVal[0]; TL_SetEnd(TL1, date12,time12,Value12); Text_SetString(tx,NumToStr(value11-value12,2)); Text_SetLocation(tx,sDate,sTime,value12); Box_SetEnd(box,date12,time12,Value12); } if value12 > value11-0.5 Then { Box_SetColor(box,Lime); Box_SetFill(box,true,120); } else if value12 <= value11-0.5 and value12 > value11-1 Then { Box_SetColor(box,Cyan); Box_SetFill(box,true,100); } else if value12 <= value11-1 and value12 > value11-1.5 Then { Box_SetColor(box,Blue); Box_SetFill(box,true,60); } else if value12 <= value11-1.5 and value12 > value11-2 Then { Box_SetColor(box,Lime); Box_SetFill(box,true,90); } else if value12 <= value11-2 and value12 > value11-3 Then { Box_SetColor(box,Cyan); Box_SetFill(box,true,80); } else { Box_SetColor(box,Blue); Box_SetFill(box,true,30); } if Condition1 == False and hival[0] < hival[1] and Loval[0] < loval[1] Then { Condition1 = true; TL_Delete(TL); TL = TL_New(sdate,stime,0,sdate,stime,999); TL_SetColor(TL,Gold); TL_SetSize(TL,2); } }If T == 1 Then{ If T[1] != 1 Then { { HiVal[j+1] = HiVal[j]; HiBar[j+1] = HiBar[j]; } HiVal[0] = H; HiBar[0] = 0; date11 = date[LoBar[0]]; time11 = stime[LoBar[0]]; Value11 = LoVal[0]; date12 = date[HiBar[0]]; time12 = stime[HiBar[0]]; Value12 = HiVal[0]; TL_Delete(TL2); TL2 = TL_New_Self(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); TL1 = TL_New_Self(date11,time11,Value11,date12,time12,Value12); TL_SetColor(TL1,Red); TL_SetSize(TL1,1); if abs(value12[1]-value11[1]) < 1.25 Then Text_Delete(tx); tx = Text_New_Self(sDate,stime,value12,NumToStr(value12-value11,2)); Text_SetColor(Tx,Red); Text_SetStyle(tx,1,1); Text_SetSize(tx,20); Text_SetBold(tx,1); Condition2 = False; box = Box_New_Self(date11,time11,Value11,date12,time12,Value12); } If HiVal[0] <= H Then { HiVal[0] = H; HiBar[0] = 0; date12 = date[HiBar[0]]; time12 = stime[HiBar[0]]; Value12 = HiVal[0]; TL_SetEnd(TL1, date12,time12,Value12); Text_SetString(tx,NumToStr(value12-value11,2)); Text_SetLocation(tx,sDate,sTime,value12); Box_SetEnd(box,date12,time12,Value12); } if Value12 >= value11+3 Then { Box_SetColor(box,Orange); Box_SetFill(box,true,60); } else if value12 >= value11+2 and value12 < value11+3 Then { Box_SetColor(box,Gray); Box_SetFill(box,true,60); } else if value12 >= value11+1.5 and value12 < value11+2 Then { Box_SetColor(box,Magenta); Box_SetFill(box,true,50); } else if value12 >= value11+1 and value12 < value11+1.5 Then { Box_SetColor(box,Orange); Box_SetFill(box,true,70); } else if value12 >= value11+0.5 and value12 < value11+1 Then { Box_SetColor(box,Gray); Box_SetFill(box,true,70); } Else { Box_SetColor(box,Magenta); Box_SetFill(box,true,60); } if Condition2 == False and loval[0] > loval[1] and hival[0] > hival[1] Then { Condition2 = true; TL_Delete(TL); TL = TL_New(sdate,stime,0,sdate,stime,999); TL_SetColor(TL,Lime); TL_SetSize(TL,2); } }
프로필 이미지
고성
2026-01-19
350
글번호 229879
지표
답변완료

같은 신호를 정해진 캔들 범위안에서 진입 제한

안녕하세요.예전에 같은 질문을 드려서 답변을 주신대로 수식을 작성했는데, StopLoss가 발생한 직후에는 여전히 진입이 일어나는 문제가 있습니다.아래는 1. 예전 제 질문과 선생님이 주신 답변 내용과, 2.제가 적용해본 수식내용입니다.첨부한 이미지는 진입제한이 적용된 이전과 이후 모습입니다. 손절 직후에도 진입이 일어나지 않게 하는 방법을 알려주시면 감사하겠습니다.1.안녕하세요같은 진입신호를 특정 캔들 범위 안에서는 다시 발생하지 않게 하는 방법이 궁금합니다.예를 들어, "A"매수신호가 발생한 이후에 20개 캔들 이내에서는 다시 발생하지 않게 하는 것입니다.항상 감사합니다예스스탁 예스스탁 답변안녕하세요예스스탁입니다.var : Bidx(0),Sidx(0);if 매수조건 and (Bidx == 0 or (Bidx > 0 and index >= Bidx+20)) Then Buy("b");if 매도조건 and (Sidx == 0 or (Sidx > 0 and index >= Sidx+20)) Then Sell("s");if MarketPosition == 1 Then Bidx = Index[BarsSinceEntry];if MarketPosition == -1 Then Sidx = Index[BarsSinceEntry];2.var : Bidx(0),Sidx(0);if 매수조건 and (Bidx == 0 or (Bidx > 0 and index >= Bidx + 10)) Then { Buy("매수"); } if MarketPosition == 1 Then{ Bidx = Index[BarsSinceEntry]; } if MarketPosition == 1 Then { if IsEntryName("매수") == true Then { SetStopLoss(0.60,PointStop);}}
프로필 이미지
맘속의행복
2026-01-19
432
글번호 229875
시스템
답변완료

부탁드립니다

M240=MA(가격, 기간, 이평종류);A1=C>O&&V>V(1)*비율;A2=valuewhen(1,A1,V/2);A3=if(BarsSince(A1)<봉수,A2,0);A4=if(C<O && C<C(1),V,0);A5=sum(A4);A6=A5 - valuewhen(1,A1,A5(1));최종= if(BarsSince(A1)<봉수,A6,0);Crossup(최종,A3)지표조건비율 20봉수 102번 A=ATR(A_period);UPT=eavg(가격+A*ratio,기간);dnt=eavg(가격-A*ratio,기간);CC=CCi(period);turn=if(CC>=0&&dnt>dnt(1),1,if(CC<0&&upt<upt(1),-1,0));라인=if(turn==-1,upt,dnt);S=valuewhen(1,turn==1 OR turn==-1,라인);A1= LinearRegressionValue(C,기간1,0);A2= LinearRegressionValue(A1,기간1,0);eq=A1-A2;VL=A1+eq;신호 VL(1)<VL&&S>0&&S(1)*0.99>S&&Crossdown(S,VL)지표조건A_period 10period 20ratio 1가격 (H+L+O+C)/4기간 5기간1 24신호를 시가가 돌파 검색식 부탁드립니다3번M=(C+이전주종가(1)+이전주종가(2)+이전주종가(3)+이전주종가(4)+이전주종가(5)+이전주종가(6)+이전주종가(7)+이전주종가(8)+이전주종가(9))/10;A=M*1.01>=L&& C>O && C>=M &&M>M(1)
프로필 이미지
님이랑
2026-01-18
447
글번호 229874
종목검색