커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수식 문의

볼린저밴드를 바탕으로 다음과 같이 주가의 위치를 구분하여 점수를 부여한 뒤, 세븐바이너리지표에 포함시키고 싶습니다. 1. "이전의 어떤 지점에서" 볼린저 밴드 상단을 돌파한 뒤 상단선 보다 가격이 높은 상태 : +2점 2. "이전의 어떤 지점에서" 볼린저 밴드 상단을 이탈한 뒤 중심선 보다는 가격이 높은 상태 : +1점 3. "이전의 어떤 지점에서" 볼린저 중심선을 이탈한 뒤 하단선 보다는 가격이 높은 상태 : -1점 4. "이전의 어떤 지점에서" 볼린저 하단선을 이탈한 뒤 하단선 보다 가격이 낮은 상태 : -2점 5. "이전의 어떤 지점에서" 볼린저 하단선을 돌파한 뒤 중심선 보다 가격이 낮은 상태 : -1점 6. "이전의 어떤 지점에서" 중심선을 돌파한 뒤 중심선 보다 가격이 높은 상태 : +1점 ※위 조건인 즉, 상단을 이탈한 뒤 중심선 위에 있는 주가와 중심선을 돌파한 뒤 중심선 위에 있는 주가의 점수를 다르게 매기고 싶은 것입니다. ------ 바이너리세븐 --------- Input: shortPeriod(12), longPeriod(26), Period(9), maPeriod(20), ROCPeriod(12), stoPeriod1(5), stoPeriod2(3), CCIPeriod(9); var: value(0),BW_SEVEN(0); //문장1 : MACD가 MACD 시그널선 보다 큼 if ema(C,shortPeriod)-ema(C,longPeriod) >= ema(ema(C,shortPeriod)-ema(C,longPeriod),Period) then value = 1; else value = -1; //문장2 : 종가가 이동평균선보다 큼 if C >= ma(C, maPeriod) then value = value + 1; else value = value - 1; //문장3 : Price ROC가 0선보다 큼 if (C - C[ROCPeriod]) / C[ROCPeriod] * 100 >= 0 then value = value + 1; else value = value - 1; //문장4 : StochasticsK선이 50선 보다 큼 if ema((C-lowest(L, stoPeriod1)) / (highest(H, stoPeriod1) - lowest(L, stoPeriod1)) * 100, stoPeriod2)>=50 then value = value + 1; else value = value - 1; //CCI가 0선 보다 큼 if CCI(CCIPeriod) > 0 then value = value + 1; else value = value - 1; //CO가 0선 보다 큼 if ema(accum(((C -L)-(H- C))/ (H-L)*V), 3) - ema(accum(((C -L)-(H- C))/(H-L)*V), 10) >=0 then value = value + 1; else value = value - 1; //문장7 : 종가가 파라볼릭보다 큼 if SAR(0.02,0.2) < C then value = value + 1; else value = value - 1; BW_SEVEN = value; Plot1(BW_SEVEN,"세븐 바이너리웨이브"); PlotBaseLine1(0,"기준선0");
프로필 이미지
부똘이
2020-09-09
1012
글번호 142232
지표
답변완료

과열 / 침체 영역의 주가 범위

안녕하세요? 스토케스틱(StoK)이 25 이하인 침체영역에서 현재 주가의 최대값을 '침체선'으로 표시하고, StoK가 75 이상이 되는 과열영역에서의 현재 주가의 최소값을 '과열선'으로 표시하고자 합니다. 침체 또는 과열 영역으로 재 진입 할 때 해당되는 침체 또는 과열선이 업데이트 되고, StoK > 25와 StoK < 75 인 영역에서는 이 전 값이 그대로 유지 됩니다. 감사합니다.
프로필 이미지
리턴
2020-09-09
874
글번호 142231
지표
답변완료

문의드립니다.

