커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수식 부탁드립니다.

수고하십니다. 문의 1. 10일(기간)중 OBV값의 전고점을 1회이상(횟수) 돌파하는 종목을 검색하는 식을 부탁드립니다. - 돌파 횟수를 나타내게 해주시고 - 기간 및 횟수는 외부변수로 처리를 부탁드립니다. 문의 2. OBV값의 전고점을 돌파할때 캔들에 화살표 등 으로 표시하는 수식을 부탁드립니다. 매번 감사합니다.
프로필 이미지
자아준
2018-05-23
266
글번호 119130
종목검색
답변완료

수식 문의 드립니다.

안녕하세요? 늘 감사드립니다. 해외선물에 적용할 것입니다. 모든 시간 관련 사항은 런던 시장 기준 입니다. 전일범위 = 전일 고가 – 전일 저가 = 전일의 레인지. 오늘의 시가(런던 시장 오픈) + 0.5*전일범위 상향돌파에 매수진입 또는 오늘의 시가(런던 시장 오픈) – 0.5*전일범위 하향 돌파에 매도 진입 * 진입은 하루 1번 이내 입니다. 진입후 +50 핍에 익절, 또는 -40 핍에 손절, 손절도 익절도 안되었으면, 다음날 런던 시장 오픈 2봉 전의 종가에 청산. 질문: 지금 14시 50분 현재, Yes Global에서는 00시 50분으로 되어 있네요... 그렇다면, 런던 시장이 16시에 오픈한다면 02:00 오픈 인 것이고, 이 경우에, 전일 범위는 02:00 ~ 다음날 01:59 분 중에서의 고점 - 저점 이겟죠? 제가 보통은 15분, 또는 30분 봉을 켜 두는데, 이 경우에도 01시 59분 같은 이야기가 먹히는지가 궁금합니다. 만약 안 먹히면, 최대한 비슷하게만 작동해도 좋겠습니다. 감사합니다.
프로필 이미지
에구머니
2018-05-23
260
글번호 119116
시스템
답변완료

오늘의 주가를 전일의 시가에서 시작하도록 설정

안녕하세요 관리자님!! 고생이 많으십니다. 오늘의 주가 움직임을 전일의 시가에서 시작하도록 해서 차트에 선으로 표시하고 싶습니다. 도와주십시요^^
프로필 이미지
카카
2018-05-23
254
글번호 119095
지표
답변완료

분봉에 라인긋기 수식좀요

당일고가-(당일고가*0.001) 이내용을 분봉에 라인으로 그려주는 수식부탁드려요~ (제가만들면 왜 에러가 나는지~)
프로필 이미지
face
2018-05-23
261
글번호 119094
시스템
답변완료

거래차수 조절

