커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

지표식 문의드립니다.

매번 성실한 답변 감사드립니다. 피보나치팬을 이용하여 분봉에서 당일기준가(전일종가)기준으로 이후 캔들의 고저와 관계없이 기본적인 피보나치팬을 긋고싶습니다. 감사합니다.
프로필 이미지
부양가족
2017-03-13
144
글번호 107749
지표
답변완료

검색식 부탁드립니다.

ma(60,c) 60 이동평균선 상하 10%이내 있는 종목을 검색하는 식을 부탁드립니다. 감사드립니다.
프로필 이미지
봉다리
2017-03-13
140
글번호 107748
검색
답변완료

볼린저밴드상하단

현재가격이 볼린저밴드상단 보다 클경우 적색의 막대그래프 반대로 현재 가격이 볼린저밴드하단 보다 작을경우 청색의 막대그래프로 표시되는 식을 구합니다 감사합니다
프로필 이미지
느림보
2017-03-13
222
글번호 107747
지표
답변완료

시스템 문의

안녕하세요 시스템 적용시 나오는 수익차트의 값을 yeslang에서 불러오려면 어떻게 해야될까요... 예를들어서 2016.10.17부터 2016.12.07 까지 수익차트의 이동평균선을 구하려면 어떡해야할지 부탁드립니다.
프로필 이미지
wnlnp
2017-03-13
128
글번호 107746
시스템
답변완료

거래시간

복합 일봉차트에서 1. 주간시장(090000 부터 170000 까지) 에서는 A 조건식을 그외 야간시장(180000 에서 050000 까지) 에서는 B 조건식을 적용 하고자 합니다. 관련 수식을 작성해 주시면 감사 하겠습니다. 2. 위 경우에 시간 경과에 따라 일봉복합차트에도 조건식 대로 작동이 되는지요?
프로필 이미지
너무조아
2017-03-13
134
글번호 107745
시스템

제시리버뭐 님에 의해서 삭제되었습니다.

프로필 이미지
제시리버뭐
2017-03-13
0
글번호 107744
사용자 함수
답변완료

문의드립니다.

안녕하세요 다계약 진입과 분할 청산에 대한 질문을 드리고 싶습니다. 아래 수식은 3계약 매수진입하여 2, 1계약씩 분할 청산하는 식입니다. 1) 수량 함수인 "def"을 입력하면 '시스템매매설정'창에서 거래수량을 따로 설정안해도 되나요? 2) "수량옵션"의 0과 1과 2의 차이점이 명확하게 이해가 안됩니다;; 각각의 옵션에 따라 어떻게 결과가 달라지는지 예시해주셨으면 합니다. 감사합니다. --------------------------------------------------------------------- var1 = ma(c,5); var2 = ma(c,20); if CrossUp(var1,var2) then{ Buy("진입명",Onclose,def,3); SetStopLoss(0.30,PointStop); } if MarketPosition == 1 Then{ if IsEntryName("진입명") == true Then ExitLong("bx1",atlimit,EntryPrice+PriceScale*10,"진입명",2,1); ExitLong("bx2",atlimit,EntryPrice+PriceScale*20,"진입명",1,1); }
프로필 이미지
맘속의행복
2017-03-13
165
글번호 107743
시스템
답변완료

수식부탁드림니다=================