안녕하세요? 아래의 수식으로 당일차트만 나오게해서 사용중입니다. 당일만표시를 체크해제하면, 앞에것이 다 나오는데, 당일차트만 나오게해서 보는것과 결과가 다르다보니, 당일차트가 더좋아서 그렇게 사용중입니다. 지나간날들을 당일차트로만 보고싶은데, 변수에 날짜를 넣어서 성능보고서를 확인할수는 없을까요? 된다면 날짜입력할수있도록 넣어주시면 정말 감사하겠습니다. 부탁드립니다. input : 익절틱수(50),손절틱수(50),entrycnt(3); Input : shortPeriod(5), longPeriod(20); var : entry(0); if bdate != bdate[1] Then entry = 0; if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) then entry = entry+1; value1 = ema(C, shortPeriod); value2 = ema(C, longPeriod); If MarketPosition == 0 and entry < entrycnt and CrossUP(value1, value2) Then { Buy(); } If MarketPosition == 0 and entry < entrycnt and CrossDown(value1, value2) Then { Sell(); } SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopLoss(PriceScale*손절틱수,PointStop);
프로필 이미지
대구어린울프
2020-09-09
978
글번호 142230
시스템
답변완료

추가부탁드립니다.

안녕하세요? 아래의 수식에서 이동평균선을 추가하고싶습니다. 1) 이평선 2개추가(외부변수) 2) 추가된 2개 이평선 기준으로, 정배열에서 매도진입 / 역배열에서 매수진입 이렇게 추가를 하고싶습니다. 부탁드립니다. 감사합니다. if MarketPosition == 0 and C[2] == O[2] and C[1] != O[1] and C > O Then Buy(); if MarketPosition == 0 and C[2] == O[2] and C[1] != O[1] and C < O Then Sell(); input : 익절틱수(50),손절틱수(50); SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopLoss(PriceScale*손절틱수,PointStop);
프로필 이미지
대구어린울프
2020-09-09
916
글번호 142223
시스템
답변완료

NH트레이더 종목검색 수식문의

안녕하세요 nh 트레이더 사용 중입니다. 종목검색이 필요합니다. 1분봉 기준 ad line(accumulation distribution line) 0선돌파 1분 300봉 신고가 1분 900봉, 현재가가 최고, 최저가의 50% 미만에 있음 감사드립니다.
프로필 이미지
ooo
2020-09-09
923
글번호 142220
종목검색
답변완료

청산, 트레일링 스탑, 손절

