커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

부탁드립니다

#,아래식에서도움부탁드립니다, 1번식은 전일 저점대비 피봇등분선입니다, 이 식을 전일 종가대비로 수정하고 싶은데 자꾸 에라가 나네요 도움부탁드립니다. 2번식에서 Plot1값을 Text 출력하고 싶습니다. 1, var : 고점(0),저점(0),hh(0),ll(0),hh1(0),ll1(0),s1(0),s2(0),s3(0),s4(0),s5(0); Array : Tx[38](0); S1 = DayOpen(0); S2 = dayhigh(0); S3 = daylow(0); S4 = (dayhigh(0)+daylow(0))/2; S5 = (DayOpen(0)+dayhigh(0)+daylow(0))/3; if Bdate != Bdate[1] Then { hh = h; ll = l; hh1 = hh[1]; ll1 = ll[1]; } if h > hh Then hh = h; if l < ll Then ll = l; if hh1 > 0 and ll1 > 0 then { 고점 = hh1; 저점 = ll1; var1 = 고점-저점; plot1(저점+var1*3.000); plot2(저점+var1*2.764); plot3(저점+var1*2.618); plot4(저점+var1*2.500); plot5(저점+var1*2.382); plot6(저점+var1*2.236); plot7(저점+var1*2.000); plot8(저점+var1*1.764); plot9(저점+var1*1.618); plot10(저점+var1*1.500); plot11(저점+var1*1.382); plot12(저점+var1*1.236); plot13(저점+var1*1.000); plot14(저점+var1*0.764); plot15(저점+var1*0.618); plot16(저점+var1*0.500); plot17(저점+var1*0.382); plot18(저점+var1*0.236); plot19(저점+var1*0); plot20(저점-var1*0.236); plot21(저점-var1*0.382); plot22(저점-var1*0.500); plot23(저점-var1*0.618); plot24(저점-var1*0.764); plot25(저점-var1*1.000); plot26(저점-var1*1.236); plot27(저점-var1*1.382); plot28(저점-var1*1.500); plot29(저점-var1*1.618); plot30(저점-var1*1.764); plot31(저점-var1*2.000); plot32(저점-var1*2.236); plot33(저점-var1*2.382); plot34(저점-var1*2.500); plot35(저점-var1*2.618); plot36(저점-var1*2.764); plot37(저점-var1*3.000); plot38(s1); plot39(s2); plot40(s3); plot41(s4,"중심",iff(s4<s1[1],LGREEN,LGREEN)); plot42(s5); text_Delete(Tx[1]); tx[1] = Text_New(sdate,stime,저점+var1*3.000," 3.0%:"+NumToStr(저점+var1*3.000,0)); text_Delete(Tx[2]); tx[2] = Text_New(sdate,stime,저점+var1*2.764," 2,7%: "+NumToStr(저점+var1*2.764,0)); text_Delete(Tx[3]); tx[3] = Text_New(sdate,stime,저점+var1*2.618," 2,6%: "+NumToStr(저점+var1*2.618,0)); text_Delete(Tx[4]); tx[4] = Text_New(sdate,stime,저점+var1*2.500," 2,5%: "+NumToStr(저점+var1*2.500,0)); text_Delete(Tx[5]); tx[5] = Text_New(sdate,stime,저점+var1*2.382," 2,3%: "+NumToStr(저점+var1*2.382,0)); text_Delete(Tx[6]); tx[6] = Text_New(sdate,stime,저점+var1*2.236," 2,2%: "+NumToStr(저점+var1*2.236,0)); text_Delete(Tx[7]); tx[7] = Text_New(sdate,stime,저점+var1*2.000," 2,0%:"+NumToStr(저점+var1*2.000,0)); text_Delete(Tx[8]); tx[8] = Text_New(sdate,stime,저점+var1*1.764," 1,7%: "+NumToStr(저점+var1*1.764,0)); text_Delete(Tx[9]); tx[9] = Text_New(sdate,stime,저점+var1*1.618," 1,6%: "+NumToStr(저점+var1*1.618,0)); text_Delete(Tx[10]); tx[10] = Text_New(sdate,stime,저점+var1*1.500," 1,5%: "+NumToStr(저점+var1*1.500,0)); text_Delete(Tx[11]); tx[11] = Text_New(sdate,stime,저점+var1*1.382," 1,3%: "+NumToStr(저점+var1*1.382,0)); text_Delete(Tx[12]); tx[12] = Text_New(sdate,stime,저점+var1*1.236," 1,2%: "+NumToStr(저점+var1*1.236,0)); text_Delete(Tx[13]); tx[13] = Text_New(sdate,stime,저점+var1*1.00," 1,0%:"+NumToStr(저점+var1*1.000,0)); text_Delete(Tx[14]); tx[14] = Text_New(sdate,stime,저점+var1*0.764," 7%: "+NumToStr(저점+var1*0.764,0)); text_Delete(Tx[15]); tx[15] = Text_New(sdate,stime,저점+var1*0.618," 6%: "+NumToStr(저점+var1*0.618,0)); text_Delete(Tx[16]); tx[16] = Text_New(sdate,stime,저점+var1*0.500," 5%: "+NumToStr(저점+var1*0.500,0)); text_Delete(Tx[17]); tx[17] = Text_New(sdate,stime,저점+var1*0.382," 3%: "+NumToStr(저점+var1*0.382,0)); text_Delete(Tx[18]); tx[18] = Text_New(sdate,stime,저점+var1*0.236," 2%: "+NumToStr(저점+var1*0.236,0)); text_Delete(Tx[19]); tx[19] = Text_New(sdate,stime,저점+var1*0.000," 0%:"+NumToStr(저점+var1*0.000,0)); text_Delete(Tx[20]); tx[20] = Text_New(sdate,stime,저점-var1*0.236," -2%: "+NumToStr(저점-var1*0.236,0)); text_Delete(Tx[21]); tx[21] = Text_New(sdate,stime,저점-var1*0.382," -3%: "+NumToStr(저점-var1*0.382,0)); text_Delete(Tx[22]); tx[22] = Text_New(sdate,stime,저점-var1*0.500," -5%: "+NumToStr(저점-var1*0.500,0)); text_Delete(Tx[23]); tx[23] = Text_New(sdate,stime,저점-var1*0.618," -6%: "+NumToStr(저점-var1*0.618,0)); text_Delete(Tx[24]); tx[24] = Text_New(sdate,stime,저점-var1*0.764," -7%: "+NumToStr(저점-var1*0.764,0)); text_Delete(Tx[25]); tx[25] = Text_New(sdate,stime,저점-var1*1.000," -1,0%:"+NumToStr(저점-var1*1.000,0)); text_Delete(Tx[26]); tx[26] = Text_New(sdate,stime,저점-var1*1.236," -1,2%: "+NumToStr(저점-var1*1.236,0)); text_Delete(Tx[27]); tx[27] = Text_New(sdate,stime,저점-var1*1.382," -1,3%: "+NumToStr(저점-var1*1.382,0)); text_Delete(Tx[28]); tx[28] = Text_New(sdate,stime,저점-var1*1.500," -1,5%: "+NumToStr(저점-var1*1.500,0)); text_Delete(Tx[29]); tx[29] = Text_New(sdate,stime,저점-var1*1.618," -1,6%: "+NumToStr(저점-var1*1.618,0)); text_Delete(Tx[30]); tx[30] = Text_New(sdate,stime,저점-var1*1.764," -1,7%: "+NumToStr(저점-var1*1.764,0)); text_Delete(Tx[31]); tx[31] = Text_New(sdate,stime,저점-var1*2.000," -2,0%:"+NumToStr(저점-var1*2.000,0)); text_Delete(Tx[32]); tx[32] = Text_New(sdate,stime,저점-var1*2.236," -2,2%: "+NumToStr(저점-var1*2.236,0)); text_Delete(Tx[33]); tx[33] = Text_New(sdate,stime,저점-var1*2.382," -2,3%: "+NumToStr(저점-var1*2.382,0)); text_Delete(Tx[34]); tx[34] = Text_New(sdate,stime,저점-var1*2.500," -2,5%: "+NumToStr(저점-var1*2.500,0)); text_Delete(Tx[35]); tx[35] = Text_New(sdate,stime,저점-var1*2.618," -2,6%: "+NumToStr(저점-var1*2.618,0)); text_Delete(Tx[36]); tx[36] = Text_New(sdate,stime,저점-var1*2.764," -2,7%: "+NumToStr(저점-var1*2.764,0)); text_Delete(Tx[37]); tx[37] = Text_New(sdate,stime,저점-var1*3.000," -3,0%:"+NumToStr(저점-var1*3.000,0)); text_Delete(Tx[38]); tx[38] = Text_New(sdate,stime,dayopen," Open :"+NumToStr(dayopen,0)); } Text_SetStyle(tx[1],5,2); Text_SetStyle(tx[2],5,2); Text_SetStyle(tx[3],5,2); Text_SetStyle(tx[4],5,2); Text_SetStyle(tx[5],5,2); Text_SetStyle(tx[6],5,2); Text_SetStyle(tx[7],5,2); Text_SetStyle(tx[8],5,2); Text_SetStyle(tx[9],5,2); Text_SetStyle(tx[10],5,2); Text_SetStyle(tx[11],5,2); Text_SetStyle(tx[12],5,2); Text_SetStyle(tx[13],5,2); Text_SetStyle(tx[14],5,2); Text_SetStyle(tx[15],5,2); Text_SetStyle(tx[16],5,2); Text_SetStyle(tx[17],5,2); Text_SetStyle(tx[18],5,2); Text_SetStyle(tx[19],5,2); Text_SetStyle(tx[20],5,2); Text_SetStyle(tx[21],5,2); Text_SetStyle(tx[22],5,2); Text_SetStyle(tx[23],5,2); Text_SetStyle(tx[24],5,2); Text_SetStyle(tx[25],5,2); Text_SetStyle(tx[26],5,2); Text_SetStyle(tx[27],5,2); Text_SetStyle(tx[28],5,2); Text_SetStyle(tx[29],5,2); Text_SetStyle(tx[30],5,2); Text_SetStyle(tx[31],5,2); Text_SetStyle(tx[32],5,2); Text_SetStyle(tx[33],5,2); Text_SetStyle(tx[34],5,2); Text_SetStyle(tx[35],5,2); Text_SetStyle(tx[36],5,2); Text_SetStyle(tx[37],5,2); Text_SetStyle(tx[38],5,2); Text_SetStyle(tx[39],5,2); Text_SetStyle(tx[40],5,2); Text_SetStyle(tx[41],5,2); Text_SetStyle(tx[42],5,2); Text_SetColor(tx[1],LGREEN); Text_SetColor(tx[7],LGREEN); Text_SetColor(tx[13],LGREEN); Text_SetColor(tx[19],LGREEN); Text_SetColor(tx[25],LGREEN); Text_SetColor(tx[31],LGREEN); Text_SetColor(tx[37],LGREEN); Text_SetColor(tx[38],LMAGENTA); Text_SetColor(tx[39],RED); Text_SetColor(tx[40],BLUE); Text_SetColor(tx[41],LGREEN); Text_SetColor(tx[42],LGREEN); Text_SetColor(tx[2],RED); Text_SetColor(tx[3],MAGENTA); Text_SetColor(tx[4],MAGENTA); Text_SetColor(tx[5],RED); Text_SetColor(tx[6],RED); Text_SetColor(tx[8],RED); Text_SetColor(tx[9],MAGENTA); Text_SetColor(tx[10],MAGENTA); Text_SetColor(tx[11],RED); Text_SetColor(tx[12],RED); Text_SetColor(tx[14],RED); Text_SetColor(tx[15],MAGENTA); Text_SetColor(tx[16],MAGENTA); Text_SetColor(tx[17],RED); Text_SetColor(tx[18],RED); Text_SetSize(tx[19],0); Text_SetColor(tx[20],LBLUE); Text_SetColor(tx[21],LBLUE); Text_SetColor(tx[22],BLUE); Text_SetColor(tx[23],BLUE); Text_SetColor(tx[24],LBLUE); Text_SetColor(tx[26],LBLUE); Text_SetColor(tx[27],LBLUE); Text_SetColor(tx[28],BLUE); Text_SetColor(tx[29],BLUE); Text_SetColor(tx[30],LBLUE); Text_SetColor(tx[32],LBLUE); Text_SetColor(tx[33],LBLUE); Text_SetColor(tx[34],BLUE); Text_SetColor(tx[35],BLUE); Text_SetColor(tx[36],LBLUE); 2. if Bdate != Bdate[1] Then{ var1 = V; var2 = C; var11 = var1[1]; var22 = var2[1]; Condition1 = false; } if V > var1 Then{ var1 = V; var2 = C; } if Condition1 == false and V > var11 Then{ var3 = C; Condition1 = true; } plot1(var3); $,고맙습니다.
프로필 이미지
회원
2020-05-14
1401
글번호 138881
지표

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

