커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

부탁드립니다

언제나 감사를 드립니다 제가 아주 초보이면서 예스스탁 새내기 입니다 잘 부탁 드립니다
프로필 이미지
유로정복자
2019-06-19
272
글번호 129554
시스템
답변완료

검색식 부탁드립니다.

안녕하세요. 검색수식 좀 부탁드립니다. 수식에서는 반드시 input : ndate(20180908); 를 넣어서 특정 날짜 변수를 적용부탁드립니다. 현재봉부터 2봉전까지의 최저가를 aa라하고 3봉전부터 24봉전까지의 최저가를 bb라 하고 25봉전부터 47봉전까지의 최저가를 cc라하고 48봉전부터 95봉전까지의 최저가 를 dd라 하고 96봉전부터 143봉전까지의 최저가를 ee라 하고 144봉전부터 191봉전까지의 최저가를 ff라하고 192봉전부터 239봉전까지의 최저가를 gg라 한다면 bb<=aa 커야하고 최근 3봉동안의 평균 거래대금이 3억이상이면서 C[3]<cc and aa>cc 또는 C[3]>dd and aa<dd 또는 C[3]<ee and aa>ee 또는 C[3]>ff and aa<ff 또는 C[3]>gg and aa<gg 인 종목을 검색하는 수식 부탁드립니다. 이때 반드시 상장이후 봉이 239봉 이상 형성된 종목만 검색이 되고 그 이하 봉만 형성된 신규 종목은 검색이 안되는 현상이 없도록 신경써 주세요. (예전에 수식 작성때 그런 적이 있어서요) 예전에 59995 번과 비슷한 방식의 수식입니다. 예를 들어 상장된지 25봉이상이고 239봉이하인 종목도 위 수식이 만족하면 반드시 검색이 되어야 합니다. 잘 부탁드립니다.
프로필 이미지
강태공3
2019-06-18
316
글번호 129553
종목검색
답변완료

문의드립니다

Stochastics Slow 지표 지수로 수식 부탁드립니다
프로필 이미지
해피슈
2019-06-18
279
글번호 129550
지표
답변완료

안녕하세요

안녕하세요. 수고 많으십니다. 1) 아래수식 보완 부탁드립니다. 1 이동평균선이 중심선의 종가를 아래로 갈때는 중심선은 파랑색 선으로 표시하고. 1 이동평군선이 중심선의 종가를 위로 갈때는 중심선은 빨강색선 으로 표시 하고저 합니다 아래 수식을 적용해보았으나 잘 안되네요. var1 = ma(C,1 ); var2 = ma(C,20); Plot1(Sma1, "이동평균1"); Plot2(Sma2, "이동평균2"); plot3((HH+LL)/2,"중심값" ,iff(var1 > HH+LL, RED ,BLUE)); plot4(0,"하단값"); 2) 위수식 강조식이 가능한가요. 1 이동평균선이 중심선의 종가를 아래로 갈때는 캔들의 색이 파랑색 캔들로 표시하고. 1 이동평군선이 중심선의 종가를 위로 갈때는 캔들의 색이 빨강색 캔들로 표시가 가능 하시면 부탁 드립니다. 감사 합니다 수고 하세요
프로필 이미지
탐라
2019-06-19
292
글번호 129549
지표
답변완료

부탁합니다

주식캔들차트에서 시가대비 10%이상 또는 20%이상 오를때 단일가 거래로 스톱이되는데 캔들창에 9:00정시 시작가대비 10% 또는 20% 금액선이 수평으로 표기되면 매매하는데 도움이될거같읍니다. 부탁합니다 ***당일 변동성완화장치조건이 캔들차트에 라인으로 표시되면 좋겠습니다*** *** 2분봉 캔들 차트에 적용하려합니다***
프로필 이미지
만호
2019-06-18
297
글번호 129548
지표
답변완료

재문의

