커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

다시 문의요

안녕하세요~~ 하루에 한번들어가는 식 문의했는데요 매수하는 방법이 35개정도 되는데요 이식 모두 하루에 한번 일어나게 해주세요 예를들어) a1식이 매수가들어가면 a2,a3,b1,b2.... 등등식은 오늘하루 진입안되게해주세요 그다음날은 다시 진입되게 해주세요 분봉으로 적용합니다 수고하십시오~~~ input : 투자금액(100000); Var : Body(0),HighBody(0),LowBody(0),Height(0),UpTail(0),DnTail(0),Long(False); var : Vol(0),cnt(0),count(0); count = 0; for cnt = 0 to 10{ if sdate == EntryDate(cnt) Then count = count+1; } if CodeCategoryEx == 11 and BasePrice < 50000 Then vol = int(int((투자금액)/C)/10)*10; Else vol = int((투자금액)/C); Body = Abs(C-O); HighBody = Max(C,O); LowBody = Min(C,O); Height = H-L; UpTail = H-Max(C,O); DnTail = Min(C,O)-L; if count < 1 Then{ If (C[3] > Ma(C,10)[3] and C[3] > O[3] and C[2] > O[2] and C[1] > O[1]) and (O[3] < O[2] and O[2] < O[1]) and (C[3] < C[2] and C[2] < C[1]) and (H[3] < H[2] and H[2] < H[1]) and (C[3] > O[2] and O[2] > O[3]) and (C[2] > O[1] and O[1] > O[2]) and (Body > ma(Body,10)*2 and C < O) and (O > H[1] and C < L[3]) Then buy("b1",OnClose,def,vol); If (C[4] >= Ma(C,10)[4] and C[4] > O[4] and Body[4] > Ma(Body,10)[4]*2) and (LowBody[3] > Highbody[4]) and (HighBody[3] >= HighBody[2] and HighBody[2] >= HighBody[1]) and (C > O and Body > Ma(Body,10)*2 and Close == Highest(C,5)) Then buy("b2",OnClose,def,vol); If (C[2] >= Ma(C,10)[2] and C[2] > O[2] and C[1] > O[1] and C > O) and (O[1] > LowBody[2] and Open[1]<=HighBody[2]) and (O > LowBody[1] and O <= HighBody[1]) and (C[2] < C[1] and C[1] < C[0]) and (Body[2]>Body[1] and Body[1]>Body[0]) Then buy("b3",OnClose,def,vol); If (C[1] >= Ma(C,10)[1] and C[1] < O[1] and Body[1] > Ma(Body,10)[1]*2 and C > O) and (Abs(Open-Open[1]) < Ma(Height,10)*0.1) Then buy("b4",OnClose,def,vol); If C[2] >= ma(C,10)[2] and C[2] > O[2] and Body[2] > Ma(Body,10)[2]*2 and C[1] > O[1] and Body[1] > Ma(Body,10)[1]*2 and Open[1] > Max(O,C)[2] and C < O and C < C[2] Then buy("b5",OnClose,def,vol); If C[2] >= Ma(C,10)[2] and C[2] > O[2] and Body[2] > Ma(Body,10)[2]*2 and C[1] > O[1] and C > O and O[1] > C[2] and Abs(Body-Body[1]) < Body*0.1 and Abs(O-O[1]) < Ma(Height,10)*0.1 Then buy("b6",OnClose,def,vol); If C[4] >= Ma(C,10)[4] and C[4] > O[4] and Body[4] > Ma(Body,10)[4]*2 and HighBody[3] < H[4] and LowBody[3] >= L[4] and HighBody[2] < H[4] and LowBody[2] >= L[4] and HighBody[1] < H[4] and LowBody[1] >= L[4] and HighBody[3] >= HighBody[2] and HighBody[2]>=HighBody[1] and C > O and Body > Ma(Body,10)*2 and Close == Highest(C,5) Then buy("b7",OnClose,def,vol); If C[2] > Ma(C,10)[2] and C[2] > O[2] and C[1] > O[1] and O[1] > Max(O,C)[2] and C < O and O >= LowBody[1] and O <= HighBody[1] and C > C[2] Then buy("b8",OnClose,def,vol); If C > Ma(C,10) and Body > Ma(Body,10)*2 and C > O and UpTail < Height*0.1 and DnTail < Height*0.1 Then buy("b9",OnClose,def,vol); If C[2] > Ma(C,10)[2] and C[2] > O[2] and C[1] > O[1] and C > O and O[1] >= LowBody[2] and O[1] <= HighBody[2] and O >= LowBody[1] and O <= HighBody[1] and C[2] < C[1] and C[1] < C and Body < Ma(Body,10)*0.5 and O > Max(C,O)[1] Then buy("b10",OnClose,def,vol); } DnTail = Min(O,C) - L; Uptail = H - Max(O,C); Height = H - L; body= Abs(O-C); highbody = Max(O,C); LowBody = Min(O,C); If Abs(Open-Close) > ma(Abs(Open-Close),10)*2 Then Long = True; Else Long = False; If UpTail == 0 and DnTail == 0 Then Condition1 = True; Else Condition1 = False; if count < 1 Then{ If C < Ma(C,10) and DnTail < Height*0.1 and C == O and Height > Ma(Height,10) Then buy("a1",OnClose,def,vol); Else If C < Ma(C,10) and (Uptail < Height * 0.1) and C == O and (Height > Ma(Height,10)) Then buy("a2",OnClose,def,vol); Else If C[1] < Ma(C,10)[1] and C[1] < O[1] and Long[1] == True and C > O and Long and O < L[1] and C >= (O[1]+C[1])/2 and C < O[1] Then buy("a3",OnClose,def,vol); Else If (C[2] >= Ma(C,10)[2] and C[2] < O[2] and C[1] < O[1] and C < O) and (O[1] > Min(O,C)[2] and O[1] < Max(O,C)[2]) and (O > Min(O,C)[1] and O < Max(O,C)[1]) and (C[2] > C[1] and C[1] > C[0]) and (L[2] < L[1] and L[1]< L[0]) Then buy("a4",OnClose,def,vol); Else If C[2] < Ma(C,10)[2] and C[2] < O[2] and C[1] > O[1] and C < O and O[1] > C[2] and O[1] == L[1] and O > Max(H[1],H[2]) and C[2] == C[0] Then buy("a6",OnClose,def,vol); Else If (C[4] < Ma(C,10)[4] and C[4] < O[4] and C[3] < O[3] and C[2] < O[2]) and (O[4] > O[3] and O[3] > O[2]) and (C[4] > C[3] and C[3] > C[2]) and (C[1] < O[1] and H[1] - MaxList(O,C)[1] > 0) and (H[1] < O[3] and C[2] > C[1]) and Close > Open and (O > O[1] and C > MaxList(H[1],H[2])) Then buy("a7",OnClose,def,vol); Else If (C[2] < Ma(C,10)[2] and Long[2] == True and C[2] < O[2]) and (C[1] == O[1] and Max(O,C)[1] < Min(O,C)[2])and (C > O and Min(O,C) > Max(O,C)[1])and (C > C[2]) Then buy("a8",OnClose,def,vol); Else If (C[1] < O[1] and Long[1] == True and Condition1[1] == True ) and (Long == True and C > O and Condition1 == True ) and (L > H[1]) Then buy("a9",OnClose,def,vol); Else If C[1] < Ma(C,10)[1] and C[1] < O[1] and body[1] > Ma(body[1],10)*2 and C > O and Abs(C-C[1]) < Ma(Height,10)*0.1 Then buy("a10",OnClose,def,vol); Else If C < Ma(C,10) and body > Ma(body,10)*2 and C > O and O == L and Uptail > 0 and Uptail < Height*0.1 Then buy("a11",OnClose,def,vol); Else If C[2] < Ma(C,10)[2] and C[2] == O[2] and C[1] == O[1] and C == O and HighBody[1]< LowBody[2] and HighBody[1] < LowBody[0] Then buy("a12",OnClose,def,vol); Else If C[1] < Ma(C,10)[1] and C[1] < O[1] and body[1] > Ma(body[1],10)*2 and C == O and Highbody < Highbody[1] and Lowbody > Lowbody[1] Then buy("a13",OnClose,def,vol); Else If C[1] < Ma(C,10)[1] and C[1] < O[1] and body[1] > Ma(body[1],10)*2 and C > O and Highbody < Highbody[1] and Lowbody > Lowbody[1] Then buy("a14",OnClose,def,vol); Else If C[2] < Ma(C,10)[2] and C[2] < O[2] and body[2] > Ma(body[2],10)*2 and C[1] > O[1] and Highbody[1] < Highbody[2] and Lowbody[1] > Lowbody[2] and C > O and C > C[1] Then buy("a15",OnClose,def,vol); Else If C[1] < Ma(c,10)[1] and C[1] < O[1] and C > O and Body > Ma(Body,10)*2 and Highbody > Highbody[1] and Lowbody < Lowbody[1] Then buy("a16",OnClose,def,vol); Else If C[2] < Ma(C,10)[2] and C[2] < O[2] and C[1] > O[1] and Body[1] > Ma(Body[1],10)*2 and Highbody[1] > Highbody[2] and Lowbody[1] < Lowbody[2] and C > O and C > C[1] Then buy("a17",OnClose,def,vol); Else If (C[4] < Ma(c,10)[4] and Body[4] > Ma(Body,10)[4]*2 and C[4] < O[4]) and (C[3] < O[3] and C[1] < O[1]) and (Body > Ma(Body,10)*2 and C > O) and (O[3] > HighBody[2] and HighBody[2] > O[1]) and (C[3] > LowBody[2] and LowBody[2] > C[1]) and (C >= O[1] and C > O[3] and C < C[4]) Then buy("a18",OnClose,def,vol); Else If C[2] < Ma(C,10)[2] and Body[2] > Ma(Body,10)[2]*2 and C[2] < O[2] and C[1] == O[1] and HighBody[1]<LowBody[2] and C > O and C > C[2] Then buy("a19",OnClose,def,vol); Else If C[2] < Ma(C,10)[2] and Body[2] > Ma(Body,10)[2]*2 and C[2] < O[2] and Body[1] < Ma(Body,10)[1]*0.5 and HighBody[1] < LowBody[2] and C > O and C > C[2] Then buy("a20",OnClose,def,vol); Else If C[3] < Ma(C,10)[3] and Body[3] > Ma(Body,10)[3]*2 and C[3] < O[3] and Body[2] > Ma(Body,10)[2]*2 and C[2] < O[2] and O[3] == H[3] and C[3] == L[3] and O[2] == H[2] and C[2] == L[2] and O[1] < Min(O,C)[2] and H[1] > C[2] and UpTail[1] > Height*0.5 and O > H[1] and C < L[1] Then buy("a21",OnClose,def,vol); Else If C < Ma(C,10) and DnTail < Height*0.1 and UpTail > Body*2 and Height > Ma(Height,10) and C != O Then buy("a22",OnClose,def,vol); Else If C[2] < Ma(C,10)[2] and C[2] > O[2] and C[1] > O[1] and C > O and O[1] >= LowBody[2] and O[1]<= HighBody[2] and O <= HighBody[1] and C[2] <= C[1] and C[1] <= C Then buy("a23",OnClose,def,vol); Else If C[1] < Ma(C,10)[1] and C[1] < O[1] and Body[1] > Ma(Body,10)[1]*2 and C < O and Highbody < Highbody[1] and Lowbody > Lowbody[1] Then buy("a24",OnClose,def,vol); Else If C < Ma(C,10) and UpTail < Height*0.1 and DnTail > Body*2 and Height > Ma(Height,10) and C != O Then buy("a26",OnClose,def,vol); Else If (C[2] < Ma(C,10)[2] and Body[2] > Ma(Body,10)[2]*2 and C[2] < O[2]) and (C[1] < O[1] and C > O and Highbody[1] < Highbody[2] and Lowbody[1] > Lowbody[2]) and (L[1] < L[2] or L[1] < Min(L[2],L[3],L[4])) and (L[1] < O and C[1] > C) Then buy("a27",OnClose,def,vol); } SetStopProfittarget(3,PercentStop); if CurrentEntries >= 2 Then exitlong("매도2",atlimit,AvgEntryPrice*1.02);
프로필 이미지
회원
2013-11-05
207
글번호 69246
시스템
답변완료

