커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수식문의드립니다

수식1 A=MA(가격,기간,이평종류); if(A>A(1),A,0) 수식2 A=MA(가격,기간,이평종류); if(A<A(1),A,0) 가격 (C=H+L)/3) 기간:75 이평종류:단순 리딩차트에수식적용할려면어떻게해야하나요?
프로필 이미지
하얀그림자
2013-04-05
277
글번호 61718
시스템
답변완료

문의

1. 매수#1, 매수#2, 매수#3의 여러 조건에 맞는 진입식이 있을경우 만약 동시에 신호가 발생하면 우선순위를 둘수 있는지요? #1이 최상위 레벨이고 #3이 최하위 레벨로 동시신호발생시 #1을 진입시키게 하고 싶습니다. 방법이 있는지요? 감사합니다.
프로필 이미지
TRF
2013-04-05
260
글번호 61713
시스템
답변완료

문의 드립니다.

안녕하세요 항상 좋은답변 감사드리고 오늘도 역시 초보적인 질문드려봅니다. 이제 가르쳐주신대로 아래식으로 당일만 나오는 선지표로 잘 이용하고 있습니다. 추가로 궁금한점이 생겨서요. 그럼 이 지표로도 시스템의 화살표처럼 시스템신호 나오는 자리만 표시할 수도 있는지요 예를들어 삼각형이라든지 동그라미가 저점은 봉아래, 고점은 해당봉위에 표시되면서 그 해당지수가 표시되게요. 가능하시면 답변부탁드리고 미리감사드립니다. Input : StoP1(12), StoP2(5), StoP3(5), RSIP(9), CCIP(9); var : StoK(0),StoD(0); var1 = StochasticsK(stoP1,stoP2); var2 = RSI(RSIP); var3 = CCI(CCIP); if CrossUp(var1,20) Then var11 = C; if CrossDown(var1,80) Then var11 = C; if CrossUp(var2,30) Then var12 = C; if CrossDown(var2,70) Then var12 = C; if CrossUp(var3,-100) Then var13 = C; if CrossDown(var3, 100) Then var13 = C; if CurrentDate == sdate Then{ plot1(var11); plot2(var12); plot3(var13); }
프로필 이미지
히어로
2013-04-05
284
글번호 61711
지표
답변완료

예스스팟 식을 만들어서 했는데.. 오류메세지가 뜹니다.

예스스팟 실행을 했더니, 최근 메세지에 "Tr:1164 수신 데이타 크기 에러" 라고 뜨네요. 수식에 무엇을 확인하면 될까요? 어떤 경우에 발생하는지 확인 부탁드립니다.
프로필 이미지
최강투자
2013-04-05
312
글번호 61708
시스템
답변완료

문의 드립니다.

