커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

안녕하세요. 시스템식과 지표식 부탁드립니다 .

해외선물 분봉기준 시스템식과 지표식 부탁드립니다 1. 시스템식 1-1:진입 전일 종가>당일 시가> 피봇 기준선 하향이탈 시 매도 전일 종가<당일시가< 피봇 기준선 상향 시 매수 1-2:청산 매도포지션일 경우 1차 지지선 기준 트레일링 스탑 적용 매수포지션일 경우 1차 저항선 기준 트레일링 스탑 적용 1-3 시간필터 : 진입(거래)시간, 주문 나오는 시간 제한 설정 및 외부 변수화 (24시간 기준이라 최적화 시킬 때 최소값과 최대값 순서를 어떻게 해야 하는지 고민입니다 가령 02시까지 진입(거래)시간을 두고 최적화 할때 최소값과 최대값이 바뀌는데 어떻게 하면 좋은지 부탁드립니다 condition1 =dealtimeopen <time< dealtimeclose ; 이런식으로 설정하고 최적화 시키면 되는지요) 2. 지표식 분봉 차트에 표시하려고 합니다(각 색상 및 이름표시) 2-1 어제부터 3일 전까지의 고가와 저가 그리고 중간값 선으로 표시 2-2 어제 종가와 오늘 시가 선 표시 2-3 피봇 기준선 및 1,2 차 저항 및 지지선 표시
프로필 이미지
mirror05
2017-09-13
150
글번호 112738
시스템
답변완료

수식을 도와주세요. 재문의.

1번이 그러한 이유로 불가하시면 그림에 1번 예 처럼, 보조지표의 고저폭의 중간값에서 다음날까지만 수평선이 그어지게 하는건 가능할까요? 2번은 제가 원했던 식은 그림처럼 만약 9/11일날 보조지표상의 종가가 당일 고저폭의 37% 부근에서 종료가 되면 가격챠트에 고저폭의 37% 부근에 다음날 수평선이 만들어 지게 하고 싶었습니다. 요약: 1. 보조지표상의 당일 고저폭 중간값에서 다음날 수평선. 2. 보조지표상의 당일 고저폭 대비 종가위치 % 를 가격챠트 고저폭 대비 % 위치에 다음날 수평선. 다시 한번 부탁드려요. 감사합니다. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 수식을 도와주세요. > 안녕하세요 예스스탁입니다. 1 문의하신 내용은 수식으로 가능하지 않을것 같습니다. 해당 내용은 매일 마지막 값을 해당일 이후에 출력하고 해당 값이 이후에 지표와 만나는지 감시해야 하는데 지표를 출력하는 plot의 갯수도 유동적으로 그릴수 없고 몇개가 될지 모르는 이전일의 값을 계속 갑시하는 것과 어렵습니다. 2 value1 = abs(DayHigh-DayLow); if bdate != bdate[1] Then var2 = var1[1]; if index >= 1 then{ if C > o Then var1 = var1+(v*value1); if C < o Then var1 = Var1-(v*value1); } plot1(var1); plot2(var2); 즐거운 하루되세요 > kss 님이 쓴 글입니다. > 제목 : 수식을 도와주세요. > 이전에 수식을 도움받아 만들어서 쓰던중 조금 더 변형을 하고 싶어서 문의글 올립니다. value1 = abs(DayHigh-DayLow); if index >= 1 then{ if C > o Then var1 = var1+(v*value1); if C < o Then var1 = Var1-(v*value1); } plot1(var1); 1.위 보조지표에서 장이 종료되었을시, 종가값에서 수평선을 하나 긋고싶습니다. 이 수평선은 위 보조지표를 다시 만날때 까지 진행됩니다.(그림 예시.) 2.당일 보조지표 고저폭에서 종가가 어디쯤에 위치하는지 %를 알아낸후 가격챠트에 그 % 위치에 다음날 수평선을 하나 긋고싶습니다. (예를들어 보조지표상 종가가 고저폭의 중심인 50% 부근이라면 가격챠트에 다음날 전일중심값 부근에 수평선이 하나 생김.) 위와 같이 수식을 개량하고 싶사오나 실력이 미천하여 수식관리자님께서 부디 도와주시길 간절히 바라옵니다.
프로필 이미지
kss
2017-09-15
146
글번호 112737
지표
답변완료

수식작성