문의드립니다

수고많으세요 선형회귀선 LRL 의 기울기를 표현한것이 LRS 인데, 마찬가지로 문의내용 1.지수선, 2.다항선 각각에 대하여 기울기를 출력하는 식만 부탁드립니다.
프로필 이미지
뉴스타트
2013-11-06
209
글번호 69239
지표
답변완료

타주기 불러오기 수식 부탁드립니다

안녕하세요~ 타주기 불러오기 수식 부탁드립니다 var : V1(0,data1), V2(0,data1), V3(0,data1), V4(0,data1), V5(0,data1), V6(0,data1); V1 = Data1(Volume); V2 = Data2(Volume); V3 = Data3(Volume); V4 = Data4(Volume); V5 = Data5(Volume); V6 = Data6(Volume); 위에처럼 Data6 까지는 설정이 되는데 Data7 부터는 설정이 되지 않습니다 차트에는 더많은 데이타 추가가 되는데~ # Data7 보다 더많은 타주기 데이타를 사용할 수 있게 부탁드립니다 감사합니다~ 좋은하루 되세요~
프로필 이미지
감사1
2013-11-05
195
글번호 69229
시스템
답변완료

지표설정 부탁합니다

지표 설정 지표중 BinaryWave MACD가 있는데 다른거 다 사용 안하고 시그널만 사용 하고 싶은데요 기존은 기준선이 0으로 설정이 되있는데 그걸 그림처럼 1차(-1.5 ,1.5)2차 (-2.9,2.9)로 임의로 넣어 사용 하고 싶습니다.
프로필 이미지
회원
2013-11-20
198
글번호 69228
지표
답변완료