Input:상승률(1),하락률(1); Var:j(0),상승(100),하락(-100),양방향(2),색깔(0),파랑(-1),빨강(1), 기준고(0),기준저(0),기준고Bar(0),기준저Bar(0),추세(0),이중파동(0); Array:고[20](0),저[20](0),고Bar[20](0),저Bar[20](0); #==========================================# # 전고점,전저점 index 증가 #==========================================# For j = 1 To 19 { 저Bar[j] = 저Bar[j] + 1; 고Bar[j] = 고Bar[j] + 1; } #==========================================# # 이중파동 처리 #==========================================# If 이중파동 > 0 Then { Plot1(이중파동,"Zigzag",Iff(색깔==빨강,RED,BLUE)); 이중파동 = 0; } #==========================================# # 최근 고,저 갱신 #==========================================# If 기준고 <= H || 기준고 == 0 || IsNaN(기준고) == True Then { 기준고 = H; 기준고Bar = 0; } Else 기준고Bar = 기준고Bar + 1; If 기준저 >= L || 기준저 == 0 || IsNaN(기준저) == True Then { 기준저 = L; 기준저Bar = 0; } Else 기준저Bar = 기준저Bar + 1; #==========================================# # 추세방향 결정 #==========================================# If 기준고 * (1 - (하락률/100)) > H && 기준저 * (1 + (상승률/100)) < L Then { 추세 = Iff(기준고Bar==기준저Bar,양방향,Iff(기준고Bar>기준저Bar,상승,하락)); } Else If 기준고 * (1 - (하락률/100)) > H Then 추세 = 하락; Else If 기준저 * (1 + (상승률/100)) < L Then 추세 = 상승; #==========================================# # 추세변화에 따른 변곡점 처리 #==========================================# If 추세[1] == 상승 && 추세 == 하락 Then { For j = 18 DownTo 1 { 고[j+1] = 고[j]; 고Bar[j+1] = 고Bar[j]; } 고[1] = 기준고; 고Bar[1] = 기준고Bar; 기준고 = H; 기준고Bar = 0; 기준저 = L; 기준저Bar = 0; If 고[2] < 고[1] Then 색깔 = 빨강; If 이중파동[1] > 0 Then 이중파동 = 고[1]; Else plot1(고[1],"Zigzag",Iff(색깔==빨강,RED,BLUE)); } If 추세[1] == 하락 && 추세 == 하락 && 고[1] < 기준고 && 기준고 * (1 - (하락률/100)) > H Then { For j = 18 DownTo 1 { 고[j+1] = 고[j]; 고Bar[j+1] = 고Bar[j]; 저[j+1] = 저[j]; 저Bar[j+1] = 저Bar[j]; } 고[1] = 기준고; 고Bar[1] = 기준고Bar; 저[1] = 기준저; 저Bar[1] = 기준저Bar; 기준고 = H; 기준고Bar = 0; 기준저 = L; 기준저Bar = 0; If 저[2] > 저[1] Then 색깔 = 파랑; plot1(저[1],"Zigzag",Iff(색깔==빨강,RED,BLUE)); If 고[2] < 고[1] Then 색깔 = 빨강; 이중파동 = 고[1]; } If 추세[1] == 하락 && 추세 == 상승 Then { For j = 18 DownTo 1 { 저[j+1] = 저[j]; 저Bar[j+1] = 저Bar[j]; } 저[1] = 기준저; 저Bar[1] = 기준저Bar; 기준저 = L; 기준저Bar = 0; 기준고 = H; 기준고Bar = 0; If 저[2] > 저[1] Then 색깔 = 파랑; If 이중파동[1] > 0 Then 이중파동 = 저[1]; Else plot1(저[1],"Zigzag",Iff(색깔==빨강,RED,BLUE)); } If 추세[1] == 상승 && 추세 == 상승 && 저[1] > 기준저 && 기준저 * (1 + (상승률/100)) < L Then { For j = 18 DownTo 1 { 고[j+1] = 고[j]; 고Bar[j+1] = 고Bar[j]; 저[j+1] = 저[j]; 저Bar[j+1] = 저Bar[j]; } 고[1] = 기준고; 고Bar[1] = 기준고Bar; 저[1] = 기준저; 저Bar[1] = 기준저Bar; 기준저 = L; 기준저Bar = 0; 기준고 = H; 기준고Bar = 0; If 고[2] < 고[1] Then 색깔 = 빨강; plot1(고[1],"Zigzag",Iff(색깔==빨강,RED,BLUE)); If 저[2] > 저[1] Then 색깔 = 파랑; 이중파동 = 저[1]; } If 추세 == 양방향 Then { For j = 18 DownTo 1 { 고[j+1] = 고[j]; 고Bar[j+1] = 고Bar[j]; 저[j+1] = 저[j]; 저Bar[j+1] = 저Bar[j]; } 고[1] = 기준고; 고Bar[1] = 기준고Bar; 저[1] = 기준저; 저Bar[1] = 기준저Bar; 기준고 = H; 기준고Bar = 0; 기준저 = L; 기준저Bar = 0; 추세 = 추세[1]; If 추세[1] == 상승 Then { If 고[2] < 고[1] Then 색깔 = 빨강; Plot1(고[1],"Zigzag",Iff(색깔==빨강,RED,BLUE)); If 저[2] > 저[1] Then 색깔 = 파랑; 이중파동 = 저[1]; } Else { If 저[2] > 저[1] Then 색깔 = 파랑; Plot1(저[1],"Zigzag",Iff(색깔==빨강,RED,BLUE)); If 고[2] < 고[1] Then 색깔 = 빨강; 이중파동 = 고[1]; } } #==========================================# # 마무리 #==========================================# If LastBarOnChart == 1 && 기준고Bar > 0 && 기준저Bar > 0 Then { If 추세 == 상승 Then { If 고[1] < 기준고 Then 색깔 = 빨강; Plot1(기준고,"Zigzag",Iff(색깔==빨강,RED,BLUE)); } Else { If 저[1] > 기준저 Then 색깔 = 파랑; Plot1(기준저,"Zigzag",Iff(색깔==빨강,RED,BLUE)); } } 위 식에서 색깔과 관계없이 전 저점보다 저점이 높은 파동이 나오고 전 고점 돌파시 매수 진입합니다.(고가 기준) 매수 진입후 저점 파동 이탈시 매수 청산합니다.(저가기준) 반대로 색깔과 관계없이 전 고점보다 고점이 낮은 파동이 나오고 전 저점 이탈시 매도 진입합니다.(저가 기준) 매도 진입후 고점 파동 돌파시 매도 청산합니다.(고가 기준) 모두 ATSTOP으로 부탁드립니다. 감사합니다.
프로필 이미지
비츠로
2013-04-05
294
글번호 61707
시스템
답변완료

