커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

문의드립니다.

1.이격도 20선및60선이 100.25 또는 100.50 100.75 101.00 101.25 101.50 101.75 102.00 아무거나돌파 매도. 손절 15틱 익절 15틱 이격도 20선및60선이 99.75 99.50 99.25 99.00 98.75 98.50 98.25 98.00 아무거나돌파 매수 손절 15틱 익절 15틱 총수익 40 틱 이상이면 매매종료. 2. 1번 똑 같은건데요. 손절만 빼 주세요. 3. 이평 20 선이 60 선 위에 있고 양봉에 매도.. 익절 50틱.익절되면 매매종료. 4. 이평 20 선이 60 선 아래에 있고 음봉에 매수.. 익절 50 틱.익절되면 매매종료. 5.이평 20 선이 60 선 위에 있고 양봉에 매도. 20선이 60선 아래에 있고 음봉에 매수. 6. 이평 20 선이 60선 위에 있고 음봉에 매수. 익절 50 틱. 익절되면 매매종료. 7. 이평 20 선이 60선 아래에 있고 양봉에 매도. 익절 50 틱.익절되면 매매종료. 8. 이평 20선이 60선 위에 있고 음봉에 매수. 아래에 있으면 양봉에 매도. 익절 70틱 익절되면 매매종료.
프로필 이미지
아침한때비51
2014-10-10
174
글번호 79240
지표
답변완료

손절후 동일방향 재진입 제한 문의 드립니다.

정해진 손절폭 손절후 동일방향으로 재진입에 제한을 두고 싶습니다. 예를들면 다른조건과 더불어 5/20 이평 정배열 일때 매수 진입조건일 경우 진입후 반대로 진행하여 손절하였는데 여전히 이평이 5/20 정배열이라서 재진입 됩니다. 이럴경우 5/20 역배열로 한번 전환되었다가 재차 5/20 정배열 된후 매수 재진입 시키고자 합니다. 즉 5/20 이평이 반대로 역배열 한번 되었다가 다시 정배열 된 조건을 추가하고 싶습니다. 5/20 크로스 조건은 아니고 정배열 상태가 진입 조건 입니다. 부탁드립니다.
프로필 이미지
뽕빵이
2014-10-10
179
글번호 79238
시스템
답변완료

답신 감사합니다 ,한 가지 지표식 더 문의 드립니다

답신 감사합니다 ,한 가지 지표식 더 문의 드립니다 > 안녕하세요 예스스탁입니다. 해당식 for문의 첫값이 잘못되어 잇었습니다. 아래 수정한식입니다. 야간장의 시고저종가이므로 복합차트나 야간차트에 적용하셔야 합니다. 주간장만 있는 차트에는 값이 나오지 않습니다. var : cnt(0); Array : nopen[10](0),nhigh[10](0),nlow[10](0),nclose[10](0); if stime == 180000 or (stime > 180000 and stime[1] < 180000) Then{ nOpen[0] = O; nhigh[0] = O; nlow[0] = O; for cnt = 1 to 9{ NOpen[Cnt] = NOpen[cnt-1][1]; Nhigh[Cnt] = Nhigh[cnt-1][1]; NLow[Cnt] = NLow[cnt-1][1]; Nclose[Cnt] = Nclose[cnt-1][1]; } } if stime >= 180000 or stime < 090000 then{ if H > nhigh[0] Then nhigh[0] = H; if L < nlow[0] Then nlow[0] = L; nclose[0] = C; } plot1(nhigh[0],"야간고가"); plot2(nlow[0],"야간저가"); plot3(nOpen[0],"야간시가"); plot4(nclose[0],"야간종가"); plot5((nhigh[0]+nLow[0]+nopen[0]+nclose[0])/4,"야간중간"); ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 위의 지표식 중에서 아래의 3)의지표식을 이용하여 1). 3)의지표식 +100% 의 지표선 2). 3)의지표식 +50% 의 지표선 3). plot5((nhigh[0]+nLow[0]+nopen[0]+nclose[0])/4,"야간중간");기준선으로 하여 4).3)의지표식 -50% 의 지표선 5).3)의지표식 -100% 의 지표선 5개의 선이 표현 가능한 지표식을 부탁드립니다. 감사합니다. 수고하세요 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
프로필 이미지
금보
2014-10-10
147
글번호 79235
지표

회원 님에 의해서 삭제되었습니다.

프로필 이미지
회원
2014-10-10
0
글번호 79228
지표
답변완료

문의드립니다.