지표식 부탁드립니다.

안녕하세요? 지표식 하나 부탁드립니다. 내용은 볼린저밴드에서 중간값을 20일 지수이동평균으로 하여 만들어 주십시오 감사합니다.
프로필 이미지
장계선생
2013-11-05
166
글번호 69223
지표
답변완료

감사합니다.

항상 친절한 답변에 감사드립니다. 손절가를 일정 비율 상승후에는 진입가를 기준으로 하는 수식부탁드립니다. (예, 옵션 2.00 진입시 진입가 대비 5% 하락한 1.9를 손절가를 정하지만 진입이후 10% 상승후에는 2.00) 손절, 트레일링 스탑(시스템매매설정 창의 강제청산 이용 중)후 일정시간이 경과(40분)후에만 진입이 허용되는 수식 부탁드립니다. 감사합니다.
프로필 이미지
huhboo99
2013-11-05
165
글번호 69222
시스템
답변완료

시스템식 부탁드립니다.

일단 매수식만 작성 부탁드려요 1. 지난 7일 변동성이 가장 적은 날의 고점 돌파시 매수 2. 직전봉이 4일동안 변동성이 제일 적고 인사이드데이 형성(직직전봉보다 고가 저가 포함)되고 고점 돌파시 매수 변동성 : 고가 - 저가 의 크기
프로필 이미지
한글나라
2013-11-05
181
글번호 69221
시스템
답변완료