문의드립니다.

#==========================================# # 지표명 : 지그재그차트 # 작성자 : 수식지왕 # 블로그 : http://yahoosir.blog.me #==========================================# Input:상승률(1),하락률(1); Var:j(0),상승(100),하락(-100),양방향(2),색깔(0),파랑(-1),빨강(1), 기준고(0),기준저(0),기준고Bar(0),기준저Bar(0),추세(0),이중파동(0); Array:고[20](0),저[20](0),고Bar[20](0),저Bar[20](0); #==========================================# # 전고점,전저점 index 증가 #==========================================# For j = 1 To 19 { 저Bar[j] = 저Bar[j] + 1; 고Bar[j] = 고Bar[j] + 1; } #==========================================# # 이중파동 처리 #==========================================# If 이중파동 > 0 Then { Plot1(이중파동,"Zigzag",Iff(색깔==빨강,RED,BLUE)); 이중파동 = 0; } #==========================================# # 최근 고,저 갱신 #==========================================# If 기준고 <= H || 기준고 == 0 || IsNaN(기준고) == True Then { 기준고 = H; 기준고Bar = 0; } Else 기준고Bar = 기준고Bar + 1; If 기준저 >= L || 기준저 == 0 || IsNaN(기준저) == True Then { 기준저 = L; 기준저Bar = 0; } Else 기준저Bar = 기준저Bar + 1; #==========================================# # 추세방향 결정 #==========================================# If 기준고 * (1 - (하락률/100)) > H && 기준저 * (1 + (상승률/100)) < L Then { 추세 = Iff(기준고Bar==기준저Bar,양방향,Iff(기준고Bar>기준저Bar,상승,하락)); } Else If 기준고 * (1 - (하락률/100)) > H Then 추세 = 하락; Else If 기준저 * (1 + (상승률/100)) < L Then 추세 = 상승; #==========================================# # 추세변화에 따른 변곡점 처리 #==========================================# If 추세[1] == 상승 && 추세 == 하락 Then { For j = 18 DownTo 1 { 고[j+1] = 고[j]; 고Bar[j+1] = 고Bar[j]; } 고[1] = 기준고; 고Bar[1] = 기준고Bar; 기준고 = H; 기준고Bar = 0; 기준저 = L; 기준저Bar = 0; If 고[2] < 고[1] Then 색깔 = 빨강; If 이중파동[1] > 0 Then 이중파동 = 고[1]; Else plot1(고[1],"Zigzag",Iff(색깔==빨강,RED,BLUE)); } If 추세[1] == 하락 && 추세 == 하락 && 고[1] < 기준고 && 기준고 * (1 - (하락률/100)) > H Then { For j = 18 DownTo 1 { 고[j+1] = 고[j]; 고Bar[j+1] = 고Bar[j]; 저[j+1] = 저[j]; 저Bar[j+1] = 저Bar[j]; } 고[1] = 기준고; 고Bar[1] = 기준고Bar; 저[1] = 기준저; 저Bar[1] = 기준저Bar; 기준고 = H; 기준고Bar = 0; 기준저 = L; 기준저Bar = 0; If 저[2] > 저[1] Then 색깔 = 파랑; plot1(저[1],"Zigzag",Iff(색깔==빨강,RED,BLUE)); If 고[2] < 고[1] Then 색깔 = 빨강; 이중파동 = 고[1]; } If 추세[1] == 하락 && 추세 == 상승 Then { For j = 18 DownTo 1 { 저[j+1] = 저[j]; 저Bar[j+1] = 저Bar[j]; } 저[1] = 기준저; 저Bar[1] = 기준저Bar; 기준저 = L; 기준저Bar = 0; 기준고 = H; 기준고Bar = 0; If 저[2] > 저[1] Then 색깔 = 파랑; If 이중파동[1] > 0 Then 이중파동 = 저[1]; Else plot1(저[1],"Zigzag",Iff(색깔==빨강,RED,BLUE)); } If 추세[1] == 상승 && 추세 == 상승 && 저[1] > 기준저 && 기준저 * (1 + (상승률/100)) < L Then { For j = 18 DownTo 1 { 고[j+1] = 고[j]; 고Bar[j+1] = 고Bar[j]; 저[j+1] = 저[j]; 저Bar[j+1] = 저Bar[j]; } 고[1] = 기준고; 고Bar[1] = 기준고Bar; 저[1] = 기준저; 저Bar[1] = 기준저Bar; 기준저 = L; 기준저Bar = 0; 기준고 = H; 기준고Bar = 0; If 고[2] < 고[1] Then 색깔 = 빨강; plot1(고[1],"Zigzag",Iff(색깔==빨강,RED,BLUE)); If 저[2] > 저[1] Then 색깔 = 파랑; 이중파동 = 저[1]; } If 추세 == 양방향 Then { For j = 18 DownTo 1 { 고[j+1] = 고[j]; 고Bar[j+1] = 고Bar[j]; 저[j+1] = 저[j]; 저Bar[j+1] = 저Bar[j]; } 고[1] = 기준고; 고Bar[1] = 기준고Bar; 저[1] = 기준저; 저Bar[1] = 기준저Bar; 기준고 = H; 기준고Bar = 0; 기준저 = L; 기준저Bar = 0; 추세 = 추세[1]; If 추세[1] == 상승 Then { If 고[2] < 고[1] Then 색깔 = 빨강; Plot1(고[1],"Zigzag",Iff(색깔==빨강,RED,BLUE)); If 저[2] > 저[1] Then 색깔 = 파랑; 이중파동 = 저[1]; } Else { If 저[2] > 저[1] Then 색깔 = 파랑; Plot1(저[1],"Zigzag",Iff(색깔==빨강,RED,BLUE)); If 고[2] < 고[1] Then 색깔 = 빨강; 이중파동 = 고[1]; } } #==========================================# # 마무리 #==========================================# If LastBarOnChart == 1 && 기준고Bar > 0 && 기준저Bar > 0 Then { If 추세 == 상승 Then { If 고[1] < 기준고 Then 색깔 = 빨강; Plot1(기준고,"Zigzag",Iff(색깔==빨강,RED,BLUE)); } Else { If 저[1] > 기준저 Then 색깔 = 파랑; Plot1(기준저,"Zigzag",Iff(색깔==빨강,RED,BLUE)); } } 위 지표식에서 상승률과 하락률을 2로하는 지표식을 하나 더 넣고 싶습니다. 한 지표식 안에 2개의 파동식이 나오는 식 입니다. Plot2가 생기는 식 부탁드립니다.
프로필 이미지
비츠로
2013-04-05
346
글번호 61706
지표
답변완료