안녕하세요! 다음사항에 대하여 문의 드립니다. 1. 프로그램에 buy(); 만 코딩하고 실행시켰을 경우(피라미딩은 '아무진입이나 허용'으로 체크)에는 아무런 매수도 없느데 buy(); sell(); 으로 코딩 경우에는 매수매도가 계속 일어납니다. buy(); 경우에 왜 매수가 발생 안되는지요! 2. 현재가로 매수(매도)할 경우에 어떤 함수나 명령어를 써야 되는지요! 원리가 궁금하오니 상세한 설명 부탁드립니다 감사합니다.
프로필 이미지
패랭이야
2017-09-13
120
글번호 112734
시스템
답변완료

수식부탁드립니다

1. 10캔들 바닥이 20캔들 바닥보다 높은 상태일때 10캔들 바닥에서 연속 3양 매수 0.4 손실 컷 1.0 수익 청산 2. 10캔들 천정이 20캔들 천정보다 낮은 상태일때 10캔들 천정에서 연속 3음 매도 0.4 손실 컷 1.0 수익 청산 3. 당일 저가(daylow) 기준 2.5 이상 상승 상태에서 연속 3음 매도 0.4 손실 컷 1.0 수익 청산 4. 당일 고가(dayhigh) 기준 2.5 이상 하락 상태에서 연속 3양 매수 0.4 손실 컷 1.0 수익 청산 감사합니다
프로필 이미지
회원
2017-09-13
149
글번호 112730
시스템
답변완료

수식 요청 드립니다.

안녕하세요. 2가지 수식 요청 드립니다. 1, 연결선물 당일청산 시스템에서 장시작 후 당일시가와 완성봉 종가 기준으로 -> 장시작 후 당일시가 아래로 0.7P 하락한 조건 완성봉 발생한 이후, 현재봉의 종가가 당일시가를 상향 돌파시 다음봉 시가에 매수진입 (하락 후 상승 조건) -> 장시작 후 당일시가 위로 0.7P 상승한 조건 완성봉 발생한 이후, 현재봉의 종가가 당일시가를 하락 돌파시 다음봉 시가에 매도진입 (상승 후 하락 조건) 2.연결선물 당일청산 시스템에서 장시작 후 당일시가와, 완성봉 종가, 선물거래량 기준 아래 수식에서 선물 일누적 순매수, 선물 일누적 순매도 거래량으로 수정 요청 드립니다. -> 장시작 후 선물 일 누적 순매수 거래량이 2,100계약 이상 돌파 이후 당일시가보다 고가인 완성봉의 누적개수가 3개이상 발생시 다음봉 시가에 매수 진입 -> 장시작 후 선물 일 누적 순매도 거래량이 2,000계약 이상 돌파 이후 당일시가보다 저가인 완성봉의 누적개수가 3개이상 발생시 다음봉 시가에 매도 진입 1. if bdate != bdate[1] Then{ var1 = 0; var2 = 0; var3 = 0; Condition1 = false; Condition2 = false; } var1 = var1+v; if H > dayopen Then{ var2 = var2+1; if var1 >= 2000 and var2 >= 3 and Condition1 == false Then{ buy("b",AtMarket); Condition1 = true; } } if L < dayopen Then{ var3 = var3+1; if var1 >= 2000 and var3 >= 3 and Condition1 == false Then{ sell("s",AtMarket); Condition2 = true; } } SetStopEndofday(153000); 감사합니다.
프로필 이미지
dandy
2017-09-13
132
글번호 112727
시스템
답변완료

재문의

밑에수식 실행해보면은 첫진입이10시넘어서 나오는데요.......... 장시작하면은 첫봉에서나와야되는것안닌지요 잘몰라서요 죄송... 제가원하는것은 장시작후 외국인매도면은매도진입 매수면은매수진입식입니다 1. if data2(stime < 93000 and c > 0) Then buy(); if data2(stime < 93000 and c < 0) Then sell(); 2. if data2(bdate != bdate[1] and c > 0) Then buy(); if data2(bdate != bdate[1] and c < 0) Then sell();
프로필 이미지
질갱이
2017-09-13
116
글번호 112725
시스템
답변완료

문의 드립니다

안녕하세요 국선 정규장 종가선과 복합장 종가선을 동시에 표시하고자 합니다 부탁드립니다
프로필 이미지
만강
2017-09-13
127
글번호 112715
지표
답변완료

