커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

동일 봉 내에서 예비 매수신호 매도신호

안녕하세요? 시스템 식에서 동일 봉 내에서 예비 매도신호를 뜨게 설정할 수 있나요? 예스스팟을 통해서 종목검색 후 일봉차트로 생성하여 일봉차트에 자동으로 시스템 적용후 시스템에서 예비매수신호가 뜨면 매수까지는 작동하는데, 예비 매도신호 띄우는 법을 모르겠습니다. 기본 적용시 예비 매수 신호가 뜨고 매수 신호 미충족시 그냥 예비 매수 신호만 사라집니다. 기본적용이 매수신호가 확정나지 않으면 예비 매도도 안나오는건지... 궁금합니다. 기본 설정을 바꿔야 하는지 감이 안잡힙니다. 이게 동일 봉 내라서요. 봉이 마감되지 않으면 예비매수가 확정되는것 같지도 않고.. 감사합니다.
프로필 이미지
어느강아지의죽음
2020-05-27
2435
글번호 139254
시스템
답변완료

계좌잔액대비 매수수량 지정

안녕하세요! 현물 매수로직에서 계좌잔액대비 매수수량을 자동으로 설정하는 로직을 문의드립니다. 예를 들어, 계좌잔액이 1천만원이라고 할때, 이를 5등분하여 5개 종목에 분할 매수/매도하는 로직으로 구현하고 싶은데, 2백만원은 A라는 종목에 00주(2백만원 / A종목 가격 = 00주), 2백만원은 B라는 종목에 XX주(2백만원 / B종목 가격 = XX주) 이런식으로 구현하려면 어찌하면 되는지요? 감사합니다.
프로필 이미지
태산정복
2020-05-27
2311
글번호 139253
시스템
답변완료

지표추가

#)추가내용 ***************************************************** var3=20밴드의 (고가저가합)을고가에서더한라인 var4=20밴드의 (고가저가합)을저가에서&#48824;라인 var5=20밴드의 (고가저가합)/2의 라인 색상(모두블랙) ****************************************************** 1>원식 Input : Period1(5), Period2(20), 색상1(red), 색상2(BLUE); var1 = wma(High,Period1); var2 = wma(High,Period2); Var11 = wma(Low,Period1); var12 = wma(Low,Period2); (추가내용) ------------------------------------------------------ - var3=20밴드의 (고가저가합)을고가에서더한라인 - var4=20밴드의 (고가저가합)을저가에서&#48824;라인 - var5=20밴드의 (고가저가합)/2의 라인 - 색상(모두블랙) -------------------------------------------------------- Plot1(var1, "가중H5"); if c>var2 then Plot2(var2, "가중H20", 색상1); else Plot2(var2, "가중H20", 색상2); Plot11(var11, "가중L5"); if c<var12 then Plot12(var12, "가중L20", 색상2 ); else Plot12(var12, "가중L20", 색상1);
프로필 이미지
회원
2020-05-27
2416
글번호 139252
지표
답변완료

문의드립니다!

