커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수식 관련 문의 드립니다

매번 무한 감사드립니다. 1분봉 차트에서 시스템을 돌리려고 하는데, 오늘을 포함하지 않은 어제부터 과거 20일간 종가의 이동평균을 수식에 사용해야 하는데, 어떻게 수식으로 표현해야하는지 해서요. 감사합니다!
프로필 이미지
mildred
2021-10-14
1508
글번호 152874
시스템
답변완료

문의

항상감사합니다 주신식에서 라인굵기,색도 알려주세요! 1]2]3] 4]는 라인이름 넣을수 있는 곳도 알려주세요 input : N(0); Plot1(dayOpen(N), "시가"); Plot2(dayHigh(N), "고가"); Plot3(dayLow(N), "저가"); var : tx1(0),tx2(0),tx3(0); Text_Delete(tx1); Text_Delete(tx2); Text_Delete(tx3); tx1 = Text_New_Self(sdate,sTime,DayOpen(N),"시가:"+NumToStr(DayOpen(N),2)); tx2 = Text_New_Self(sdate,sTime,DayHigh(N),"고가:"+NumToStr(DayHigh(N),2)); tx3 = Text_New_Self(sdate,sTime,DayLow(N),"저가:"+NumToStr(DayLow(N),2)); Text_SetStyle(tx1,0,1); Text_SetStyle(tx2,0,1); Text_SetStyle(tx3,0,1); #텍스트색 Text_SetColor(tx1,RED); Text_SetColor(tx2,RED); Text_SetColor(tx3,RED); #텍스트크기 Text_SetSize(tx1,10); Text_SetSize(tx2,10); Text_SetSize(tx3,10); 2 Inputs: Length1(5),Length2(20),Length3(60); Variables: TLen1(0),TLen2(0),TLen3(0),TRIma1(0),TRIma2(0),TRIma3(0); TLen1 = Ceiling((Length1 + 1) * .5); TLen2 = Ceiling((Length2 + 1) * .5); TLen3 = Ceiling((Length3 + 1) * .5); TRIma1 = ma(ma(C, TLen1), TLen1); TRIma2 = ma(ma(C, TLen2), TLen2); TRIma3 = ma(ma(C, TLen3), TLen3); Plot1(Trima1, "5일삼각가중"); Plot2(Trima2, "10일삼각가중"); Plot3(Trima3, "20일삼각가중"); var : tx1(0),tx2(0),tx3(0); Text_Delete(tx1); Text_Delete(tx2); Text_Delete(tx3); tx1 = Text_New_Self(sdate,sTime,Trima1,"삼각5:"+NumToStr(Trima1,2)); tx2 = Text_New_Self(sdate,sTime,Trima2,"삼각10:"+NumToStr(Trima2,2)); tx3 = Text_New_Self(sdate,sTime,Trima3,"삼각20:"+NumToStr(Trima3,2)); Text_SetStyle(tx1,0,1); Text_SetStyle(tx2,0,1); Text_SetStyle(tx3,0,1); #텍스트색 Text_SetColor(tx1,RED); Text_SetColor(tx2,RED); Text_SetColor(tx3,RED); #텍스트크기 Text_SetSize(tx1,10); Text_SetSize(tx2,10); Text_SetSize(tx3,10); 3 Input : Period1(5); var1 = wma(C,Period1); Plot1(var1, "가중이동평균1"); var : tx1(0); Text_Delete(tx1); tx1 = Text_New_Self(sdate,sTime,var1,"가중이평:"+NumToStr(var1,2)); Text_SetStyle(tx1,0,1); #텍스트색 Text_SetColor(tx1,RED); #텍스트크기 Text_SetSize(tx1,10); __________________________________________ 4] #Input : 기준1(*), 이격1(*), 이격2(*),이격3(*), AA1(*); Input : 기준1(0), 이격1(0), 이격2(0),이격3(0), AA1(0); var : tx1(0),tx2(0),tx3(0),tx4(0); var : tx5(0),tx6(0),tx7(0),tx8(0); var3 = 기준1; var1=0; if var1 <= AA1 Then { plotbaseline1(Var3+이격3,"1+0.6"); plotbaseline2(Var3,"기준1"); plotbaseline3(Var3-이격3,"1-0.6"); plotbaseline4(Var3-이격2,"1-1.25"); var1 = var1 +1 ; Text_Delete(tx1); Text_Delete(tx2); Text_Delete(tx3); Text_Delete(tx4); tx1 = Text_New_Self(sDate,sTime,Var3+이격3,"1+0.6"+NumToStr(Var3-(이격1*1)+이격3,2)); tx2 = Text_New_Self(sDate,sTime,Var3,"기준1"+NumToStr(Var3-(이격1*1),2)); tx3 = Text_New_Self(sDate,sTime,Var3-이격3,"1-0.6"+NumToStr(Var3-(이격1*1)-이격3,2)); tx4 = Text_New_Self(sDate,sTime,Var3-이격2,"1-1.25"+NumToStr(Var3-(이격1*1)-이격2,2)); Text_SetStyle(tx1,0,1); Text_SetStyle(tx2,0,1); Text_SetStyle(tx3,0,1); Text_SetStyle(tx4,0,1); #텍스트색 Text_SetColor(tx1,RED); Text_SetColor(tx2,RED); Text_SetColor(tx3,RED); Text_SetColor(tx4,RED); #텍스트크기 Text_SetSize(tx1,10); Text_SetSize(tx2,10); Text_SetSize(tx3,10); Text_SetSize(tx4,10); } if var1 <= AA1 Then { plotbaseline5(Var3-(이격1*1)+이격3,"2+0.6"); plotbaseline6(Var3-(이격1*1),"기준2"); plotbaseline7(Var3-(이격1*1)-이격3,"2-0.6"); plotbaseline8(Var3-(이격1*1)-이격2,"2-1.25"); var1 = var1 +1 ; Text_Delete(tx5); Text_Delete(tx6); Text_Delete(tx7); Text_Delete(tx8); tx5 = Text_New_Self(sDate,sTime,Var3-(이격1*1)+이격3,"2+0.6"+NumToStr(Var3-(이격1*1)+이격3,2)); tx6 = Text_New_Self(sDate,sTime,Var3-(이격1*1),"기준2"+NumToStr(Var3-(이격1*1),2)); tx7 = Text_New_Self(sDate,sTime,Var3-(이격1*1)-이격3,"2-0.6"+NumToStr(Var3-(이격1*1)-이격3,2)); tx8 = Text_New_Self(sDate,sTime,Var3-(이격1*1)-이격2,"2-1.25"+NumToStr(Var3-(이격1*1)-이격2,2)); Text_SetStyle(tx5,0,1); Text_SetStyle(tx6,0,1); Text_SetStyle(tx7,0,1); Text_SetStyle(tx8,0,1); #텍스트색 Text_SetColor(tx5,RED); Text_SetColor(tx6,RED); Text_SetColor(tx7,RED); Text_SetColor(tx8,RED); #텍스트크기 Text_SetSize(tx5,10); Text_SetSize(tx6,10); Text_SetSize(tx7,10); Text_SetSize(tx8,10); }
프로필 이미지
회원
2021-10-14
1074
글번호 152873
지표
답변완료