질문입니다.

다음과 같은 순서를 통해 도출되는 지표를 만들고 싶습니다. 1. input X값을 입력하면 Ma(1), Ma(2), ... , Ma(X)까지 생성합니다. 2. y2 = {Ma(1) + Ma(2)} / 2 y3 = {Ma(1) + Ma(2) + Ma(3)} / 3 y4 = {Ma(1) + Ma(2) + Ma(3) + Ma(4)} / 4 ... yX-1 = {Ma(1) + ... + Ma(X-1)} / X-1 yX = {Ma(1) + ... + Ma(X)} / X 를 생성합니다. 3. 2에서 생성된 y값들을 비교하는데, 비교방법은 y2가 y3 보다 크면 +1, 같으면 0, 작으면 -1, y2가 y4 보다 크면 +1, 같으면 0, 작으면 -1, ... y2가 yX 보다 크면 +1, 같으면 0, 작으면 -1, y3가 y4 보다 크면 +1, 같으면 0, 작으면 -1, y3가 y5 보다 크면 +1, 같으면 0, 작으면 -1, ... y3가 yX 보다 크면 +1, 같으면 0, 작으면 -1, y4가 y5 보다 크면 +1, 같으면 0, 작으면 -1, y4가 y6 보다 크면 +1, 같으면 0, 작으면 -1, ... y4가 yX 보다 크면 +1, 같으면 0, 작으면 -1, ... yX-1이 yX 보다 크면 +1, 같으면 0, 작으면 -1, 4. 이렇게 차례데로 비교하여 그 값을 모두 합한 값을 출력합니다. 다음과 같은 지표를 만들고 싶습니다. 예시로 부탁드립니다. 꼭 확인해보고 싶은 부분이 있어서 그럽니다. 감사합니다.
프로필 이미지
yanartas
2017-09-13
121
글번호 112714
지표
답변완료

재문의

1.저번질문 Input:BaseLine0(0); Input : shortPeriod(12), longPeriod(26), Period(9); Var : MACDv1(0), MACDsig1(0),macdosc1(0),MACDv2(0), MACDsig2(0),macdosc2(0) ; MACDv1 = XH1(shortPeriod, longPeriod)/100000; MACDsig1 = ema(MACDv1,Period); macdosc1 = MACDv1-ema(MACDv1,Period); #==========================================# MACDv2 = XL1(shortPeriod, longPeriod)/100000; MACDsig2 = ema(MACDv2,Period); macdosc2 = MACDv2-ema(MACDv2,Period); plot1(macdosc1, "MACDOscillator+"); Plot2(-macdosc2, "MACDOscillator-"); 참고(사용자함수):Input : shortPeriod(Numeric), longPeriod(Numeric); value1 = ema(upvol,shortPeriod); value2 = ema(upvol,longPeriod); XH1 = (value1-value2)-ema(value1-value2,shortPeriod); 2.고점을 그리는 지표를 알려 주셨는데 지표가 나타나지 않아요. 다시 좀 봐 주세요 Input:BaseLine0(0); Input : shortPeriod(2), longPeriod(3), Period(2); var : tl(0),hh(0); Var : MACDv1(0), MACDsig1(0),macdosc1(0),MACDv2(0), MACDsig2(0),macdosc2(0) ; MACDv1 = XH1(shortPeriod, longPeriod); MACDsig1 = ema(MACDv1,Period); macdosc1 = MACDv1-ema(MACDv1,Period); #==========================================# MACDv2 = XL1(shortPeriod, longPeriod); MACDsig2 = ema(MACDv2,Period); macdosc2 = MACDv2-ema(MACDv2,Period); #==========================================# if macdosc1 > macdosc2 Then{ hh = macdosc1; TL_Delete(tl); tl = TL_New(sdate[1],stime[1],hh,sdate,stime,hh); TL_SetExtRight(tl,true); TL_SetExtLeft(tl,true); } if macdosc1 < macdosc2 Then{ hh = macdosc2; TL_Delete(tl); tl = TL_New(sdate[1],stime[1],hh,sdate,stime,hh); TL_SetExtRight(tl,true); TL_SetExtLeft(tl,true); } 3.그럼 수고하세요
프로필 이미지
성공예견
2017-09-13
137
글번호 112713
지표