문의합니다

어제 답변 감사합니다 장시작후 첫봉부터 5번째봉까지 이평선의 cross없이 전일 마지막신호와 방향이 동일하면 같은 신호가 다시 나오게하는 방법을 원합니다 (오바없이 당일 청산합니다) 예를 들면 전일마지막 신호가 매도이고 20 이평선이 첫봉부터 계속 하락하면 다섯째봉에서 매도를 발생시키는 방법을 알고싶습니다 부탁드립니다 감사합니다
프로필 이미지
파티아
2013-11-05
184
글번호 69220
시스템
답변완료

수정 요청

안녕하세요 참조종목 일간 대만가권지수 data2 를 사용하여 청산 식을 만들었는데요 맞는지요 거래 불가라면 어떻게 수정해야 하는지봐주세요 5분차트 적용 if ( 조건 ) 매수 if sTime == 142500 && data2 (NextBaropen < c -0.09) Then ExitLong("el",AtMarket); if ( 조건 ) 매도 if sTime == 142500 && data2 (NextBaropen > c +0.09) Then ExitShort("es",AtMarket); SetStopProfittarget(7,PointStop); SetStopLoss(7,PointStop); 특히 대만가권지수 끝나는시간 14시 35분 이니까 14시 30분 에서 40분사이 청산되도록 하고싶거든요 도움주시면 감사 드립니다 강제청산식 하지말구요 위 수식을 고쳐주십시요
프로필 이미지
회원
2013-11-05
191
글번호 69219
시스템