프로필 이미지
새벽에
2020-05-14
2
글번호 138878
지표
답변완료

수식 의뢰 부탁드립니다.

개발자님의 노고에 항상 감사드립니다 진입조건은 최고점 돌파 시 최고점 매수, 최저점 돌파시 최저점 매도 입니다 반면에 청산은 최고점/최저점이 아닌 종가에 청사하려고 합니다 아래 수식을 사용하니 잘 안 되서 문의드립니다 Input: length(1),trailingstop(1); var1 = highest(H,trailingstop); var2 = Lowest(L,trailingstop); Buy("long",AtStop,Highest(High,length)); Sell("short",AtStop,Lowest(Low,length)); if CrossDown(c,var2) Then ExitLong("EL",AtStop,Close); if CrossUp(c,var1) Then ExitShort("ES",AtStop,Close); 감사합니다
프로필 이미지
산이보리
2020-05-14
1367
글번호 138876
시스템
답변완료

예스 스팟 종목 검색 문의2

안녕하세요. yestrader가 처음이라서 모르는게 많아서 기초 적인 수식 및 질문 드립니다. 제가 원하는것은 "틱단위로 종목 검색 후 자동 매매"를 하고 싶습니다. 매수 조건 (주식) 1. 30틱 기준, 거래량이 1봉전(30틱) 보다 현 30틱에서 거래량 300%이상 발생. 2. 30틱 기준, 주가등락률이 1봉전(30틱) 보다 현 30틱에서 주가가 1.5%이상 상승. 3. 30틱 기준 거래대금은 아래 조건 참조. 시가총액 800억 이하 종목은 30틱 거래대금 4억 이상 시가총액 801억~1500억 종목은 30틱 거래대금 5억 이상 시가총액 1501억 이상 종목은 30틱 거래대금 6억 이상
프로필 이미지
balkan21
2020-05-14
1385
글번호 138871
시스템
답변완료