청산 식만 보내면 알 수가 없군요 .. 주로 매수 추적, 매수 손익 분기 등등 이런것으로 청산 하려 하는데 대부분 스탑스트레일잉 또는 스파이크 청산2로만 나오네요 뭐가 잘 못 되었을 까요 ? input:최소변화폭(5); var:j(0),벽돌크기(0),벽돌개수(0),방향(0),상승(1),하락(-1),Sum(0),CSum(0); array:고[10](0),저[10](0),렌코[500](0); if index == 0 then { 벽돌크기 = 최소변화폭; 고[0] = C; 저[0] = C; 렌코[0] = C; } #==========================================# # 렌코 계산 #==========================================# if 방향 == 0 then { if 저[0] - 벽돌크기 >= C then { 벽돌개수 = int((저[0]-C)/벽돌크기); 저[0] = 저[0] - 벽돌크기 * 벽돌개수; 방향 = 하락; for j = 499 downto 벽돌개수 { 렌코[j] = 렌코[j-벽돌개수]; } for j = 벽돌개수 - 1 downto 0 { 렌코[j] = 렌코[j+1] - 벽돌크기; } } else if 고[0] + 벽돌크기 <= C then { 벽돌개수 = int((C-고[0])/벽돌크기); 고[0] = 고[0] + 벽돌크기 * 벽돌개수; 방향 = 상승; for j = 499 downto 벽돌개수 { 렌코[j] = 렌코[j-벽돌개수]; } for j = 벽돌개수 - 1 downto 0 { 렌코[j] = 렌코[j+1] + 벽돌크기; } } } else if 방향 == 하락 then { if 저[0] - 벽돌크기 >= C then { 벽돌개수 = int((저[0]-C)/벽돌크기); 저[0] = 저[0] - 벽돌크기 * 벽돌개수; for j = 499 downto 벽돌개수 { 렌코[j] = 렌코[j-벽돌개수]; } for j = 벽돌개수 - 1 downto 0 { 렌코[j] = 렌코[j+1] - 벽돌크기; } } if 저[0] + 2*벽돌크기 <= C then { for j = 8 downto 0 { 고[j+1] = 고[j]; } 방향 = 상승; 벽돌개수 = int((C-저[0])/벽돌크기); 고[0] = 저[0] + 벽돌크기 * 벽돌개수; for j = 499 downto (벽돌개수-1) { 렌코[j] = 렌코[j-(벽돌개수-1)]; } 렌코[벽돌개수-2] = 렌코[벽돌개수-1] + 2*벽돌크기; if 벽돌개수 > 2 then { for j = 벽돌개수 - 3 downto 0 { 렌코[j] = 렌코[j+1] + 벽돌크기; } } } } else if 방향 == 상승 then { if 고[0] + 벽돌크기 <= C then { 벽돌개수 = int((C-고[0])/벽돌크기); 고[0] = 고[0] + 벽돌크기 * 벽돌개수; for j = 499 downto 벽돌개수 { 렌코[j] = 렌코[j-벽돌개수]; } for j = 벽돌개수 - 1 downto 0 { 렌코[j] = 렌코[j+1] + 벽돌크기; } } if 고[0] - 3*벽돌크기 >= C then { for j = 8 downto 0 { 저[j+1] = 저[j]; } 방향 = 하락; 벽돌개수 = int((고[0]-C)/벽돌크기); 저[0] = 고[0] - 벽돌크기 * 벽돌개수; for j = 499 downto (벽돌개수-1) { 렌코[j] = 렌코[j-(벽돌개수-1)]; } 렌코[벽돌개수-2] = 렌코[벽돌개수-1] - 2*벽돌크기; if 벽돌개수 > 2 then { for j = 벽돌개수 - 3 downto 0 { 렌코[j] = 렌코[j+1] - 벽돌크기; } } } } if 방향==상승 and 방향[1]==하락 then Buy(); if 방향==하락 and 방향[1]==상승 then Sell(); Input : BuyATRP(46),SellATRP(6),BuyATRS1(2.5),BuyATRS2(4.0),BuyATRS3(4.0),SellATRS1(3.5),SellATRS2(6.0),SellATRS3(6.0); Input : BuyStoploss(12), SellStoploss(6), BuyTrailing(5), BuyFloor(20), SellTrailing(5),SellFloor(8.5); Input:break(1.9),level(0.3),big(8),sbreak(1.9),slevel(0.3),sbig(8); var:진입후최고가(0),진입후최저가(0); If MarketPosition == 1 Then { 진입후최고가 = Highest(H,BarsSinceEntry + 1); ExitLong("매수추적",AtStop,진입후최고가 - ATR(BuyATRP) * BuyATRS1); ExitLong("매수변동성",AtStop,C - ATR(BuyATRP) * BuyATRS2); If 진입후최고가 >= Entryprice + ATR(BuyATRP) * break Then { ExitLong("매수손익분기",AtStop,Entryprice + ATR(BuyATRP) * level); ExitLong("매수추적1",AtStop,진입후최고가 - ATR(BuyATRP) * BuyATRS3); } If 진입후최고가 >= Entryprice + ATR(BuyATRP) * big Then { ExitLong("매수초과수익",AtStop,Lowest(L,3)); } SetStopLoss(BuyStoploss, PointStop); SetStopTrailing(BuyTrailing,BuyFloor,PointStop); } If MarketPosition == -1 Then { 진입후최저가 = Lowest(L,BarsSinceEntry + 1); ExitShort("매도추적",AtStop,진입후최저가 + ATR(SellATRP) * SellATRS1); ExitShort("매도변동성",AtStop,C + ATR(SellATRP) * SellATRS2); If 진입후최저가 <= Entryprice - ATR(SellATRP) * sbreak Then { ExitShort("매도손익분기",AtStop,Entryprice - ATR(SellATRP) * slevel); ExitShort("매도추적1",AtStop,진입후최저가 + ATR(SellATRP) * SellATRS3); } If 진입후최저가 <= Entryprice - ATR(SellATRP) * sbig Then { ExitShort("매도초과수익",AtStop,Highest(H,3)); } SetStopLoss(SellStoploss, PointStop); SetStopTrailing(SellTrailing,SellFloor,PointStop); } If MarketPosition == 0 Then { // 無포일 때 손절 설정을 clear 해야 만 오류가 안 생김 SetStopLoss(0, PointStop); SetStopTrailing(0, 0, PointStop); } If MarketPosition == 1 Then ExitLong("스파이크청산-1", AtLimit, C + ATR(20) * 7); // 상승돌파 시 매수청산 If MarketPosition == -1 Then Exitshort("스파이크청산+1", AtLimit, C - ATR(20) * 7); // 상승돌파 시 매도청산 Var:SpikeHigh(0), spikelow(0); If MarketPosition == 0 Then { // 무포지션일때 SpikeHigh = 10; // 초기화 Spikelow = 10; // 초기화 Condition1 = false; } If MarketPosition == 1 Then { // 매수포지션일 때 If !Condition1 and // 스파이크 미발생 H > C[1] + ATR(20) * 7 Then { // 전봉 종가보다 7 * ATR 이상 상승 SpikeHigh = H; // 스파이크 고점 설정 Condition1 = true; // 스파이크 발생 } If Condition1 Then { // 스파이크 발생 후 If SpikeHigh < H then SpikeHigh = H; // 신규 고점 나오면 갱신 ExitLong("스파이크청산-2", AtStop, SpikeHigh - ATR(20) * 2); //추적청산처럼 꼭지 찍고 내려올 때 } } If MarketPosition == -1 Then { // 매수포지션일 때 If !Condition1 and // 스파이크 미발생 L < C[1] + ATR(20) * 7 Then { // 전봉 종가보다 7 * ATR 이상 상승 SpikeHigh = L; // 스파이크 고점 설정 Condition1 = true; // 스파이크 발생 } If Condition1 Then { // 스파이크 발생 후 If Spikelow > H then SpikeHigh = L; // 신규 고점 나오면 갱신 Exitshort("스파이크low청산-2", AtStop, Spikelow + ATR(20) * 2); } }
프로필 이미지
구다이전설
2019-06-18
274
글번호 129547
시스템
답변완료

