커뮤니티

예스랭귀지 Q&A

글쓰기

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

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

종목 검색부탁드립니다.

1. 아래 수식을 참고하여 , 수식5 ) 가중이격도가 "기준선 100 위에" 있는 모든 , 종목 검색식 부탁드려요 수식1) 기본 baseDis = (C / avg(C,Per))*100 수식2) RSI 계산 rsiUp = avg(max(C - C(1),0),rsiPer); rsiDown = avg(max(C(1) - C ,0),rsiPer); rsiVal = 100 - (100 / (1+rsiUp / rsiDown)) 수식3) RSI 가중치 rsiWeight = if(rsiVal <= 50, 0.5 + (rsiVal * 0.01), // 50 이하일때 0.5 + ((rsiVal -50)* 0.03)) // 50 초과일때 수식4) 거래량가중치 volAvg = avg(V,volPer); volWeight = if(volAvg! = 0,V / volAvg, 1.0 수식5) 가중이격도 rsiVolWeight = if(rsiVal < 30 and volWeight > 1.2, 0.8, if(rsiVal > 70 and volWeight > 1.2, 1.3, 1.0)); weightedDis = baseDis * rsiWeight * volWeight * rsiVolWeight; smoothedWeightedDis = avg(weightedDis, 3) --------------- 지표변수 Per 50 volPer 50 rsiPer 20 --------------- 기준선 100 2. 수식1) 이 "기준선 0선 위에" 있는 모든 종목 검색식 부탁드립니다. 수식1) xClose = close; xOpen = open; xVolume = volume; nVolAccum = SUM(if(xClose > xOpen, xVolume, if(xClose < xOpen, -xVolume, 0)) ,AvgLen); nRes = nVolAccum / AvgLen; IF(nRes>0,nRes,0) 수식2) IF(nRes<0,nRes,0) -------------- 지표조건 AvgLen 25
프로필 이미지
일지매7
2025-07-10
260
글번호 192411
종목검색
답변완료

수식 비교문의

더운 날씨 고생 많으십니다. 항상 빠른 답을 주셔서 감사드립니다. 아래 수식작성 Q&A에 있는 수식인데 궁금해서 질문드립니다. 제가 이해하기로는 기준선이 1봉전보다 크면 매수나 매도식으로 이해되는데 차트에 적용해보니 다르게 적용이 되는 것 같아 수식에 대해 간단하게 설명 부탁드립니다. 그리고 기준선을 변수로 지정가능하게 변경 부탁두립니다. ------------------------------------- var : 기준선(0),Pre(0); if Bdate != Bdate[1] Then pre = 기준선[1]; 기준선 = (Highest(c, 26) + Lowest(c, 26)) / 2; if 기준선 > pre Then buy(); if 기준선 < pre Then sell();
프로필 이미지
나도부자1
2025-07-11
227
글번호 192405
시스템

사공하늘 님에 의해서 삭제되었습니다.

프로필 이미지
사공하늘
2025-07-10
122
글번호 192404
검색
답변완료

문의 드립니다

안녕하세요 해외선물차트에서 시작 첫 15분캔들의 고가,저가수평선을 만들고 그진폭으로 수평선을 만들고자 합니다. 시작시간은 조절가능하게 부탁드립니다.그리고 분봉캔들도 20분30분등 변경가능하게 해주세요. 감사합니다. 수고하세요
프로필 이미지
만강
2025-07-10
226
글번호 192403
지표
답변완료

질문 부탁드립니다

더운날 수고가 많으십니다 배열값 비교하는 수식을 부탁드립니다 aa[0] 보다 2배이상인 값을 aa[0] ~aa[4] 범위내에서 찾고 없으면 aa[1] 보다 2배 큰 값을 aa[0]~aa[9] 범위에서, 없다면 aa[2] " aa[0]~aa[14] 안에서 찾는 식으로 반복을 해서 aa[5] 까지 비교를 하려고 합니다 즉 기준 aa값은 0부터 하나씩 이전값으로, 비교 범위는 뒤로 갈수록 5의 배수로 늘어나게 됩니다 이 조건을 최초로 만족햇을때 var1에 그 값을 저장하고 싶습니다 질문2 . 같은 조건에서 최초가 아닌 해당되는 모든값들을 배열 cc[50]에 순서대로 넣고자 합니다 감사합니다
프로필 이미지
yamu
2025-07-10
196
글번호 192401
지표
답변완료

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

안녕하세요 항상 빠른 답변 감사 드립니다. [1]검색식 1분봉상 당일 첫분봉의 (고+저)/2 돌파 수식을 요청 드립니다. [2] 지표식 분봉상 거래대금 및 거래대금 20 이평선 수식을 요청 드립니다. 오른쪽 지표값에 20이평선 값도 표시가 가능할까요 그럼 좋은 하루 되세요
프로필 이미지
느와르
2025-07-10
232
글번호 192400
종목검색
답변완료

시스템 오류 확인 부탁드립니다

안녕하세요, 해당 시스템 코드를 사용중입니다. 첨부된 파일을 보시면, 매수 후 가격이 크게 하락해 스탑로스가 발동되어야하는 부분인데 이상하게도 발동되지 않고 계속 홀딩하는 것으로 보입니다. 확인 부탁드립니다. 감사합니다. Input:Period(10); Vars:ll(0),hh(0); ll = lowest(L,Period); hh = highest(H,Period); If MarketPosition == 0 and CrossDown(C,ll[1]) Then Buy("Buy",AtMarket,DEf,1); // STOP LOSS input:PTMult(1); var:AT(0); AT = ATR(14); If MarketPosition == 1 and Close >= (EntryPrice - (PTMult*AT[BarsSinceEntry])) Then ExitLong("PT",AtMarket); // PROFIT TAKING Input:PT(1); If MarketPosition == 1 Then SetStopProfittarget(PT,PercentStop);
프로필 이미지
sewzie
2025-07-10
222
글번호 192399
시스템
답변완료

거래수를 줄이는 방법 (추가 질문)

네 잘 알겠습니다. 감사합니다. 그런데 그러면 회수는 카운트가 되나요? 1번 3번 5번째 신호에만 거래시키는 식으로 하고 싶다면? if CrossUp(c,100) Then {Buy("B", OnClose,def,contnum );mcnt=mcnt+1; if mcnt==1 Then {contnum=0;} if mcnt==2 Then {contnum=1;} if mcnt==3 Then {contnum=0;} if mcnt==4 Then {contnum=1;} if mcnt==5 Then {contnum=0;} if mcnt==6 Then {contnum=1;} if mcnt==7 Then {contnum=0;} 이렇게 쓰면 되는 걸까요? ----------------------------------------------------------------- 안녕하세요 예스스탁입니다. 사용가능합니다. 주문함수에 수량이 0이면 신호가 발생하지 않습니다. 즐거운 하루되세요 > hunter33 님이 쓴 글입니다. > 제목 : 거래수를 줄이는 방법 > 더운 날씨에 수고가 많으십니다. 기본적인 질문을 드리고 싶습니다. 이동평균으로 매수타이밍을 찾다보니 너무 거래가 많아서 중간에 랜덤으로 Buy("B", OnClose,def,0 ) 이나 Sell("S", OnClose,def,0 )과 같이 계약수를 0로 해서 거래수를 줄여보려고 합니다 이렇게 해도 가능한지요? 다시 한번 감사드립니다.
프로필 이미지
hunter33
2025-07-10
202
글번호 192393
지표
답변완료

문의드립니다.

var : AA(False), BB(False), CC(False); var : T(0), B(0), i(0); var : VV(0); var1 = ma(C, 10); if sDate != sDate[1] and sTime >= 90000 Then { T = 0; B = 0; VV = 0; } B = B + 1; AA = DayOpen >= 5000 and DayOpen <= 15000; BB = DayOpen >= DayClose[1] and DayOpen <= DayClose[1] * 1.06; CC = sTime >= 90000 and sTime <= 92000; if AA and BB and CC Then T = 1; if T == 1 and CrossUp(C, var1) Then { if B >= 2 Then T = 2; } if T == 2 and C >= DayHigh*0.998 Then { VV = 0; for i = 1 to B - 1 { VV = VV + V[i]; } // 거래량 조건 먼저 확인 if VV >= 50000 Then { T = 3; } } if T == 3 Then find(1); 이렇게 검색하는데요... B>=2 라는게 있으니까, 1분부터 검색되야 되는거 아닌가요??? 실행해보면, 9시부터 주르륵 검색됩니다...ㅠㅠ 분봉첫봉에서 검색되는거를 제외하고 싶은데... 왜 안될까요??? B>=2 가 잘못된걸까요??? 음...결국, 분봉 두번째부터 검색하려면 어케하면 될까요??? 부탁드립니다...ㅎ 감사합니다...ㅎ
프로필 이미지
시온사랑
2025-07-10
229
글번호 192392
종목검색