예스스팟 종목 검색 문의

안녕하세요. yestrader가 처음이라서 모르는게 많아서 기초 적인 수식 및 질문 드립니다. 제가 원하는것은 종목 검색 후 자동 매매를 하고 싶습니다. 질문, 1. 주식 종목 검색 후 자동 매매가 가능한지요? 2. 종목 검색된 이후 자동 매매를 할 수 있게 설명서 또는 참조할 만한 가이드(문서)가 있는지요? 3. 종목 검색으로 찾은 종목이 시간이 지나서 조건식을 만족하면 재 검색이 되나요? 이때, 보유중인 종목 이라면 추가 매수 가능 한가요? 또는 보유중이여서 추가 매수 할지 아님 그냥 skip 할 지 선택이 가능한가요? 4. 매수된 종목이 특정 수익을 보고 있을 때, 분할 매도가 가능한지 ? 즉, 수익 2% 이상일 때, 보유주식 70% 매도 나머지 보유주식 30%는 수익이 4%이상부터 -2% 하락하면 전량 매도. 수식 문의. 조건1 CCI(9) 지표가 1분주기 1분전 대비 200이상 변화가 있을 때, 조건2 거래량이 1분주기 1분전 대비 300%이상 일 때, 조건3 주가변동폭이 1분주기 1분전 (시가+종가)/2 대비 0봉전 종가가 1.7% 이상 발생시. 조건4 주가변동폭이 1분주기 0봉전 시가 대비 0봉전 고가등락률이 4.5% 이상 발생시 종목 검색 제외. 조건5 체결강도 변동률이 1분주기 1분전 대비 +30%이상 발생시. 조건6 체결강도 값이 현재 110%이상 일 때, 조건7 1분전 체결강도 값이 140% 이상은 종목 검색 제외. 조건8 현재시간 기준으로 변동성완화장치 Vi 발생 종목은 검색 제외. 조건9 1분봉기준 bollinger band(30, 1.8) 상한선이 envelope(20, 2) 저항선(상한선) 의 99% 보다 클 때(돌파할 때) 예를들어, envelope 저항선(상한선) 값이 1100원이면, bollinger band 상한선값이 1,089(=1100*0.99) 보다 클 때, 조건10, 1분봉 거래 대금이 시가총액별로 아래 조건을 만족할 때, - 시가총액 800억 이하 종목은 1분 거래대금 6억 이상 - 시가총액 801억 ~1500억 종목은 1분 거래대금 7억 이상 - 시가총액 1501억 ~2500억 종목은 1분 거래대금 8억 이상 - 시가총액 2501억 이상 종목은 1분 거래대금 9억 이상 조건11 1분봉 거래량이 10만주 이상 일때, 즉, 위 조건10(거래대금)과 or 로 만족 할 때, *조건12* 위 조건10과 같이 시가총액별 1분봉 거래대금 구분이 불가하면, 1분봉 거래량 10만주 or 거래대금 7억 이상 일때, 제가 Yes trader를 처음 접해봐서 수식과 사용 방법을 메뉴얼을 따라하고 있는데 어렵네요. 위 질문및 수식 문의 / 그리고 종목검색 후 자동매매 사용 방법등에 대한 검토 요청 드립니다. 감사합니다.
프로필 이미지
balkan21
2020-05-14
1412
글번호 138870
시스템
답변완료

