커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

화면에다가 구분색깔입히는 방법

지표라고 할수는 없지만, 그렇다고 강조도 아니고, 요지는요.... 예스차트에서는 화면에다가 구분색깔을 넣을수는 없나요? 예를들자면, MACD의 단기선이 장기선을 즉 위에 있는 구간(즉 플러스수치)에서는 차트화면에다가 붉은색으루 화면구간을 만드는 방법은 없는가요? MACD의 단기선이 장기선을 즉 아래에 있는 구간(즉 마이너스수치)에서는 차트화면에다가 파란색으로 화면구간을 만드는 방법은 없는가요?
프로필 이미지
포리버스
2013-10-14
181
글번호 68401
지표
답변완료

지표부탁드립니다

수식1 : 고점 HighestSince(1, CrossUp(macd(14,28),0), MA(2*MA(가격, Period/2, 가중) - MA(가격, Period, 가중), Sqrt(Period), 가중)) 수식2 : 저점 lowestSince(1, Crossdown(macd(14,28),0), MA(2*MA(가격, Period/2, 가중) - MA(가격, Period, 가중), Sqrt(Period), 가중)) 지표조건 가격 : 종가 Period : 14
프로필 이미지
운송
2013-10-14
191
글번호 68400
지표
답변완료

시스템 질문입니다

예스글로벌 6E 종목에서 (5,10) 이동평균선 교차 시스템 1계약 (7,14) 이동평균선 교차 시스템 1계약 (15,30) 이동평균선 교차 시스템 1계약 을 한차트에 동시에 사용하고 싶습니다 (7,14)과(15,30) 이동평균선 교차 시스템 이 신호가 나와서 진입되어 있는데 (5,10) 청산 신호에 모두 청산 되어 버리는 경우가 있는데 해결해 주세요
프로필 이미지
파인애플
2013-10-14
171
글번호 68399
시스템
답변완료

검색에 필요한 최소 기간

1)고급 종목 검색 창의 검색에 필요한 최소 기간의 맥시멈은 200인가요? 2)이전 질문과 답변을 보면 상장된지 오래되지 않아 검색에 필요한 최소 기간을 충족시키지 못하는 종목은 형성된 봉 갯수로 검색식이 적용되므로 검색이 된다고 하셨는데 실제로해보니 검색이 안되던데 어떻게 해야 하는지 알려주십시요. 3)고급 종목 검색도 실시간 또는 일정주기로 갱신되며 검색이 가능한지 알고 싶습니다. 4)만일 3)이 안된다면 신호 검색 화면으로 모니터링을 해야 할 것 같습니다. 저 같은 경우 타주기를 참조하므로 타주기 참조 함수를 검색식 하나에 통합해 넣어야 하는데 타주기 참조 함수식을 통합해 넣어도 봉 완성 이전에 검색이 가능한가요? 다시 말해 고급 종목 검색의 경우 봉이 완성되지 않아도 누르는 순간의 봉의 상태에 따라 검색이 된다고 말씀하셨으니까 일봉이든 주봉이든 완성이 되지 않아도 검색이 될텐데 타주기를 통합해 넣은 검색식도 이런식으로 검색이 되는지 알고 싶습니다. 5)고급 종목 검색창의 "목록의 조건 추가"와 "결과" 체크 박스는 무엇인가요? 6)고급 종목 검색창 오른쪽에 있는 삭제 x 표시를 누르면 조건식 a and b and c 모두 사라져 버리는데 왜 그런가요? 7)검색된 종목들을 하나씩 빠르게 누르다보면 hts에서 오류 메시지를 보내며 hts가 튕기는데 이런 현상이 정상적인 것인지 알고 싶습니다. 8)고급 종목 검색에서 검색된 종목을 화살표키로 움직이며 차트와 연동시키고 싶은데 (하나씩 마우스로 종목을 클릭해야 하니 불편해서요) 방법이 있는지요? 아니면 증권사 hts마다 다르니까 증권사에 문의해야 하나요? 질문이 많아 죄송합니다.
프로필 이미지
임네닉
2013-10-14
238
글번호 68398
검색
답변완료

수정좀 부탁 드리겠습니다

