커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수식수정부탁드립니다================

그림올리는 방법을 몰라 첨부로 올립니다 그림처럼 크로스될때 점찍고 그위에 텍스트로 그때지수 표시하고 그봉에서만 소리나게해주세요 감사합니다 ============================================================================= input:틱배수(10), // 기존 개념 point 대신에 1호가 단위에 몇 배수를 곱한 값을 사용키로 했다. Figure(3); Var:j(0),k(0),n(0),pnt(0),v1(0),v2(0),v3(0),v4(0), Col(0), // 칼럼(열)수를 증가하면서 관리한다. LowLimit(0), // csv 파일 출력시 불필요한 라인을 줄이기 위해 최저값을 계산 출력개수(50); // 아래 xo[200,100]으로 선언했기 때문에 100칼럼까지 출력이 가능하지만 // 최근 상황만 파악하기 위해 50으로 줄였다. // 더 많은 칼럼을 출력하고자 한다면 xo[200,100]에서 100을 더 큰 수로 바꿔준다. Array:고[100](0),저[100](0),구분[100](""), // 100개의 칼럼을 선언 price[200](0), // 200개의 행 xo[200,100](""); // 엑셀에서 cells(row,column)과 같은 개념 #=====================================================# # P&F 계산 #=====================================================# pnt = PriceScale * 틱배수; // P&F 는 종가를 기반으로 계산한다. 변형해서 다르게 계산해도 무방 // TickSize()는 사용자함수임. 아래 포스트에 있음 // http://yahoosir.blog.me/220651602149 if 구분[0] == "" then { if 고[0] == 0 then 고[0] = C; if 저[0] == 0 then 저[0] = C; Col = 1; if 저[0] + Figure * pnt <= C then { 구분[0] = "X"; 고[0] = 저[0] + int( ( C - 저[0] ) / pnt ) * pnt; } else if 고[0] - Figure * pnt >= C then { 구분[0] = "O"; 저[0] = 고[0] - int( ( 고[0] - C ) / pnt ) * pnt; } } else if 구분[0] == "X" then { if 고[0] - Figure * pnt >= C then { Col = Col + 1; for j = 98 downto 0 { 고[j+1] = 고[j]; 저[j+1] = 저[j]; 구분[j+1] = 구분[j]; } 구분[0] = "O"; 고[0] = 고[1] - pnt; 저[0] = 고[1] - int( ( 고[1] - C ) / pnt ) * pnt; } else if 고[0] + pnt <= C then { 고[0] = 고[0] + int( ( C - 고[0] ) / pnt ) * pnt; } } else if 구분[0] == "O" then { if 저[0] + Figure * pnt <= C then { Col = Col + 1; for j = 98 downto 0 { 고[j+1] = 고[j]; 저[j+1] = 저[j]; 구분[j+1] = 구분[j]; } 구분[0] = "X"; 고[0] = 저[1] + int( ( C - 저[1] ) / pnt ) * pnt; 저[0] = 저[1] + pnt; } else if 저[0] - pnt >= C then { 저[0] = 저[0] - int( ( 저[0] - C ) / pnt ) * pnt; } } Plot1( iff( 구분[0] == "X", 고[0], 저[0] ) ); // _Plot1 > _Plot2 일때 와 _Plot1 < _Plot2 일때 각각 채워넣기를 한다. plot2( iff( 구분[0] == "X", 저[0], 고[0] ) ); #=====================================================# # 엑셀용 자료 가공 #=====================================================# if lastbaronchart() then { price[1] = 고[0]; LowLimit = 저[0]; for k = 1 to 출력개수 // 50개 열까지만 출력하도록 하였으므로 이 부분은 취향에 맞춰 수정한다. { price[1] = max( price[1], 고[k] ); if 저[k] > 0 then LowLimit = min( LowLimit, 저[k] ); } n = 199; for k = 2 to 199 { price[k] = price[k-1] - ( PriceScale * 틱배수); if price[k] < LowLimit then { n = k - 1; k = 200; } } col = min( col, 출력개수 ); for j = Col - 1 DownTo 0 { for k = 1 to n { if 고[j] >= price[k] and price[k] >= 저[j] then { xo[k,Col-j] = 구분[j]; } } } for k = 1 to n { Print(SymbolName+"_PnF.csv",",%.2f,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s" ,price[k],xo[k,1],xo[k,2],xo[k,3],xo[k,4],xo[k,5],xo[k,6],xo[k,7],xo[k,8],xo[k,9],xo[k,10] ,xo[k,11],xo[k,12],xo[k,13],xo[k,14],xo[k,15],xo[k,16],xo[k,17],xo[k,18],xo[k,19],xo[k,20] ,xo[k,21],xo[k,22],xo[k,23],xo[k,24],xo[k,25],xo[k,26],xo[k,27],xo[k,28],xo[k,29],xo[k,30] ,xo[k,31],xo[k,32],xo[k,33],xo[k,34],xo[k,35],xo[k,36],xo[k,37],xo[k,38],xo[k,39],xo[k,40] ,xo[k,41],xo[k,42],xo[k,43],xo[k,44],xo[k,45],xo[k,46],xo[k,47],xo[k,48],xo[k,49],xo[k,50] ); } }
프로필 이미지
leekss1
2016-10-02
431
글번호 102414
지표
답변완료