아래는 거래횟수를 20회까지 입력하여 거래하는 buy 수식입니다. input을 통해 거래차수를 조절하는 수식을 추가하고 싶습니다. 예를 들어 input : 거래차수(3)으로 입력하면 1차,2차 거래는 포지션 없이 진입과 청산 수식을 이행하다가 3차 거래부터 진입을 시작합니다. ****************************************************************** input : b1(9),b2(9),X1(9),X2(9),진입눌림(3),진입돌파(1),청산눌림(3),청산돌파(1),거래횟수(20),시작시간(090000) ; var : T1(0),entry(0),LL(0),EH(0),E1(0),H1(0),i1(0),S1(0),L1(0),V1(0); if (sdate != sdate[1] and stime >= 시작시간) or (sdate == sdate[1] and stime >= 시작시간 and stime[1] < 시작시간) Then{ T1 = TotalTrades; E1 = 0; LL = L; } if stime >= 시작시간 then{ if L < LL Then LL = L; if MarketPosition == 0 Then entry = TotalTrades-T1; Else entry = (TotalTrades-T1)+1; if MarketPosition == 0 and entry == 0 Then{ if E1 == 0 and C >= LL+PriceScale*B1 and C[1] < LL+PriceScale*B1 Then{ E1 = 1; H1 = H; i1 = index; V1 = LL; //시작점 종가 } if E1 == 1 and index > i1 then{ if H > H1 Then H1 = H; #저가가 시작봉종가보다 클때만 눌림체크 if L >= V1 and L <= H1-PriceScale*진입눌림 Then{ E1 = 2; i1 = index; S1 = H1; } } //시작점 종가보다 낮은 가격이 발생하면 초기화 if E1 >= 1 and L < V1 Then{ E1 = 0; LL = L; } if E1 == 2 and index > i1 and C >= S1+PriceScale*진입돌파 Then{ buy("b1"); } } if TotalTrades > TotalTrades[1] Then{ E1 = 0; LL = L; } if L < LL Then LL = L; if MarketPosition == 0 and entry >= 1 and entry < 거래횟수 Then{ if E1 == 0 and C >= LL+PriceScale*B2 and C[1] < LL+PriceScale*B2 Then{ E1 = 1; H1 = H; i1 = index; V1 = LL; //시작점 종가 } if E1 == 1 and index > i1 then{ if H > H1 Then H1 = H; #저가가 시작봉종가보다 클때만 눌림체크 if L >= V1 and L <= H1-PriceScale*진입눌림 Then{ E1 = 2; i1 = index; S1 = H1; } } //시작점 종가보다 낮은 가격이 발생하면 초기화 if E1 >= 1 and L < V1 Then{ E1 = 0; LL = L; } if E1 == 2 and index > i1 and C >= S1+PriceScale*진입돌파 Then{ buy("b2"); } } if MarketPosition == 1 Then{ if entry >= 1 then{ if CurrentContracts > CurrentContracts[1] Then{ EH = H; E1 = 0; } if H > EH Then{ EH = H; E1 = 0; } if E1 == 0 and C <= EH-PriceScale*X1 Then{ E1 = 1; L1 = L; i1 = index; } if E1 == 1 and index > i1 Then{ if L < L1 Then L1 = L; if H >= L1+PriceScale*청산눌림 Then{ E1 = 2; I1 = index; S1 = L1; } } if E1 == 2 and index > i1 and C <= S1-PriceScale*청산돌파 Then{ exitlong("bx1"); E1 = 0; } } } if MarketPosition == 1 Then{ if entry >= 1 then{ if CurrentContracts > CurrentContracts[1] Then{ EH = H; E1 = 0; } if H > EH Then{ EH = H; E1 = 0; } if E1 == 0 and C <= EH-PriceScale*X2 Then{ E1 = 1; L1 = L; i1 = index; } if E1 == 1 and index > i1 Then{ if L < L1 Then L1 = L; if H >= L1+PriceScale*청산눌림 Then{ E1 = 2; I1 = index; S1 = L1; } } if E1 == 2 and index > i1 and C <= S1-PriceScale*청산돌파 Then{ exitlong("bx2"); E1 = 0; } } } }
프로필 이미지
좌오비우오비
2018-05-23
259
글번호 119093
시스템
답변완료

검색문의드립니다.

Input : shortPeriod(12), longPeriod(26), Period(9),N(1); Var : MACDv(0), MACDS(0),mav(0),T(0); MACDv = MACD(shortPeriod, longPeriod); MACDs = ema(MACDv,Period); mav =ma(c,5); if crossup(MACDV,MACDS) Then{ var1 = mav; T = 1; } if CrossDown(MACDV,MACDS) Then{ var2 = mav; T = -1; } if T == 1 Then{ if mav > var1 Then var1 = mav; } if T == -1 Then{ if mav < var2 Then var2 = mav; } plot1(var1,"매수"); plot2(var2,"매도"); plot3(ma(c,n),"N이평"); 요청사항 var1와 var2 선의 값이 5%내로 가까워지면 잡을수 있는 수식 부탁드립니다.
프로필 이미지
칠곡저격수
2018-05-23
237
글번호 119090
검색
답변완료

plot는 기술적지표에서만 쓸수있습니다 라는건 어떻게 바궈야할까요

plot1(RSI0,"RSI"); plot2(var3,"Fast_Metro"); plot3(var4,"Slow_Metro"); PlotBaseLine1(30, "기준선 30"); PlotBaseLine2(70, "기준선 70"); 이 내용인데 시스템에서 하게돼면 기술적지표에서만 쓸수있다고 나와요 어떻게 바꿔야 할까요?
프로필 이미지
만두기
2018-05-23
246
글번호 119089
시스템

만두기 님에 의해서 삭제되었습니다.

프로필 이미지
만두기
2018-05-23
28
글번호 119088
시스템
답변완료

돌파식 수정요청

//사용자함수명 dema input : Price(Numeric),Period(9); dema = ema(ema(Price,Period),period); //사용자함수명 tema tema = ema(ema(ema(Price,Period),period),period); var1= 100 - (100/(1+TEMA(if((C-C(1))>0,(C-C(1)),0), period) / TEMA(if((C-C(1))<0,abs((C-C(1))),0),period))) var2= 100 - (100/(1+DEMA(if((C-C(1))>0,(C-C(1)),0), 9) / DEMA(if((C-C(1))<0,abs((C-C(1))),0),period))) if Var1[1] > Var2[1] and Var1[1] < Var2[1] Then Find(1); 검색식을 만들고 싶은데요 var2가 var1 돌파하는 검색식이요 여기서 외부변수에 price는 종가 c를 표현한건가요? dema tema 계산 설명입니다 DEMA (Double Exponential Moving Average) EMA의 EMA라고 이해. < 계산 방법 > EMA = {2 / ( n + 1)} X (당일종가 - 전일 EMA) + 전일 EMA TEMA (Triple Exponential Moving Average) EMA의 EMA의 EMA라고 이해 < 계산 방법 > EMA = {2/(n+1)} * (당일종가 - 전일EMA) + 전일EMA 통상적으로 n = 9일을 기본값으로 합니다. EMA (Exponential Moving Average, 지수이동평균) 가장 최근의 값에 더 많은 가중치를 부여하고 오래 된 값에는 적은 가중치를 부여하되, 비록 오래 된 값이라고 할지라도 완전히 무시하지는 않고 적게나마 반영시키는 계산방법으로 < 계산 방법 > EMA(지수이동평균) = 전일지수이동평균 +{c×(금일종가지수-전일지수이동평균)} ※ c = 2 / (n+1) 단, 0 < c < 1 (9일의 경우 0.2, 12일의 경우 0.15, 26일의 경우엔 가중치 0.075 사용)
프로필 이미지
실상사
2018-05-22
227
글번호 119087
검색