시스템식 문의 드립니다.

항상 도움 주셔서 감사합니다. 아래 청산조건에 관한 시스템식 부탁드립니다. 요청식1) 종목 : 해외선물 차트 : 틱 100차트 매수조건 : 20이평이 100이평 상향 돌파시 매수 매수청산 : 매수청산 요청식 1번: 매수진입후 캔들이 5개 이상 지나고(생성후) 진입효율이 30 이하면 매수청산 매수청산 요청식 2번: 매수진입후 캔들이 5개 이상 지나고(생성후) 진입효율이 70 이상면 매수청산 매수청산 요청식 3번: 매수진입후 캔들이 5개 이상 지나고(생성후) 진입효율이 30 이하인 적이 있었으면 진입효율이 70이상이 되면 매수청산 매수청산 요청식 4번: 매수진입후 캔들이 5개 이상 지나고(생성후) 진입효율이 70 이상인 적이 있었으면 진입효율이 30이하가 되면 매수청산 -------------------------------------------------------------------------------- 매도조건 : 20이평이 100이평 하향 돌파시 매도 매도청산 : 매도청산 요청식 1번: 매도진입후 미청산포지션 손실이 -30point 이상 이었던 적이 있었으면 수익이 10point 이상이 발생하면 매도청산 매도청산 요청식 2번: 매도진입후 미청산포지션 수익이 +30point 이상 이었던 적이 있었으면 손실이 -10point 이상이 발생하면 매도청산 매수 매도 각기 다른 청산조건 입니다. 트레일링 스탑이랑 비슷한데.. 시물레이션에서 트레일링 스탑이 잘 안되는 것 같아서요. 시스템식 부탁드립니다. 질문1) 시스템식을 만들어서 차트에 적용해서 실시간으로 운영한 시스템 성능과 시간이 지난 후 실시간 차트에 적용한 시스템 성능과 차이가 많이 발생하네요. 이거는 어쩔수 없는 거겠죠? 답변 부탁드립니다. 감사합니다.
프로필 이미지
양치기
2021-10-14
1098
글번호 152872
시스템
답변완료