문의드립니다.

안녕하세요.. PercentProfit 수식이 있는데요. 쓰임세가 어떻게 되는지 조언좀 부탁드립니다. 예를들면 차트내에서 매수거래가 승률이 매도거래보다 많으면 매도거래를 안하게 만들수도 있나요?? 혹은 차트에 승률이 실시간으로 표시되게 할수도 있는지 궁금합니다.
프로필 이미지
율담
2016-10-01
143
글번호 102413
사용자 함수
답변완료

문의드립니다.

수고많으십니다. 주식용입니다. 전제조건 (1) RSI < 30 진입 및 이탈 (2) macd > 0 (기본 12,26,9 : 숫자는 바꿀수있게 변수처리) 진입 (1),(2)조건 동시만족 또는 (1)조건후 20봉이내에(2)조건 만족한 상태에서 스토케스틱(5,3,3: 변수처리) > 50 또는 rsi(14,9: 변수처리)> 50 이면 진입 진입수량 : 1000주 진입회수 : 3회 허용 (재진입시 진입전제조건 다시충족필요) 진입시간제한 : 14시이후에는 진입금지 청산 * 손절 : 5% * 익절 : 10% 또는 트레일링스톱(고가대비 2%) * 당일청산 : 장종료시 강제청산 미리 감사드립니다.
프로필 이미지
dayun01
2016-10-01
170
글번호 102411
시스템
답변완료

시스템 수식 문의드립니다

선물거래 시스템을 만드려고 합니다. 360이평선을 기준으로 한 밴드매매인데 다양한조건에서 사고 파는 코딩을 어떻게 해야 하는지 모르겠습니다. Input : Period1(360); var1 = ma(C,Period1)+2; var2 = ma(C,Period1)-2; var3 = ma(C,Period1)+1.5; var4 = ma(C,Period1)-1.5; var5 = ma(C,Period1); 총 5개의 선이 있습니다. 360이평선,+-2, +-1.5 전략1 360이평선+1.5에 C가 도달하면 과매수인것으로 판단하여 매도 손절은 C가 360이평선+2에 도달했을때 익절은 C가 360이평선에 도달했을때 360이평선-1.5에 C가 도달하면 과매도인것으로 판단하여 매수 손절은 C가 360이평선-2에 도달했을때 익절은 C가 360이평선에 도달했을때 전략2 360이평선+2에 C가 도달하면 매수추세인 것으로 판단하여 매수 청산은 C가 360이평선에 도달했을때 360이평선-2에 C가 도달하면 매도추세인 것으로 판단하여 매도 청산은 C가 360이평선에 도달했을때 전략3 전략1과 전략2는 독립적이기 때문에 동시에 사용해도 됩니다. 전략1과 전략2를 동시해 사용하고 싶습니다 전략1,2,3 을 수식으로 표현하고 싶습니다. 도와주시면 감사하겠습니다.
프로필 이미지
마이웨이
2016-09-30
160
글번호 102410
시스템

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