문의드립니다.

Length = input(15, minval=1) xChange = mom(close, 1) xPlusChange = iff(xChange > 0, xChange, 0) xMinusChange = iff(xChange < 0, (xChange * -1), 0) xPlusCF = iff(xPlusChange == 0, 0, xPlusChange + nz(xPlusCF[1], 1)) xMinusCF = iff(xMinusChange == 0, 0, xMinusChange + nz(xMinusCF[1], 1)) xPlus = xPlusChange - xMinusCF xMinus = xMinusChange - xPlusCF xPlusTCF = sum(xPlus, Length) nMinusTCF = sum(xMinus, Length) plot(xPlusTCF, color=blue, title="Plus TCF") plot(nMinusTCF, color=red, title="Minus TCF") close 버전과 ohlc4 버전으로 2가지 변환 문의드려도 될까요 항상 감사드립니다.
프로필 이미지
물고기
2020-05-14
1303
글번호 138863
지표

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

프로필 이미지
2wnwn
2020-05-14
222
글번호 138862
지표
답변완료

수식 요청

수고 하십니다, Input : maperiod(20), RocPeriod(12), stoPeriod1(5), stoPeriod2(3); var : BinaryWave(0); BinaryWave = BW(maperiod, RocPeriod, stoPeriod1, stoPeriod2); PlotBaseLine1(0, "기준선0"); if BinaryWave>=BinaryWave[1] Then Plot1(BinaryWave,"bw",red); if BinaryWave<=BinaryWave[1] Then Plot1(BinaryWave,"bw",blue); 위 BW식에서 올라가거나 평행일때 빨간색이고, 직전보다 하락하거나 평행면 파랑색으로 표현 하려고 합니다만, 상향이면서 평행일때 파랑색선으로 나오는데, BW선이 상승하면서 떨어지지 않으면 지속적으로 빨강색 선으로 나올수 있도록 지표식 부탁드립니다. -첨부 그림파일 항상 감사 드리오며...
프로필 이미지
khj012
2020-05-14
1200
글번호 138861
지표

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

프로필 이미지
산인
2020-05-14
0
글번호 138860
시스템