지수갭1

data1 kospi200 선물 data2 kospi200 지수 kospi200갭 플러스(당일 kospi200 시가 - 월물옵션 첫날 kospi200지수 종가의 결과가 플러스) kospi200갭 마이너스(당일 kospi200 시가 - 월물옵션 첫날 kospi200지수 종가의 결과가 마이너스) 아래 수식을 완성해주십시요. ************************************************************************* if 5.50 > kospi200갭 플러스 > 2.50 and c > dayopen + 1.00 then buy(); if -2.50 > kospi200갭 마이너스 > -5.50 and c > dayopen + 1.00 then buy();
프로필 이미지
목마와숙녀
2021-12-16
1008
글번호 152871
시스템
답변완료

수식 추가 부탁드립니다.

안녕하세요. 아래 수식으로 포지션을 운용하면 장 마지막봉은 수동으로 진입해야하는데 거래시간을 9시00분 부터 15시35분 미만 까지로 해서 동시호가 전에 주문이 자동으로 이루어 질수 있도록 수식 부탁드립니다. 감사합니다. Var1=DayHigh-DayLow; Var2=abs(Dayopen-c); Var8=(4+1+3)/3; Value1=DayHigh(1)-DayLow(1); Var13=DayOpen-DayClose(1); Var14=DayHigh-c; Var15=c-DayLow; Condition1=Var1< Var8*Var2; Condition2=Var2*Var8<Var1&&Var2*4>Var1; if DayIndex==accumN(iff(dayindex==0,accumN(dayIndex,2),0),dayindex+1) Then { if iff(Value1<-Var13,0, iff(Value1<Var13,iff(Condition2,0,Var15/Var14<2/3), Condition2&&Var14/Var15>0)) then Sell(); } SetStopProfittarget(50.6,PointStop); SetStopLoss(10.6,PointStop);
프로필 이미지
바둑이
2021-10-14
910
글번호 152862
시스템
답변완료

식 변환 문의

수고하십니다. 아래 지표식을 data2에 적용하려면 어떻게 수정하여야 하는지요? 수고하세요. ###################################### Var : 전일중간값(0), TLp3st(0); var : tp3st(0); input : text두께1(15),text색상1(black) ; input :추세선두께1(1); 전일중간값 = (DayHigh(1)+DayLow(1))/2 ; ##숫자 표시 Text_Delete(tp3st); tp3st = Text_New(sdate,stime,전일중간값,NumToStr(전일중간값,2)); Text_SetSize(tp3st,text두께1); Text_SetColor(tp3st,text색상1); if bdate != bdate[1] then { ##라인 표시 TL_Delete(TLp3st); TLp3st = TL_new(sdate,stime,전일중간값, NextBarSdate,NextBarStime,전일중간값); TL_setExtRight(TLp3st,true); TL_setExtLeft(TLp3st,true); TL_SetSize(TLp3st,추세선두께1); TL_SetColor(TLp3st,BLACk);//추세선색상1); }
프로필 이미지
오이도인
2021-10-14
1084
글번호 152861
지표
답변완료

부탁 드립니다.