프로필 이미지
qha71
2016-09-30
38
글번호 102409
지표
답변완료

리스크 관리에 대한 시스템을 만들고 싶습니다.

데일리 매매이며 매수,매도중 한번진입 한번청산이고, 매매가 없는 날도 있습니다. 누적손실 횟수가 6회이상 이거나, 총누적 손실 합계가 4.5pt 이상이면, 매수매도 진입신호가 발생하지 않다가, 가상 진입시 수익청산 되는 날이 발생하면, 다음날부터 정상적으로 매매가 되는 시스템을 알려주세요. 부탁드립니다.
프로필 이미지
화려한인생
2016-09-30
164
글번호 102408
시스템
답변완료

지표를 거꾸로

1. bpdl hilo 지표를 정방향과 역방향을 함께 보고싶은데 -를 적용하니 수치 차이때문에 직선처럼 보여요 부탁드립니다 2. 키움 수식중 highestsince와 lowestsince, valuewhen을 사용자함수로 저장하고 싶은데 수식과 방법도 부탁합니다 답변은 꼭 메일로 부탁드려요 미리 감사합니다~
프로필 이미지
티거야
2016-09-30
228
글번호 102407
지표
답변완료

신호관련 문의 (재문의)

아래에 주신 답변에 대해 대책으로 이런방법은 가능한지 여쭙고 싶습니다. 발생된 신호를 지우는 기능이 없다면, "■" 텍스트출력을 발생신호 위치에 덮어씌워서 가릴수 있는지 문의 드립니다. 감사합니다. ============================================================================== 안녕하세요 예스스탁입니다. 1 발생된 신호를 지우는 기능은 없습니다. 도움을 드리지 못해 죄송합니다. 2 예 시간으로 먼저 발생한 신호로 처리됩니다. 즐거운 하루되세요 > labio 님이 쓴 글입니다. > 제목 : Re : 수식 문의.. > 한가지 더 여쭈어보고 싶은게 있습니다. 진입신호가 완성되고 나서, 그다음봉에 수익과 손절의 청산신호가 모두 발생하게 되면 시간 베이스로 자동으로 우선 발생한 신호부터 청산처리가 되는건가요? 아니면 따로 시간에 대한 함수를 작성해야 하는건가요? > labio 님이 쓴 글입니다. > 제목 : 수식 문의.. > 매번 친절한 답변 너무 감사드립니다.. 혹시 수식으로 진입하고나서 청산 되면, 진입 및 청산 신호 (화살표)를 화면에서 지우도록 표현이 가능한지요?
프로필 이미지
labio
2016-09-30
165
글번호 102404
시스템
답변완료

수식 부탁드립니다

아래와 같이 조건을 많이 완화하더라도 수식 작성이 어렵나요? 시간은 오래 걸려도 괜찮은데요. 부탁드립니다 1. 당일 시가보다 현재가가 시가대비 1P 이상 상승 후 나오는 매수신호 1회 진입 금지 - 현재가가 시가보다 1P 이상 상승 후 매도신호 발생 : 매도 진입 당일 시가보다 현재가가 시가대비 1P 이상 하락 후 나오는 매도신호 1회까지 진입 금지 - 현재가가 시가보다 1P 이상 하락 후 매수신호 발생 : 매수 진입 3. 현재가를 기준으로 당일 최저가 대비 현재가가 1P 이상 상승 후 나오는 매수신호 1회 진입 금지 - 현재가가 당일 최저가 대비 1P 이상 상승 후 매도신호 발생 : 매도 진입 현재가를 기준으로 당일 최고가 대비 현재가가 1P 이상 하락 후 나오는 매도신호 1회 금지 - 현재가가 당일 최고가 대비 1P 이상 하락 후 매수신호 발생 : 매수 진입
프로필 이미지
미송
2016-09-30
153
글번호 102402
시스템