안녕하세요. 일봉볼리져를 분봉에 나타나게 아래와 같이 만들어 주셨는데요,,, 변수를 하나 더 넣고 싶은데요,,, 1일 볼린져, 2일 볼린져, 3일 볼린져식으로,,,, "일"을 변수로 넣어주실수 있나요? 그러니깐 변수가 (____일, 20,2) 이렇게 3가지로 부탁드립니다. ##################################################################### # 분봉에서 일봉 볼린져밴드 계산 시작 input : dayPeriod(2),dayDv(2),aa(0); var : daysum(0),daycnt(0),dayma(0),daySumSqrt(0),dayStdv(0); var : dayBBup(0),dayBBdn(0),dayCounter(0); #일봉 이동평균 계산 daysum = 0; for daycnt = 0 to dayPeriod-1{ daysum = daysum + DayClose(daycnt); } dayma = daysum/dayPeriod; #표준편차 계산 If DayClose(dayPeriod) != 0 Then { daySumSqrt = 0; For dayCounter = 0 To dayPeriod - 1 { daySumSqrt = daySumSqrt + (DayClose(dayCounter) - dayma)^2; } dayStdv = SquareRoot(daySumSqrt / dayPeriod); } Else dayStdv = 0; # 일봉 볼린져밴드 계산 dayBBup = dayma + (dayDv * dayStdv); dayBBdn = dayma - (dayDv * dayStdv); plot1(dayBBup ,"상단"); plot2(dayma,"중단"); plot3(dayBBdn,"하단");
프로필 이미지
예스매니아
2014-10-10
142
글번호 79225
지표
답변완료

질의한 답변에 이해가 안되는 것 재 문의합니다!!

1. 변수 선언의 차이점이 무엇인지요? 가. var : diff(0,data2),HH(0,data2); 나. var : diff(0), HH(0); 위 가의 경우 data2을 추가한 것과 나의 경우 생략한 것의 차이점이 궁금합니다!!! 2. 앞전에 질의한 2의 답변 수식에서 아래의 경우 if data2(crossup(data2(c),data3(c)) or CrossDown(data2(c),data3(c))) Then{ HH = diff; } 식은 상향돌파 혹은 하향돌파할 경우 diff값을 구하는 식으로 이해가 됩니다!!! 그러나 제가 질의한 것은 data2와 data3이 가장 크게 벌어질 때의 HH값을 구하고 이 HH값의 50%이하 수준으로 좁혀지는 시점에서 진입할려고 하는 의도입니다!!! 또한 if식에서 data2을 처음에 정의하지 않고 if crossup(data2(c),data3(c)) or CrossDown(data2(c),data3(c)) Then{ HH = diff; } 위 식처럼 data2를 빼면 어떤 차이점이 있는지요??? 결론) 1. 변수선언과 if식에서 data2를 첨부한 이유는 무엇인지요??? 2. 상향돌파 혹은 하향돌파가 아니라 이격의 최대값에서 50% 이하 하향할 때 진입할려는 수식 부탁드립니다!!! 감사드립니다!!! ==================================================================================== 안녕하세요 예스스탁입니다. 1-1 과거 영업일까지 120봉을 적용하는 경우 #data2 KP 선물매수호가총건수 #data3 KP 선물매도호가총건수 if data2(crossup(data2(c),data3(c)) and countif(crossUP(data2(c),data3(c)),120) >= 3) then buy(); if data2(CrossDown(data2(c),data3(c)) and countif(CrossDown(data2(c),data3(c)),120) >= 3) then sell(); 1-2 if data2(date != date[1]) Then{ upcnt = 0; dncnt = 0; } if data2(dayindex < 120) Then{ if data2(crossup(data2(c),data3(c))) Then upcnt = upcnt+1; if data2(crossup(data2(c),data3(c))) Then upcnt = upcnt+1; } Else{ upcnt = data2(countif(CrossUp(data2(c),data3(c)),120)); dncnt = data2(countif(CrossDown(data2(c),data3(c)),120)); } if data2(crossup(data2(c),data3(c)) and upcnt >= 3) then buy(); if data2(CrossDown(data2(c),data3(c)) and dncnt >= 3) then sell(); 2. var : diff(0,data2),HH(0,data2); diff = Abs(data2(c)-data3(c)); if data2(crossup(data2(c),data3(c)) or CrossDown(data2(c),data3(c))) Then{ HH = diff; } if diff > HH Then HH = diff; if HH <= diff*0.5 Then{ if data2(c) > data3(c) Then sell(); if data2(c) < data3(c) Then buy(); } 즐거운 하루되세요 > HI_jj***** 님이 쓴 글입니다. > 제목 : 수식부탁드립니다 > 매번 감사드립니다!!! 1. 참조지표 중에서 KP 선물매수호가 총건수가 KP 선물매도호가 총건수를 직전 120봉 중에서 상향돌파한 횟수가 3회 이상일 경우 매수 진입하고 반대로 하향돌파하는 경우에 매도 진입하는 시스템식 부탁드립니다!!! - 당일 시가 이후에만 120봉을 적용하는 경우 - 과거 영업일까지 120봉을 적용하는 경우 2. KP 선물매수호가 총건수와 KP 선물매도호가의 총건수의 갭 차이가 가장 클때보다 50% 감소할 때 KP 선물매수호가 총건수가 양수이면 매도 진입하고 반대로 KP 선물매수호가 총건수가 음수이면 매수진입 시스템식 부탁드립니다!!!
프로필 이미지
회원
2014-10-10
183
글번호 79224
시스템
답변완료

청산 적략 부탁드립니다.