안녕하세요 관리자님 우선 이전 답변에 대하여 감사 드립니다. 아래에 Buy나 Sell 다음에 아래와 같은 조건으로 시스템을 작성하고 싶은데 어떻게 해야되는지 문의 드립니다. 미리 감사 드립니다. Buy 청산은 (CrossDown(지수이평[0],기준선2[0]) or CrossDown(지수이평[0],기준선1[0]) Sell 청산은 (Crossup(지수이평[0],기준선2[0]) or Crossup(지수이평[0],기준선1[0]) 트레일링 스탑은 100틱 손절은 200틱 (손절 2번 발생시 당일 거래 멈춤) Input:기준선기간1(20),기준선기간2(60); var:기준선1(0),기준선2(0); 기준선1 = (Highest(High, 기준선기간1) + Lowest(Low, 기준선기간1)) / 2 ; 기준선2 = (Highest(High, 기준선기간2) + Lowest(Low, 기준선기간2)) / 2 ; ## 지수 이평 ## Input : 지수이평기간(5); var : 지수이평(0); 지수이평 = ema(C,지수이평기간); IF MarketPosition <= 0 OR (MarketPosition == 1 and MaxEntries < 3) Then { If (기준선1[0] >= 기준선2[0]) and (Crossup(지수이평[0],기준선2[0]) or Crossup(지수이평[0],기준선1[0])) Then Buy (); } IF MarketPosition >= 0 OR (MarketPosition == -1 and MaxEntries < 3) Then { If (기준선1[0] < 기준선2[0]) and (CrossDown(지수이평[0],기준선2[0]) or CrossDown(지수이평[0],기준선1[0]))Then Sell (); }
프로필 이미지
blueo
2020-09-09
1142
글번호 142215
시스템
답변완료

지표 여러개 합치기

완전 생초보라 문의 드려요.. 지표하나로 예를들어 볼린져밴드 , 일목균형표 등을 하나의 수식으로 합치는건 어떻게 하나요? 하나하나 불러올라니 성가시기도 해서요..^^ 항상 감사합니다.
프로필 이미지
수식쌩짜
2020-09-09
885
글번호 142205
지표
답변완료

문의드립니다

안녕하세요 일목에서 후행스팬1 아래에 일봉이 있다면 배경색을 파랑색. 일봉이 후행스팬1 위에 있다면 빨강색으로 표기 하는 수식 부탁 드립니다. 수고하세요
프로필 이미지
백두에서한라
2020-09-09
797
글번호 142203
지표
답변완료

신호가 전혀 나오지 않네요.

죄송한데요. 신호가 전혀 나오지 않네요. 한번만 더 검토 부탁드리겠습니다. 감사합니다. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 수식 부탁드립니다. > 안녕하세요 예스스탁입니다. 1 다이버전스 수식은 고점과 저점을 판별하는 내용이 있어야 합니다. 해당 부분에 대한 언급이 없으셔서 스윙하이, 스윙로우 함수로 고점저점 판단하는 내용으로 작성해 드립니다. 해당 함수에 대해서는 예스랭귀지 도움말에서 설명 참고하시기 바랍니다. 2 고점이 일정봉 상승후에 일정봉 값이 하락해야 판단됩니다. 저점도 반대로 같습니다. 고점/저점기준으로 N개봉 지난후에 사후적으로 판별되므로 고점이후 첫 음봉이나 저점 이후 첫양봉이 이미 과거봉일수 있습니다. 스윙하이나 스윙로우 조건이 만족한 시점이후의 첫 음봉/양봉으로 작성해 드립니다. 3 Input : P(9),Left(3),right(3); Var : RSIV(0),t(0); var : HIV(0),HIV1(0),HPV(0),HPV1(0); Var : LIV(0),LIV1(0),LPV(0),LPV1(0); RSIV = RSI(P); #고점발생 if SwingHigh(1,value1,left,right,left+right+1) != -1 Then { T = 1; #최근 고점 HIV = value1[right]; #직전 고점 HIV1 = HIV[1]; #최근 지표 고점구간에서 가격 최고점 HPV = Highest(H,left+right+1); #직전 지표 고점구간에서 가격 최고점 HPV1 = HPV[1]; } if Swinglow(1,value1,left,right,left+right+1) != -1 Then { t = -1; #최근 저점 LIV = value1[right]; #직점 저점 LIV1 = LIV[1]; #최근 지표 저점 구간에서 가격 최저점 LPV = Lowest(L,left+right+1); #직전 지표 저점 구간에서 가격 최저점 LPV1 = LPV[1]; } #지표값하락, 가격 상승 매도 if T == 1 and HPV > HPV1 and HIV < HIV1 and HPV1 > 0 and C < O Then { T = 2; sell(); } #지표값상승, 가격 하락 매수 if T == -1 and LPV < LPV1 and LIV > LIV1 and LPV1 > 0 and C > O Then { T = -2; buy(); } 즐거운 하루되세요 > 김종서 님이 쓴 글입니다. > 제목 : 수식 부탁드립니다. > 안녕하세요. RSI 지표로 그림과 같이 다이버전스 발생하고 최저점 음봉이 지난 후 양봉 발생시 매수진입하고 그 최저점 이탈시 손절하는 수식을 부탁드립니다. 그 반대의 경우 최고점 양봉 후 음봉 발생시 매도 진입하고 최고점 이탈시 손절의 경우도 부탁드립니다. 수고하세요. 감사합니다.
프로필 이미지
김종서
2020-09-08
777
글번호 142200
시스템