커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

변동폭돌파 재질문

> 예스스탁 님이 쓴 글입니다. > 제목 : Re : 변동폭 돌파 > 안녕하세요 예스스탁입니다. 평균변동폭 n개의 80%돌파시 진입은 어떤 가격기준인지 모르겠습니다. 청산식만 올려드립니다. 변동폭은 atr을 이용했습니다. input : n(20),X(10); var : atrv(0); var1 = atr(n); if MarketPosition == 1 Then{ ExitLong("bx1",AtStop,EntryPrice-atrv[BarsSinceEntry]*3); #1포인트 이하 수익일때는 최고가 -atr*3 if highest(H,BarsSinceEntry) < EntryPrice+1 Then ExitLong("btr1",AtStop,highest(h,BarsSinceEntry)-Atrv*3); #1포인트 이상 수익일때는 최고가-atr*1.5 if highest(H,BarsSinceEntry) >= EntryPrice+1 Then ExitLong("btr2",AtStop,highest(h,BarsSinceEntry)-Atrv*1.5); } if MarketPosition == -1 Then{ ExitShort("bx1",AtStop,EntryPrice+atrv[BarsSinceEntry]*3); #1포인트 이하 수익일때는 최저가 +atr*3 if Lowest(L,BarsSinceEntry) > EntryPrice-1 Then ExitShort("str1",AtStop,lowest(L,BarsSinceEntry)+atrv*3); #1포인트 이상 수익일때는 최저가 +atr*1.5 if Lowest(L,BarsSinceEntry) <= EntryPrice-1 Then ExitShort("str2",AtStop,lowest(L,BarsSinceEntry)+atrv*1.5); } #X틱 손절 SetStopLoss(PriceScale*X,PointStop); 즐거운 하루되세요 > inno33 님이 쓴 글입니다. > 제목 : 변동폭 돌파 > 평균변동폭 n개의 80%돌파시 진입이후, 초기손절 변동폭의 3배, 트레일링스탑도 평균 변동폭의 3배돌파시 스탑적용, 일정 수익 구간이후에는 변동폭의 1.5배로 트레일링 스탑 조정하는식 부탁합니다.그리고 틱으로 초기손절 적용하는 방법도요 .수고하세요 질문이 부족했네요 봉개수 기준입니다.봉개수 n개 변동폭 80% 돌파시 입니다. 아 그리고 시스템식 설정되었는 변동폭 돌파를 테스트해보면 진입은 신호 발생시 즉시 신호가 발생하는데 봉완성시로 적용하려면 어떻게 해야하나요?
프로필 이미지
inno33
2015-01-31
160
글번호 82829
시스템
답변완료

지표식 부탁드립니다.

보통 이동평균은 종가든 시가든 가격만 대상으로 계산을 한것인데요. 여기에 거래량을 포함한 평균을 얻고 싶은데 지표식을 부탁드립니다. 예를 들어 20원에서 10원으로 가격이 떨어졌을때 단순한 평균은 15원인데요, 20원에서 100주 거래되고, 10원에서 20주 거래&#46124;다면 거래량을 포함해서 생각해보면 18.3333원 이렇게 된다고 생각하는 ..... 이 생각이 안틀리죠? 현물에서 양봉나올때 거래량이 많이 나오고 흔히 말하는 눌림(조정)줄때 거래량이 줄어든 상태면 매수세력이 아직 그대로 있으니 지켜봐야한다 뭐 이런말들을 많이 하는데 거래량을 포함한 이평값을 알면 이런 상황을 좀더 쉽게 파악하지 않을까 싶어서 문의드려봅니다. 데이트레이더용으로 당일것만 나오게하는것과 특정시간 즉 3일전부터, 혹은 5일전부터 이런식으로 거래량포함 평균선이 나오게끔 부탁드립니다. 즉 과거부터 쭉 이어지는 일반적인 거래량포함 평균선과 당일 시가부터 이어지는 거래량포함 평균선, 그리고 특정일(몇일전부터) 이어지는 거래량 포함 평균선 부탁하고요. 해외선물에서도 적용하려면 일반적인 (쭉이어지는) 평균선은 상관없지만 당일부터시작하는것 또는 특정일(몇일전)부터 시작하는것을 이용하려면 시작하는시간이 국내와 틀리니 이부분은 어떻게 해야하는지도 부탁드립니다.
프로필 이미지
바쁜후니
2015-01-31
175
글번호 82828
지표
답변완료

변환 부탁드립니다!

정말로 적용해 보고 싶은 지표입니다. 에스트레이더에서 사용가능토록 변환부탁드립니다. 메일로 부탁드립니다. song7639@naver.com Name: Q-indicator Formula: m:=Input("% Scalar trend period",1,25,4); n:=Input("% Scalar noise period",1,500,250); cf:=Input("% Scalar correction factor",1,250,2); p1:=Input("First moving average periods",1,200,7); p2:=Input("Second moving average periods",1,200,15); rev:=Mov(C,p1,E)-Mov(C,p2,E); pds:=If(rev>0,1,-1); dc:=ROC(C,1,$); cpc:=If(pds<>Ref(pds,-1),0,(dc*pds) PREV); trend:=If(pds<>Ref(pds,-1),0,(cpc*(1/m)) (PREV*(1-(1/m)))); dt:=cpc-trend; noise:=cf*Sqrt(Mov(dt*dt,n,S)); trend/noise Name: B-indicator Formula: m:=Input("% Scalar trend period",1,25,4); n:=Input("% Scalar noise period",1,500,250); cf:=Input("% Scalar correction factor",1,250,2); p1:=Input("First moving average periods",1,200,7); p2:=Input("Second moving average periods",1,200,15); rev:=Mov(C,p1,E)-Mov(C,p2,E); pds:=If(rev>0,1,-1); dc:=ROC(C,1,$); cpc:=If(pds<>Ref(pds,-1),0,(dc*pds) PREV); trend:=If(pds<>Ref(pds,-1),0,(cpc*(1/m)) (PREV*(1-(1/m)))); dt:=cpc-trend; noise:=cf*Sqrt(Mov(dt*dt,n,S)); temp:=If(Abs(trend) Abs(noise)=0,1,Abs(trend) Abs(noise)); (Abs(trend)/temp)*100;
프로필 이미지
pinsane
2015-01-30
198
글번호 82826
지표

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

프로필 이미지
pinsane
2015-01-30
0
글번호 82825
지표
답변완료

재문의드립니다.

안녕하세요 예스스탁입니다. 참조데이터는 일봉으로 추가하시면 됩니다. Input : Period(12), Period1(5), Period2(5),N(3); Var : stok(0,data1), stod(0,data1); var : emav1(0,data1),emav2(0,data1),emav3(0,data1); var : V1(0,data1),V2(0,data1); stok = data1(StochasticsK(Period,Period1)); stok = data1(StochasticsD(Period,Period1,Period2)); emav1 = data1(ema(c,5)); emav2 = data1(ema(c,20)); emav3 = data1(ema(c,60)); if stime == 100000 Then{ if C > O Then v1 = O; if C < O Then v1 = C; } if C >= O*1.03 Then v2 = (C+O)/2; If CrossUP(stok, stod) and Upvol/DownVol*100 >= 110 and Upvol/DownVol*100 < 1000 and data1(ma(v,5)[1] >= 10000) and emav1 > emav2 and emav2 > emav3 and emav3 >= 100 and stime > 100000 and C >= V1 and !(C >= O*1.03) and data1(countif(C>=O*1.03,5) >= 1 and C >= V2) And data2(countif(C>= 100000000,N) == N) and data3(countif(C>=100000000,N)==N) and stime <= 123000 then { buy(); } if MarketPosition == 1 and C <= O[BarsSinceEntry] Then ExitLong("bx"); SetStopProfittarget(3,PercentStop); SetStopEndofday(144000); 수정정말 감사드립니다. 사용하고 있는식은 스톡이 아니라 다른식을 사용하고 있습니다. 다만 수정해주신 매수조건들을 추가해보니 외인.연기금수식이 있을경우 종목검색이 상당히 느려집니다(거의 진행이 안됨) 차트에 data2.data3를 추가시켜도 차트읽는것이 상당히 느려집니다.왜그런걸까요? 외인.연기금수식을 빼고 나면 잘됩니다. 그리고 현재의 종가가 10시기준캔들의 시가.종가보다 클경우만 종목이 나와야 되는데 그렇지 않은 종목이 간혹 나옵니다. 10개중에 2개정도 5봉동안 3프로이상 장대양봉출현하고 조정이 그 절반이하로 떨어질 경우 매수제한 data1(countif(C>=O*1.03,5) >= 1 and C >= V2) 이식이 있으면 종목이 거의 안나옵니다. 확인부탁드립니다. 그럼 추운날씨 건강조심하세요^^
프로필 이미지
회원
2015-01-30
145
글번호 82823
시스템
답변완료

지연주문에 대해 여쭤봅니다.

if crossup(sma,lma) then buy: if crossdown(sma,lma) then sell: crossup 하는 경우에 기존 포지션을 정리하면서 동시에 매수를 하게 됩니다. 기존 포지션을 정리한 다음에 몇 초라도 후에 새로운 매수가 일어나게 하고 싶은데 어떻게 하면 되는지요.
프로필 이미지
짙은안개
2015-01-30
137
글번호 82822
시스템

짙은안개 님에 의해서 삭제되었습니다.

프로필 이미지
짙은안개
2015-01-30
0
글번호 82821
시스템

짙은안개 님에 의해서 삭제되었습니다.

프로필 이미지
짙은안개
2015-01-30
0
글번호 82820
시스템
답변완료

종목검색식 문의드립니다.

n봉전부터 현재까지 봉중에 종가가 80bb하한선을 1회이상 이탈하였던 종목 검색식 부탁드립니다. 감사합니다.
프로필 이미지
부양가족
2015-01-30
153
글번호 82817
종목검색