외부변수의 시간보정에 1400,1253 이런식으로 입력을하는데요 이걸고정시켜서 내부변수로바꿔서 시간보정값이 항상 현재시간의 10분전이되게 고정시킬순없나요? -------------------------------------------------------------------------------------- Input: 시간보정(0),보정후변화(0),호가더하기(0),지수더하기(0),보정치(0),폭보정(1.5),지수호가테마LENGTH1(10),순매수LENGTH2(10),급변(0.05) ,순매수테마보정한계(0.3),순매수테마급증보정(0.5),순매수테마급감보정(0.5) ,지수테마보정한계(0.3),지수테마급증보정(0.5),지수테마급감보정(0.5) ; var : AsksMA(0),BidsMA(0), Period(1),idx(0),EP(0),E11(0),E12(0),E13(0),E21(0),E22(0),E23(0); Var : value(0); Var : valuec(0); var : va61(0); var : va71(0); var : va80(0); var : va81(0); var : va90(0); var : va91(0); var : va92(0); var : va93(0); var : va94(0); var : va95(0); var : va96(0); VAR : TEMA1(0); VAR : TEMA2(0); VAR : TEMA3(0); VAR : vmin(0); VAR : vmax(0); BidsMa = ma(bids,Period); AsksMA = ma(asks,Period); value = ma(bids,period)-ma(asks,period)+29000; Plot2(BidsMA, "매수잔량이평"); Plot3(AsksMA, "매도잔량이평"); Plot4(value, "차"); //************************************************************** //************************************************************* va91=((c-c[1])/c[1]*100)*20000/20000; va93=((value-value[1])/value[1]*70)*125/2900; if stime == 시간보정*100 or (stime > 시간보정*100 and stime[1] < 시간보정*100) or Bdate != Bdate[1] Then{ PLOT62(100,"시간보정"); idx = 0; var1 = 100; var2 = 100; plot10(var1); plot11(var2); plot51(var2 +호가더하기/1000 ); } Else{ idx = idx+1; var1 = var1+(var1*(va91/100)); if abs(va96[10]-va96) <= 보정치 Then var2 = var1; // if var2[5] > var1[5] then var2 = var2 - ( var2[5] - var1[5] ); // if var2[5] < var1[5] then var2 = var2 + ( var1[5] - var2[5] ); else var2 = var2+(var2*(va93/95)); plot10(var1+지수더하기/1000 ); plot11(var2+호가더하기/1000 ); plot51(var2+호가더하기/1000 ); TEMA3 = (3 * Ema(var2+호가더하기/1000 ,순매수LENGTH2)) - (3 * Ema(Ema(var2+호가더하기/1000 ,순매수LENGTH2),순매수LENGTH2)) + (Ema(Ema(Ema(var2+호가더하기/1000 ,순매수LENGTH2),순매수LENGTH2),순매수LENGTH2)); if TEMA3 >TEMA3[1]+순매수테마보정한계 then TEMA3 = ((TEMA3 -TEMA3[1])*순매수테마급증보정)+TEMA3[1]; if TEMA3 <TEMA3[1]-순매수테마보정한계 then TEMA3 = TEMA3[1]-((TEMA3[1] -TEMA3)*순매수테마급감보정); if TEMA3 >TEMA3[1]+50 then TEMA3 = ((TEMA3 -TEMA3[1])*0.9)+TEMA3[1]; if TEMA3 <TEMA3[1]-50 then TEMA3 = TEMA3[1]-((TEMA3[1] -TEMA3)*0.9); plot52(TEMA3,"순매수테마"); } if var2-var1 > 폭보정 Then var2=var1; if var1-var2 > 폭보정 Then var2=var1; //if va71[1] < va71 and va71[1] + 0.05 > va71 then var2=var1; //if va71[1] > va71 and va71[1] - 0.05 > va71 then var2=var1; EP = 2/(지수호가테마LENGTH1+1); if idx == 0 Then{ E11 = var1; E21 = var2; } Else{ E11 = var1 * EP + E11 * (1-EP); E21 = var2 * EP + E21 * (1-EP); } if idx <= 1 Then{ E12 = E11; E22 = E21; } Else{ E12 = E11 * EP + E12 * (1-EP); E22 = E21 * EP + E22 * (1-EP); } if idx <= 2 Then{ E13 = E12; E23 = E22; } Else{ E13 = E12 * EP + E13 * (1-EP); E23 = E22 * EP + E23 * (1-EP); } TEMA1 = (3 * E11) - (3 * E12) + (E13); if TEMA1 >TEMA1[1]+지수테마보정한계 then TEMA1 = ((TEMA1 -TEMA1[1])*지수테마급증보정)+TEMA1[1]; if TEMA1 <TEMA1[1]-지수테마보정한계 then TEMA1 = TEMA1[1]-((TEMA1[1] -TEMA1)*지수테마급감보정); if TEMA2 >TEMA2[1]+지수테마보정한계 then TEMA2 = ((TEMA2 -TEMA2[1])*지수테마급증보정)+TEMA2[1]; if TEMA2 <TEMA2[1]-지수테마보정한계 then TEMA2 = TEMA2[1]-((TEMA2[1] -TEMA2)*지수테마급감보정); TEMA2 = (3 * E21) - (3 * E22) + (E23); PLOT30(TEMA1+지수더하기/1000 ,"지수테마",iff((TEMA1 +지수더하기/1000 )>(TEMA1 +지수더하기/1000)[1]+00,BLACK,iff((TEMA1 +지수더하기/1000 )<(TEMA1 +지수더하기/1000 )[1]-00,BLACK,BLACK))); PLOT31(TEMA2 +호가더하기/1000,"호가테마"); vmin = min(TEMA1+지수더하기/1000 ,TEMA2+호가더하기/1000 ); vmax = max(TEMA1+지수더하기/1000 ,TEMA2+호가더하기/1000 ); if TEMA1+지수더하기/1000> TEMA2+호가더하기/1000 Then{ var80 = (TEMA1+지수더하기/1000- TEMA2 +호가더하기/1000 )*0.5+TEMA2+호가더하기/1000 ; } if TEMA1 < TEMA2+호가더하기/1000 Then{ var80 = (TEMA2+호가더하기/1000 -TEMA1+지수더하기/1000)*0.5+TEMA1+지수더하기/1000 ; } PLOT17(var80,"지호평균"); //테마합 일정 수량차이상의 급등락 표시 if TEMA3 > TEMA3[1]+ 급변 Then{plot21(vmin-0.05,"급등");} if TEMA3 < TEMA3[1]- 급변 Then{plot22(vmin-0.05,"급락");} va71 =( TEMA2+호가더하기/1000 - TEMA1+지수더하기/1000 )+100; if ( TEMA2+호가더하기/1000 )[1] < ( TEMA2+호가더하기/1000 ) and (TEMA1+지수더하기/1000)[1] < (TEMA1+지수더하기/1000) Then{ PLOT25((vmin )-0.02,"매수예비"); //PlaySound("C:₩예스트레이더₩data₩Sound₩pp.wav"); } if ( TEMA2+호가더하기/1000 )[1] > ( TEMA2+호가더하기/1000 ) and (TEMA1+지수더하기/1000)[1] > (TEMA1+지수더하기/1000) Then{ PLOT26((vmin )-0.02,"매도예비"); // PlaySound("C:₩예스트레이더₩data₩Sound₩dingdong.wav"); } PLOT60(va71,"55"); //if CrossUp (( TEMA2+호가더하기/1000 ),(TEMA1+지수더하기/1000)) Then{ if sTime > (시간보정*100) and (TEMA1+지수더하기/1000)+보정후변화 < ( TEMA2+호가더하기/1000 ) and (TEMA1+지수더하기/1000)[1] > (TEMA1+지수더하기/1000) then { PLOT45((vmin )-0.0,"매수막대"); PlaySound("C:₩예스트레이더₩data₩Sound₩reject.wav"); } // CrossDown (( TEMA2+호가더하기/1000 ),(TEMA1+지수더하기/1000)) Then{ if sTime > (시간보정*100) and (TEMA1+지수더하기/1000)-보정후변화 > ( TEMA2+호가더하기/1000 ) and (TEMA1+지수더하기/1000)[1] < (TEMA1+지수더하기/1000) then { PLOT46((vmin )-0.0,"매도막대"); PlaySound("C:₩예스트레이더₩data₩Sound₩reject.wav"); } if va71[1]+급변 < va71 Then { PLOT18((va71 )+0.01,"매도"); } if va71[1]-급변 > va71 Then { PLOT19((va71 )+0.01,"매수"); } va96 = (tema1 - tema2)*1000; PLOT61(va96,"66",iff(va96 > 0,RED,iff(va96 < 0,BLACK,BLACK))); PlotBaseLine1(100,"기준선100"); if stime == 시간보정*100 then { PLOT62(100,"시간보정"); }
프로필 이미지
leekss1
2017-03-13
170
글번호 107731
지표
답변완료

수식요청

전월 월봉데이터를 현재 진행중인 당월 일봉에 표시하고 싶습니다. 당월 표시하고 싶은 월봉데이터는 시가 저가 고가 종가이고, 이 값은 해당월이 마감되고 새로운 달이 시작되면 전월이 변경되므로 자동으로 변경되어야하고, 챠트로 색깔별로 구분하여 표시하고 싶고, 그 가격이 Y축에 표시되도록 하는 수식부탁합니다.
프로필 이미지
왓썹
2017-03-13
137
글번호 107715
지표