어제 질문에 상세한 설명과 함께 답변해주심에 정말 감사드립니다 ^^ 이 수식에 대해서 2가지만더 수정 부탁드립니다 1, 세로선도 상승색, 하락색으로 구분이될수있으면 더 좋겠습니다 2, 예비선이 안나오는데 이전처럼 이선도 그대로 나왔으면 합니다 감사합니다 !!! ------------------------------------------------------------------------------------ Var:Period(20),선두께(3),상승색(white), 하락색(white),예비선발생후봉수(5),세로선색상(red),세로선두께(3); Var:j(0),T(0); Var: date11(0),date12(0),time11(0),time12(0),TL1(0),TL(0), date21(0),date22(0),time21(0),time22(0), date31(0),date32(0),time31(0),time32(0),tx(0),tx1(0),tl4(0),idx(0); Array:HiVal[20](0),LoVal[20](0),HiBar[20](0),LoBar[20](0)/*,ZZ[20](0)*/; Array:r[7](0),fr[7](0),TL2[7](0),TL3[7](0),TX2[7](0),TX3[7](0); r[0] = 0; r[1] = 2; r[2] = 3.; r[3] = -1; r[4] = -2.; r[5] = 1; r[6] = 0.5; For j = 0 To 19 { 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 { For j = 18 DownTo 0 { LoVal[j+1] = LoVal[j]; LoBar[j+1] = LoBar[j]; //ZZ[j+1] = ZZ[j]; } LoVal[0] = L; LoBar[0] = 0; //ZZ[0] = L; date11 = date[HiBar[0]]; time11 = stime[HiBar[0]]; Value11 = HiVal[0]; date12 = date[LoBar[0]]; time12 = stime[LoBar[0]]; Value12 = LoVal[0]; TL_Delete(tl); TL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); TL1 = TL_New(date11,time11,Value11,date12,time12,Value12); TL_SetColor(TL1,상승색); Tx = Text_New(date11,time11,Value11,"●"); #동그라미 색상, 빨강 Text_SetColor(Tx,RED); Text_SetStyle(Tx,2,2); Text_SetSize(tx,12); //tx = Text_New(date11,time11,Value11,NumToStr(value11,2)+NewLine+NumToStr(value11,2)+NewLine); //Text_SetStyle(tx,2,1); date21 = date[HiBar[0]]; time21 = stime[HiBar[0]]; date22 = date[0]; time22 = stime[0]; for j = 0 to 6 { fr[j] = LoVal[1] + ((HiVal[0] - LoVal[1]) * r[j]); } //TL2[0] = TL_New(date21,time21,fr[0],date22,time22,fr[0]); //TL_SetColor(TL2[0],RED); #TL2[1] = TL_New(date21,time21,fr[1],date22,time22,fr[1]); #TL_SetColor(TL2[1],RED); #TL_SetStyle(TL2[1], 3); #TL2[2] = TL_New(date21,time21,fr[2],date22,time22,fr[2]); #TL_SetColor(TL2[2],RED); #TL_SetSize(TL2[2],1); #TX2[2] = Text_New(date22,time22,fr[2],NumToStr(fr[2],2)); #Text_SetColor(Tx2[2],BWHITE); #Text_SetStyle(TX2[2],1,1); #TL2[3] = TL_New(date21,time21,fr[3],date22,time22,fr[3]); #TL_SetColor(TL2[3],RED); #TL_SetStyle(TL2[3], 3); #TL2[4] = TL_New(date21,time21,fr[4],date22,time22,fr[4]); #TL_SetColor(TL2[4],RED); #TL_SetSize(TL2[4],1); #TX2[4] = Text_New(date22,time22,fr[4],NumToStr(fr[4],2)); #Text_SetColor(Tx2[4],BWHITE); #Text_SetStyle(TX2[4],1,0); //TL2[5] = TL_New(date21,time21,fr[5],date22,time22,fr[5]); //TL_SetColor(TL2[5],RED); //TL2[6] = TL_New(date21,time21,fr[6],date22,time22,fr[6]); //TL_SetColor(TL2[6],MAGENTA); idx = 0; } If LoVal[0] > L Then { LoVal[0] = L; LoBar[0] = 0; //ZZ[0] = L; date12 = date[LoBar[0]]; time12 = stime[LoBar[0]]; Value12 = LoVal[0]; TL_SetEnd(TL1, date12,time12,Value12); date22 = date[0]; time22 = stime[0]; //Tx = Text_New_Self(date12,time12,Value12,NumToStr(abs(value11-value12)/PriceScale,0)+" "); #동그라미 색상, 빨강 //Text_SetColor(Tx,BLUE); //Text_SetStyle(Tx,1,0); TL_SetEnd(TL2[0],date22,time22,fr[0]); TL_SetEnd(TL2[1],date22,time22,fr[1]); TL_SetEnd(TL2[2],date22,time22,fr[2]); Text_SetLocation(TX2[2],date22,time22,fr[2]); TL_SetEnd(TL2[3],date22,time22,fr[3]); TL_SetEnd(TL2[4],date22,time22,fr[4]); Text_SetLocation(TX2[4],date22,time22,fr[4]); TL_SetEnd(TL2[5],date22,time22,fr[5]); TL_SetEnd(TL2[6],date22,time22,fr[6]); TL_Delete(tl); TL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); idx = 0; } } If T == 1 Then { If T[1] != 1 Then { For j = 18 DownTo 0 { HiVal[j+1] = HiVal[j]; HiBar[j+1] = HiBar[j]; //ZZ[j+1] = ZZ[j]; } HiVal[0] = H; HiBar[0] = 0; //ZZ[0] = H; date11 = date[LoBar[0]]; time11 = stime[LoBar[0]]; Value11 = LoVal[0]; date12 = date[HiBar[0]]; time12 = stime[HiBar[0]]; Value12 = HiVal[0]; TL_Delete(tl); TL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); TL1 = TL_New(date11,time11,Value11,date12,time12,Value12); TL_SetColor(TL1,하락색); Tx1 = Text_New(date11,time11,Value11,"●"); #동그라미 색상, 파랑 Text_SetColor(Tx1,BLUE); Text_SetStyle(Tx1,2,2); Text_SetSize(tx1,12); //tx = Text_New(date11,time11,Value11,NewLine+NumToStr(value11,2)+NewLine+NumToStr(value11,2)); //Text_SetStyle(tx,2,0); date31 = date[LoBar[0]]; time31 = stime[LoBar[0]]; date32 = date[0]; time32 = stime[0]; for j = 0 to 5 { fr[j] = LoVal[0] + ((HiVal[1] - LoVal[0]) * r[j]); } //TL3[0] = TL_New(date31,time31,fr[0],date32,time32,fr[0]); //TL_SetColor(TL3[0],BLUE); #TL3[1] = TL_New(date31,time31,fr[1],date32,time32,fr[1]); #TL_SetColor(TL3[1],BLUE); #TL_SetStyle(TL3[1], 3); #TL3[2] = TL_New(date31,time31,fr[2],date32,time32,fr[2]); #TL_SetColor(TL3[2],BLUE); #TL_SetSize(TL3[2],1); #TX3[2] = Text_New(date32,time32,fr[2],NumToStr(fr[2],2)); #Text_SetColor(Tx3[2],BWHITE); #Text_SetStyle(TX3[2],1,1); #TL3[3] = TL_New(date31,time31,fr[3],date32,time32,fr[3]); #TL_SetColor(TL3[3],BLUE); #TL_SetStyle(TL3[3], 3); #TL3[4] = TL_New(date31,time31,fr[4],date32,time32,fr[4]); #TL_SetColor(TL3[4],BLUE); #TL_SetSize(TL3[4],1); #TX3[4] = Text_New(date32,time32,fr[4],NumToStr(fr[4],2)); #Text_SetColor(Tx3[4],BWHITE); #Text_SetStyle(TX3[4],1,0); //TL3[5] = TL_New(date31,time31,fr[5],date32,time32,fr[5]); //TL_SetColor(TL3[5],BLUE); //TL3[6] = TL_New(date31,time31,fr[6],date32,time32,fr[6]); //TL_SetColor(TL3[6],cyan); idx = 0; } If HiVal[0] < H Then { HiVal[0] = H; HiBar[0] = 0; //ZZ[0] = H; date12 = date[HiBar[0]]; time12 = stime[HiBar[0]]; Value12 = HiVal[0]; TL_SetEnd(TL1, date12,time12,Value12); date32 = date[0]; time32 = stime[0]; //Tx = Text_New_Self(date12,time12,Value12,NumToStr(abs(value11-value12)/PriceScale,0)+" "); #동그라미 색상, 빨강 //Text_SetColor(Tx,RED); //Text_SetStyle(Tx,1,1); TL_SetEnd(TL3[0],date32,time32,fr[0]); TL_SetEnd(TL3[1],date32,time32,fr[1]); TL_SetEnd(TL3[2],date32,time32,fr[2]); Text_SetLocation(TX3[2],date32,time32,fr[2]); TL_SetEnd(TL3[3],date32,time32,fr[3]); TL_SetEnd(TL3[4],date32,time32,fr[4]); Text_SetLocation(TX3[4],date32,time32,fr[4]); TL_SetEnd(TL3[5],date32,time32,fr[5]); TL_SetEnd(TL3[6],date32,time32,fr[6]); TL_Delete(tl); TL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); idx = 0; } } idx = idx+1; TL_SetSize(tL,선두께); TL_SetSize(tL1,선두께); var : VTL(0); if idx == 예비선발생후봉수 Then { TL_Delete(VTL);//최근것만 표시하고자 할경우 이 내용을 삭제하시면 됩니다. VTL = TL_New(sdate,stime,999999999,sDate,stime,0); TL_SetColor(VTL,세로선색상); TL_SetSize(VTL,세로선두께); }
프로필 이미지
유로파54
2020-05-27
2214
글번호 139251
지표
답변완료

수식 부탁 드립니다

매매시간 : 07시 00분 익일 06시 00분 주문 : 상,하 -120틱 매수 +120틱 청산 상,하 +120틱 매도 -120틱 청산
프로필 이미지
푸른
2020-05-27
2306
글번호 139250
시스템
답변완료

수식

안녕하세요. 하기 수식 도움 부탁드립니다. 20/60 MA이평선이 정배열.역배열 상대에서 20 MA이평선이 5캔들 앞으로 이동시킨 선이 돌파 시 매수 / 이탈 시 매도. 감사합니다.
프로필 이미지
한국사람73
2020-05-27
2423
글번호 139249
시스템
답변완료

전일이평선

수고 많으십니다. 전일 20일 이평선의 시가 고가 저가 종가를 표현하고 싶습니다. 감사합니다.
프로필 이미지
고저중
2020-05-27
2458
글번호 139248
지표
답변완료

예스트레이더에 강세 약세 색상표현하는 방법

예 봉이 60이평선이 위에 있으면 강세색상, 봉이 60이평 아래 있으면 약세색상. 부탁드립니다. 첨부파일참조.
프로필 이미지
신나는파파
2020-05-27
2750
글번호 139247
사용자 함수
답변완료

수식부탁드립니다.

안녕하세요 1. 20 이동평균선이 swinghigh 가 발생한 후 2. 20 이동평균선이 60 이동평균선 아래로 가지않고 3. 20이동평균선이 위 swinghigh 선을 돌파시 매수 부탁드립니다.
프로필 이미지
orfeu
2020-05-27
2168
글번호 139246
시스템