도움에 감사 드립니다. 타주기 (분봉용) 수식 부탁 드리고자 합니다. 미리 감사 드립니다. input : P(100); var : cnt(0),LL(0),HH(0),a(0),ai(0),b(0),bi(0); LL = Lowest(L,P); HH = highest(H,P); ai = 0; bi = 0; Condition1 = False; Condition2 = False; For cnt = 0 to P-1 { if Condition1 == False and L[cnt] == LL Then { Condition1 = true; ai = L-LL[cnt]; } if Condition2 == False and H[cnt] == HH Then { Condition2 = true; bi = H-HH[cnt]; } } a = 100*((P-1)-((ai)))/(P-1); b = 100*((P-1)-((bi)))/(P-1); 참고용 수식) input : Ntime1(60); var : cnt(0),a(0),ai(0),b(0),bi(0); var : H1(0),L1(0),sum(0),mav(0); var : TF(0),S1(0),D1(0),TM(0),idx(0); Array : HH[101](0),LL[101](0); 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; TF = TM%ntime1; if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then { HH[0] = H; LL[0] = L; for cnt = 1 to 100
프로필 이미지
yes
2021-10-13
1282
글번호 152860
지표
답변완료

문의

항상수고많으십니다 몇개만 보여주시면됩니다. 1.굵기/색/글씨or문자(글씨의 예:100선orㅁㅁ) 3가지 대입법 부탁드립니다. Input : 기준1(*), 이격1(*), 이격2(*),이격3(*), AA1(*); var3 = 기준1; var1=0; if var1 <= AA1 Then { plotbaseline1(Var3+이격3,"1+0.6"); plotbaseline2(Var3,"기준1"); plotbaseline3(Var3-이격3,"1-0.6"); plotbaseline4(Var3-이격2,"1-1.25"); var1 = var1 +1 ; } if var1 <= AA1 Then { plotbaseline5(Var3-(이격1*1)+이격3,"2+0.6"); plotbaseline6(Var3-(이격1*1),"기준2"); plotbaseline7(Var3-(이격1*1)-이격3,"2-0.6"); plotbaseline8(Var3-(이격1*1)-이격2,"2-1.25"); var1 = var1 +1 ; } if var1 <= AA1 Then { plotbaseline9(Var3-(이격1*2)+이격3,"3+0.6"); plotbaseline10(Var3-(이격1*2),"기준3"); plotbaseline11(Var3-(이격1*2)-이격3,"3-0.6"); plotbaseline12(Var3-(이격1*2)-이격2,"3-1.25"); var1 = var1 +1 ; } if var1 <= AA1 Then { plotbaseline13(Var3-(이격1*3)+이격3,"4+0.6"); plotbaseline14(Var3-(이격1*3),"기준4"); plotbaseline15(Var3-(이격1*3)-이격3,"4-0.6"); plotbaseline16(Var3-(이격1*3)-이격2,"4-1.25"); var1 = var1 +1 ; } if var1 <= AA1 Then { plotbaseline17(Var3-(이격1*4)+이격3,"5+0.6"); plotbaseline18(Var3-(이격1*4),"기준5"); plotbaseline19(Var3-(이격1*4)-이격3,"5-0.6"); plotbaseline20(Var3-(이격1*4)-이격2,"5-1.25"); var1 = var1 +1 ; } if var1 <= AA1 Then { plotbaseline21(Var3-(이격1*5)+이격3,"6+0.6"); plotbaseline22(Var3-(이격1*5),"기준6"); plotbaseline23(Var3-(이격1*5)-이격3,"6-0.6"); plotbaseline24(Var3-(이격1*5)-이격2,"6-1.25"); var1 = var1 +1 ; } if var1 <= AA1 Then { plotbaseline25(Var3-(이격1*6)+이격3,"6+0.6"); plotbaseline26(Var3-(이격1*6),"기준6"); plotbaseline27(Var3-(이격1*6)-이격3,"6-0.6"); plotbaseline28(Var3-(이격1*6)-이격2,"6-1.25"); var1 = var1 +1 ; } if var1 <= AA1 Then { plotbaseline29(Var3-(이격1*7)+이격3,"6+0.6"); plotbaseline30(Var3-(이격1*7),"기준6"); plotbaseline31(Var3-(이격1*7)-이격3,"6-0.6"); plotbaseline32(Var3-(이격1*7)-이격2,"6-1.25"); var1 = var1 +1 ; } if var1 <= AA1 Then { plotbaseline33(Var3-(이격1*8)+이격3,"7+0.6"); plotbaseline34(Var3-(이격1*8),"기준7"); plotbaseline35(Var3-(이격1*8)-이격3,"7-0.6"); plotbaseline36(Var3-(이격1*8)-이격2,"7-1.25"); var1 = var1 +1 ; } if var1 <= AA1 Then { plotbaseline37(Var3-(이격1*9)+이격3,"8+0.6"); plotbaseline38(Var3-(이격1*9),"기준8"); plotbaseline39(Var3-(이격1*9)-이격3,"8-0.6"); plotbaseline40(Var3-(이격1*9)-이격2,"8-1.25"); var1 = var1 +1 ; } if var1 <= AA1 Then { plotbaseline41(Var3-(이격1*10)+이격3,"9+0.6"); plotbaseline42(Var3-(이격1*10),"기준9"); plotbaseline43(Var3-(이격1*10)-이격3,"9-0.6"); plotbaseline44(Var3-(이격1*10)-이격2,"9-1.25"); var1 = var1 +1 ; } if var1 <= AA1 Then { plotbaseline45(Var3-(이격1*11)+이격3,"10+0.6"); plotbaseline46(Var3-(이격1*11),"기준10"); plotbaseline47(Var3-(이격1*11)-이격3,"10-0.6"); plotbaseline48(Var3-(이격1*11)-이격2,"10-1.25"); var1 = var1 +1 ; } if var1 <= AA1 Then { plotbaseline49(Var3-(이격1*12)+이격3,"11+0.6"); plotbaseline50(Var3-(이격1*12),"기준11"); plotbaseline51(Var3-(이격1*12)-이격3,"11-0.6"); plotbaseline52(Var3-(이격1*12)-이격2,"11-1.25"); var1 = var1 +1 ; var1 = var1 +1 ; } if var1 <= AA1 Then { plotbaseline53(Var3-(이격1*13)+이격3,"12+0.6"); plotbaseline54(Var3-(이격1*13),"기준12"); plotbaseline55(Var3-(이격1*13)-이격3,"12-0.6"); plotbaseline56(Var3-(이격1*13)-이격2,"12-1.25"); var1 = var1 +1 ; } if var1 <= AA1 Then { plotbaseline57(Var3-(이격1*14)+이격3,"13+0.6"); plotbaseline58(Var3-(이격1*14),"기준13"); plotbaseline59(Var3-(이격1*14)-이격3,"13-0.6"); plotbaseline60(Var3-(이격1*14)-이격2,"13-1.25"); var1 = var1 +1 ; } if var1 <= AA1 Then { plotbaseline61(Var3-(이격1*15)+이격3,"14+0.6"); plotbaseline62(Var3-(이격1*15),"기준14"); plotbaseline63(Var3-(이격1*15)-이격3,"14-0.6"); plotbaseline64(Var3-(이격1*15)-이격2,"14-1.25"); var1 = var1 +1 ; }
프로필 이미지
회원
2021-10-13
1112
글번호 152859
지표
답변완료

문의

항상감사합니다. 1.글씨-색//굵 기는 어디에 넣나요? 넣어보니! 변수가 2~4개 필요하다고 해서요 1]식은 저가글씨만 나와요? 2]식은 1/2/3으로 바꾸었더니 나왔어요! 1 input : N(0); Plot1(dayOpen(N), "시가"); Plot2(dayHigh(N), "고가"); Plot3(dayLow(N), "저가"); var : tx1(0),tx2(0),tx3(0); Text_Delete(tx1); Text_Delete(tx2); Text_Delete(tx3); tx1 = Text_New_Self(sdate,sTime,DayOpen(N),"시가:"+NumToStr(DayOpen(N),2)); tx2 = Text_New_Self(sdate,sTime,DayOpen(N),"고가:"+NumToStr(DayHigh(N),2)); tx3 = Text_New_Self(sdate,sTime,DayOpen(N),"저가:"+NumToStr(DayLow(N),2)); Text_SetStyle(tx1,0,1); Text_SetStyle(tx2,0,1); Text_SetStyle(tx3,0,1); 2 Inputs: Length1(5),Length2(20),Length3(60); Variables: TLen1(0),TLen2(0),TLen3(0),TRIma1(0),TRIma2(0),TRIma3(0); TLen1 = Ceiling((Length1 + 1) * .5); TLen2 = Ceiling((Length2 + 1) * .5); TLen3 = Ceiling((Length3 + 1) * .5); TRIma1 = ma(ma(C, TLen1), TLen1); TRIma2 = ma(ma(C, TLen2), TLen2); TRIma3 = ma(ma(C, TLen3), TLen3); Plot1(Trima1, "5일삼각가중"); Plot2(Trima2, "10일삼각가중"); Plot3(Trima3, "20일삼각가중"); var : tx1(0),tx2(0),tx3(0); Text_Delete(tx1); Text_Delete(tx2); Text_Delete(tx3); tx1 = Text_New_Self(sdate,sTime,Trima1,"삼각5:"+NumToStr(Trima1,2)); tx2 = Text_New_Self(sdate,sTime,Trima2,"삼각10:"+NumToStr(Trima2,2)); tx3 = Text_New_Self(sdate,sTime,Trima3,"삼각20:"+NumToStr(Trima3,2)); Text_SetStyle(tx1,0,1); Text_SetStyle(tx2,0,1); Text_SetStyle(tx3,0,1); 4 Input : Period1(5); var1 = wma(C,Period1); Plot1(var1, "가중이동평균1"); var : tx1(0); Text_Delete(tx1); tx1 = Text_New_Self(sdate,sTime,var1,"가중이평:"+NumToStr(var1,2)); Text_SetStyle(tx1,0,1);
프로필 이미지
회원
2021-10-13
1304
글번호 152858
지표