안녕하세요 날씨가 춥네요 감기 조심하세요 청산식 수정좀 부탁 드리겠습니다 . 아래 매수1.(0.550) 매수2. (0.382) 매수3.(0.236) 만약 현재 매수가 1회 그러니 1차매수만 하였더라도 61.80% 보유주식 전량 청산 2차 까지 매수한 상황이라도 61.80% 보유주식 전량 청산 3차 까지 매수한 상황이라면 50%에서 보유수량의 60%청산 분할 청산1회하고 그리고 나머지 보유 수량은 61.8%전량 청산 식 으로 수정 부탁 드립니다 저점 + (고점 -저점) 계산 작도식의 50%자리와 61.8자리 입니다 그러니 매수 자리에서 위 방향이 맞지요? 청산식만 수정 부탁 드리겠습니다 감사합니다 . input : 고점(15900),저점(3850),투자금액(10000000); var : 매수1(0),매수2(0),매수3(0),진입수량1(0),진입수량2(0),진입수량3(0); var : 분할청산수량(0); 매수1 = 저점+(고점-저점)*0.550; 매수2 = 저점+(고점-저점)*0.382; 매수3 = 저점+(고점-저점)*0.236; if CodeCategoryEx == 11 and BasePrice < 50000 Then{ 진입수량1 = int(int((투자금액*0.20)/C)/10)*10; 진입수량2 = int(int((투자금액*0.30)/C)/10)*10; 진입수량3 = int(int((투자금액*0.50)/C)/10)*10; } Else{ 진입수량1 = int((투자금액*0.20)/C); 진입수량2 = int((투자금액*0.30)/C); 진입수량3 = int((투자금액*0.50)/C); } if MarketPosition == 0 and L > 매수1 Then buy("1차매수",AtLimit,매수1,진입수량1); if MarketPosition == 1 and countif(CurrentContracts < CurrentContracts[1],BarsSinceEntry) < 1 Then{ if CurrentEntries == 1 then buy("2차매수",AtLimit,매수2,진입수량1); if CurrentEntries == 2 then buy("3차매수",AtLimit,매수3,진입수량1); } if MarketPosition == 1 Then{ if CodeCategoryEx == 11 and BasePrice < 50000 Then{ 분할청산수량 = int(int(MaxContracts*0.5)/10)*10; } Else{ 분할청산수량 = int(MaxContracts*0.5); } if CurrentEntries == 1 Then ExitLong("청산1차",Atlimit,고점);//전량청산 if CurrentEntries == 2 Then{ if CurrentContracts == MaxContracts Then ExitLong("청산21",Atlimit,매수1,"",분할청산수량,1); if CurrentContracts < MaxContracts Then ExitLong("청산22",Atlimit,고점); //나머지 전량청산 } if CurrentEntries == 3 Then{ if CurrentContracts == MaxContracts Then ExitLong("청산31",Atlimit,매수2,"",분할청산수량,1); if CurrentContracts < MaxContracts Then ExitLong("청산32",Atlimit,매수1);//나머지 전량청산 } }
프로필 이미지
데스나이트
2013-10-13
161
글번호 68397
시스템
답변완료

분봉 데이타 시물레이션 결과 상이 분석요청

수고하십니다. 다른 날짜에 다운 받은 선물 1분봉 데이타 2개(20100101-20131004기간의데이타를 10월6일, 10월13일 다운받은데이타) 를 같은 시스템식을 시물레이션 했는데 결과가 상이했어 문의드립니다. 이런 결과의 원인이 무엇인지, 설정을 잘못했는지 분석부탁합니다. 수식은 아래내용이고 분봉데이타와 설정은 파일로 첨부합니다. 부탁드립니다. * 분봉데이타 파일이 압축을 해도 17메가나 되네요 혹 메일로 올리면 않될까요? input : 이격기간1(16),이격기간2(248),이격기간3(18),이격기간4(246),볼륨레이쇼기간1(19),볼륨레이쇼기간2(14),볼륨레이쇼기간3(19),볼륨레이쇼기간4(8); input : 매수이격기준1(100),매수이격기준2(100.834); input : 매도이격기준1(100.35),매도이격기준2(100.305); var : 이격도1(0),이격도2(0),이격도3(0),이격도4(0),볼륨레이쇼1(0),볼륨레이쇼2(0),볼륨레이쇼3(0),볼륨레이쇼4(0); var : 매수조건1(false),매수조건2(false),매도조건1(false),매도조건2(false); 이격도1 = Disparity(이격기간1); 이격도2 = Disparity(이격기간2); 이격도3 = Disparity(이격기간3); 이격도4 = Disparity(이격기간4); 볼륨레이쇼1 = VR(볼륨레이쇼기간1); 볼륨레이쇼2 = VR(볼륨레이쇼기간2); 볼륨레이쇼3 = VR(볼륨레이쇼기간3); 볼륨레이쇼4 = VR(볼륨레이쇼기간4); #이격도1이 매수이격기준1을 상향돌파하고 VR1이 2봉연속 상승 매수조건1 = (crossup(이격도1,매수이격기준1))[1] and countif(볼륨레이쇼1 > 볼륨레이쇼1[1],2) == 2; #이격도2가 매수이격기준2를 상향돌파하고 VR2가 2봉연속 상승 매수조건2 = (crossup(이격도2,매수이격기준2))[1] and countif(볼륨레이쇼2 > 볼륨레이쇼2[1],2) == 2; #이격도1이 매도이격기준1을 하향이탈하고 VR1이 2봉연속 하락 매도조건1 = CrossDown(이격도3,매도이격기준1) and countif(볼륨레이쇼1 < 볼륨레이쇼3[1],2) == 2; #이격도2가 매도이격기준2를 하향이탈하고 VR2가 2봉연속 하락 매도조건2 = CrossDown(이격도4,매도이격기준2) and countif(볼륨레이쇼2 < 볼륨레이쇼4[1],2) == 2; if 매수조건1 == true or 매수조건2 == true Then buy(); if 매도조건1 == true or 매도조건2 == true Then sell();
프로필 이미지
자아준
2013-10-13
211
글번호 68396
시스템
답변완료

안녕하세요

윗부분 수식은 생략을 하였습니다 아래와 같이 수식을 사용하고 있습니다 가운데쯤 보시면 재매수 관련 수식이 있습니다 여기에 보면 매수청산4와 나머지 조건값이 맞을때 재매수가 되게 되어있습니다 재매수 부분에서 매수청산4 또는 청산7이 나오고 나머지 조건값이 맞을때 재매수를 하고 싶습니다 수식 부탁 드립니다 (010 8754 7432) 생략 if MarketPosition == 1 and ReEL < 재매수청산횟수 then{ if (BarsSinceEntry >= 청산양봉갯수 and Countif(cond1 == true,청산양봉갯수) == 청산양봉갯수) or RSIV < RSIvalue1 or (BarsSinceEntry >= 청산음봉갯수 and Countif(cond2 == true,청산음봉갯수) == 청산음봉갯수) and C <= DayLow+N and C < dayopen+z Then ExitLong("매수청산4"); } if MarketPosition == 0 and IsExitName("매수청산4",1) == true and count > 0 and RSIV > RSIvalue2 and rebuy < 재매수횟수 and C > MAv6 and C > MAv5 and close > open and countif(C < mav5,BarsSinceExit(1)) < 1 and C <= DayLow+N and C < dayopen+z then buy("재매수"); if MarketPosition == 1 and C <= DayLow+q and C < dayopen+w and C >= DayLow+N and C > dayopen+z Then{ if highest(h,BarsSinceEntry) >= EntryPrice+Y Then ExitLong("청산7",AtStop,highest(H,BarsSinceEntry)-x); }
프로필 이미지
난정욱
2013-10-13
163
글번호 68395
시스템
답변완료

시스템식 부탁드립니다.

1. 스토캐스틱 20이하에서 골든크로스 발생시 매수1계약진입 스토캐스틱 80이상에서 데드크로스 발생시 매수청산... 2. 스토캐스틱80이상에서 데드크로스 발생시 매도1계약진입 스트캐스틱20이하에서 골든크로스 발생시 매도청산... 3. 매수 또는 매도 1계약 진입됐을시... 진입봉이후5개봉안에서 청산신호가 나오지 않을시...진입신호의 3틱으로 익절청산... 손절은 12틱으로 설정.... 감사합니다.
프로필 이미지
신나는파파
2013-10-13
166
글번호 68394
시스템
답변완료

문의드립니다.

var1 = ma(c,5); if O > var1[1] Then value1 = value1+1; if O > var1[1] and C > O Then value2 = value2+1; plot1(value2/value1*100); 분봉 차트에서 5 이평선 위에 있는 봉이 양봉으로 끝나는 경우의 수를 카운트 하고 확률 또한 구하고 싶습니다. 위의 수식이 제가 구하는 의미랑 다른건가요?ㅠ
프로필 이미지
system84
2013-10-13
156
글번호 68393
시스템