문의드립니다.

특정 선물지수에 수평선을 긋습니다. (특정 선물지수는 변수 처리해서 자유롭게 입력 할 수 있게 해주세요) 5이평이 그 수평선을 하향 돌파 했다가 다시 상향 돌파 하면 매수 5이평이 그 수평선을 상향 돌파 했다가 다시 하향 돌파 하면 매도 감사합니다
프로필 이미지
회원
2019-06-18
272
글번호 129543
시스템
답변완료

부탁합니다

브이아이 라인을 캔들지표에 자동으로 10% 20% 를표기할수있는지요 식좀부탁합니다
프로필 이미지
만호
2019-06-18
250
글번호 129538
강조
답변완료

타 분봉 지표식 참조

일전에 타 분봉의 ADX지표를 구현하기 힘드시다고 하셨는데, 즉 15분봉으로 매매하면서 90분봉의 ADX지표를 수식에 넣으려고하는 것은 힘들다고 하셨느데, 그러면 챠트에서 보조챠트를 밑에 띄울수가 있던데, 이렇게 보조챠트를 밑에 띄우면 15분봉 시스템식에서 90분봉의 ADX지표를 수식에 넣을 수는 없는지 확인 부탁드립니다. 가능하다면 보조챠트에 있는 ADX지표식을 부탁드립니다
프로필 이미지
뽄때
2019-06-18
290
글번호 129530
시스템