문의

이평선을 만들때 종가를 기준으로 만들 수도 있고 저가를 기준으로 만드는 방법도 있고 고가를 기준으로 만드는 방법이있습니다. 29548문의 에서 forecast선이 나오게 할때도 고가를 기준으로 한것과 저가를 기준으로 한것을 알고 싶습니다. 가능한지요
프로필 이미지
레전드
2013-04-05
310
글번호 61705
지표
답변완료

종목코드나 종목명을 리턴하는 함수

예스스팟 기능까지 추가된 4.0 버전에서 아직도 종목코드나 종목명 리턴함수는 제공되지 않는 이유가 뭔지 아이러니 합니다. 종목대 종목의 지표결과등을 비교하는데는 반듯이 필요한 함수임에도 지금까지 많은 회원들의 문의에 " 제공하지 않습니다 " 라는 답변 밖에는 없었습니다. 어떤 HTS 에도 종목코드와 종목명은 기본적인 함수라는 것은 아실 터인데 말씀대로 제공하지 않는 것이지 할 수 없는 내용이거나 어려운 함수는 아닐 것입니다. 이외에도 시가총액 계산도 어떤 HTS 차트에서든 다 제공되는 기본함수라는 것을 알고 계실터이나 역시 발생된 총주식수량 함수등이 없는 것도 이유를 알 수 없습니다. 못하거나, 안만드는 것이 아니고 "제공"하지 않을 뿐이라고 말씀하셨고 그렇다면 그에 타당한 이유는 밝혀 주셨으면 합니다. YT의 우수함과 비전문가라도 쉽게 접할 수 있는 것은 사실입니다. 답변도 성실하게 잘 해 주시고 저는 만족하며 감사히 사용하고는 있으나 지금까지 건의 드린 내용들은 전부 개발자에게 전달해 준다는 말만 들었을뿐 지금까지도 개선된 것은 없었습니다. 다시 한 번 부탁을 드립니다. 종목코드와 종목명 리턴 함수를 공개해 주십시요...
프로필 이미지
최강자
2013-04-05
329
글번호 61704
지표
답변완료

문의

안녕하세요? 틱차트에서 분봉거래량을 구현할 수 있는지요? 예들어 5분차트에서 거래량 5000천개이상 나오면 틱차트에 구현이 가능한지 부탁 합니다. (라인같은것으로, 혹은 강조기능) 감사합니다.
프로필 이미지
키오
2013-04-05
274
글번호 61703
지표