1 전략 청산 부탁 드립니다. 12틱 상승 이후 현재가와 매수가가 같으면 본정 20틱 상승 이후 현재가 매수가 + 3틱 이면 청산 25틱 상승 이후 현재가 매수가 + 5틱 이면 청산 2 전략 청산 이후 15개봉 이내에 진입금지 목표가 SetStopProfittarget 이후 15개봉 이내에 진입금지 손절후 15개봉 이내에 재매수 금지 또는 15분 이내 매수 금지 3 하루 수익 50틱 이상인경우 매매종료 하루 손해 30틱 이상인경우 매매 종료 하루 5번 이상 진입금지. 4 특정 요일/시간때 무포지션 및 진입 금지 ex) 2014/10/18 02시20분 ~ 40분 무포지션 및 진입 금지 부탁드립니다.
프로필 이미지
바람의투자자
2014-10-10
188
글번호 79223
시스템
답변완료

문의

예전 문의한 것 중 답변 안 주신게 있어서 다시 문의 합니다. 시스템 매도 매수 신호 진입 후에.. 연속2개의 양봉이 발생한 횟수, 연속2개 음봉이 발생한 횟수를 구하는 식도 부탁드립니다. 진입한 시점부터 횟수를 계산하고.. 20개 봉이 넘어가면.. 현재봉에서 앞전 20개봉의 횟수만 비교해서 양봉 음봉의 비율을 비교해서 ... 시간이 지나 매수일때 음봉의 비율이 양봉의 비율을 넘어서면 청산 후 매도진입.. 매도일때 양봉의 비율이 음봉 비율을 넘어서면 청산후 매수진입 시스템 식 부탁드립니다. 38382 번 추가 문의입니다. 답변 감사드립니다. 1틱 차트에서 50틱 차트를 참조하지 못하면... 예스스팟에서.. 1틱차트와 50틱 차트의 신호를 복합해서.. 신호를 낼수 있는걸로 알고있습니다. 혹시 신호를 낸다면... 예스스팟에서 나오는 신호도.. 차트에 별도로 표시할수있나요? 그리고..2번 답변에서요.. 1틱차트를 중간에 실행시키면차트의 시작점이 07시를 훌쩍 넘어서.... 신호가 나오지 않아서 그러는데.. 그거는 실행할때마다.. 차트가 언제 시간대에서 시작했는지 보고.. 항상 초기화의 시작점을 별도로 지정해 줘야한다는 거죠? 이런 답변이 맞는거죠? stime을 쓰는 의미는 시스템 트레이딩을 시작하는 첫 시작 봉을 정해준다. 라는 의미도 있는건 아닌가요?.. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 문의 > 안녕하세요 예스스탁입니다. 1. 수식은 참조데이터(data2)를 이용하는 식으로 변경해 드립니다. 다만 차트에서 참조데이터는 10틱이상일때만 적용가능합니다, 1틱차트에서는 참조데이터 사용하실수 없습니다. //////////////////////////// 초기화 ///////////////////////////// if stime == 070500 or (stime > 070500 and stime[1] < 070500) Then { daycnt = daycnt + 1; T = 0; } 2. 해당 부분은 방법이 없습니다. 전략실행차트는 최대 봉조회갯수가 5000개입니다. 또한 현재봉으로부터 3시간전 4시간전은 수식에서 지정해서 신호를 발생할수 없습니다. 모든 수식은 과거에서 현재봉쪽으로만 계산이 됩니다. 현재봉에서 3시간전은 현재봉까지 와서 시간을 확인해야 하는데 현재봉까지 오면 과거로 돌아가서 신호를 발생해야 하는데 과거로 다시 역행하는 내용은 수식에서 구현이 되지 않습니다. 즐거운 하루되세요 2. 초기화 부분에서요.. 현재 이렇게 되어 있습니다. if stime == 070500 or (stime > 070500 and stime[1] < 070500) Then daycnt = daycnt + 1; 첫봉의 시작시간이 오전 07:05분에 시작될때 부터 신호가 발생하게 되어 있는데요.. 기존에 50틱 차트에서는 아무 문제없었는데요. 1틱차트에서는 아침에는 아무문제없지만.. 오후에 다시 HTS를 시작하게 되면 1틱차트의 첫봉이 아침 07시가 아닌... 3~4시간전 부터 봉이 시작합니다.(현재 5,000개 봉 조회) 이때는 신호가 발생하지 않습니다. 그걸 이렇게 바꿔 봤는데.. // 현재시간에서 3시간 전부터 신호 발생하고 싶습니다. // 우리선물1틱데이타 너무 안보여줍니다. if stime == (CurrentTime-30000) or (stime > (CurrentTime-30000) and stime[1] < (CurrentTime-030000)) Then 역시 신호가 나오지 않네요.. 도움 부탁드립니다.
프로필 이미지
hjkang철인
2014-10-10
165
글번호 79222
시스템
답변완료

지난 20년간 코스피 200 선물 분봉 데이터를 얻을 수 있을까요?

지난 20년간 코스피 200 선물 분봉 데이터를 얻을 수 있을까요? 대신 cybos 사용하는데 과거 몇달치 밖에 얻을수가 없네요 혹시 얻을수 있나요?
프로필 이미지
끝까지간다
2014-10-09
170
글번호 79221
검색