커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

문의드립니다

아래 수식에서 시간 삭제해서 수정 부탁드립니다 INPUT : LENGTH(10),익절틱수(30),손절틱수(30); VAR : TCHAN(0), BCHAN(0); input : starttime(93000),endtime(010500); var : Tcond(false); if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Tcond = true; } if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; if MarketPosition == 1 Then ExitLong("bx"); if MarketPosition == -1 Then ExitShort("sx"); } #상단 TCHAN = HIGHEST(HIGH, LENGTH)[1]; #하단 BCHAN = LOWEST(LOW, LENGTH)[1]; #10지수이평이 60지수이평보다 크면 #다음봉에 하단 이하의 시세가 발생하면 즉시 매수진입 if Tcond == TRUE AND ema(C,5) > ema(C, 60) and MarketPosition == 0 and (TotalTrades == 0 or (TotalTrades >= 1 and BarsSinceExit(1) >= 5)) and (BarsSinceExit(1) >= 20 or (BarsSinceExit(1) < 20 and (min(NextBarOpen, BCHAN) > EntryPrice(1)) or EntryPrice(1) == 0)) then buy("buy", atlimit, BCHAN); #매수진입 후 if MarketPosition == 1 Then { #상단까지 시세 상승하면 즉시 청산 exitlong("EL_상단터치", atlimit, TCHAN); #30틱 수익이면 즉시 청산 exitlong("EL_익절",atlimit, EntryPrice + PriceScale*익절틱수); #30틱 손실이면 즉시 청산 exitlong("EL_손절",AtStop, EntryPrice - PriceScale*손절틱수); } #10지수이평이 60지수이평보다 작으면 #다음봉에 상단 이상의 시세가 발생하면 즉시 매도진입 if Tcond == true and ema(C,5) < ema(C, 60) and MarketPosition == 0 and (TotalTrades == 0 or (TotalTrades >= 1 and BarsSinceExit(1) >= 5)) and (BarsSinceExit(1) >= 20 or (BarsSinceExit(1) < 20 and (max(NextBarOpen, TCHAN) < EntryPrice(1)) or EntryPrice(1) == 0)) then sell("sell", atlimit, TCHAN); #매도진입 후 if MarketPosition == -1 Then { #하단까지 시세 하락하면 즉시 청산 exitshort("ES_하단터치", atlimit, BCHAN); #30틱 수익이면 즉시 청산 exitshort("ES_익절",atlimit, EntryPrice - PriceScale*익절틱수); #30틱 손실이면 즉시 청산 exitshort("ES_손절",AtStop, EntryPrice + PriceScale*손절틱수); }
프로필 이미지
해피슈
2019-01-16
180
글번호 125334
시스템
답변완료

질문드립니다.

분봉을 기준으로 만들어진 전략에서 일봉의 데이터를 불러올수 있는것처럼 혹시 30분봉을 기준으로 돌리고 있는 전략에서 5분봉의 데이터를 가져와서 쓸수 있나요? 예를 들어 30분봉에서 전략실행을 하고 있는데 청산할때만 5분봉의 atr값으로 계산하여 추적청산 한다던지 미리 답변 감사드립니다.
프로필 이미지
시고르시고르
2019-01-16
183
글번호 125327
시스템
답변완료

질문드립니다.

30분봉상 첫캔들의 거래량이 최근5일간 거래량중 가장높다 라는 조건식 부탁드립니다.
프로필 이미지
stockric
2019-01-16
181
글번호 125324
시스템
답변완료

수식 부탁드립니다.

즉시 매수 매도 가능한가요? 예를 들면 GOID 매매시 시가가 1209.0 경우 시가 닿으면 즉시 매수 하고 손절은 5틱으로 수식이 가능할까요? 부탁 드립니다.
프로필 이미지
선물대장
2019-01-16
196
글번호 125323
시스템
답변완료

시스템 형태 좀 구현 부탁 드립니다.

* 항상 많은 도움에 고맘습니다. * 요청사항 : 시스템 형태 좀 아래 형식으로 부탁 드립니다. 1. 로직A 에 의해서 매매(매도,매수) 신호가 발생 하면 바로 매매 하는것이 아니라 2. 매매발생(로직A 신호) 봉 부터 이평선을 시작 하여 (이전 봉은 무시) 3. VAR1 = MA(C,5) ; VAR2 = MA(C,10) ; IF CROSSUP(VAR1,VAR2) THEN BUY() ; IF CROSSDOWN(VAR2,VAR1) THEN SELL() ; 4. 아래 로직도 부탁 드립니다. IF 신호봉(로직A) 기준 10개 경과후 매수 이전 30개봉 최고가 돌파시 THEN BUY() ; IF 신호봉(로직A) 기준 10개 경과후 매수 이전 30개봉 최저가 하락시 THEN SELL() ; 2개 로직 형태좀 부탁 드립니다. * 추운 날씨에 건강 챙기시고 항상 고맙습니다.
프로필 이미지
요타
2019-01-16
197
글번호 125322
시스템
답변완료

수식 수정 부탁 드립니다

아래수식 수정 부탁 드립니다 골든크로스 및 데드크로스 발생 시 단기와 장기 이평선 사이의 공간에 색깔 표시 골든크로스 영역은 빨강색 데드크로스 영역은 파랑색 Input : Period1(5), Period2(20); var : Sma1(0),Sma2(0); Sma1 = ma(C,Period1); Sma2 = ma(C,Period2); Plot1(Sma1, "이동평균1"); Plot2(Sma2, "이동평균2");
프로필 이미지
헬리콥터
2019-01-16
213
글번호 125318
지표
답변완료

문의드립니다

아래 전략에서 매수 진입은 첫번째 바로전 진입 신호 보다 높은때 매수 신호 매도 진입은 첫번째 바로전 진입 신호 보다 낮은때 매도 신호 이렇게 해주시면 되는데 바로 전 청산신호 부터 20봉안에서만 이렇게 하고 20봉이 넘어가면 상관없게 수정 부탁드립니다 INPUT : LENGTH(10),익절틱수(30),손절틱수(30); VAR : TCHAN(0), BCHAN(0); input : starttime(93000),endtime(010500); var : Tcond(false); if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Tcond = true; } if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; if MarketPosition == 1 Then ExitLong("bx"); if MarketPosition == -1 Then ExitShort("sx"); } #상단 TCHAN = HIGHEST(HIGH, LENGTH)[1]; #하단 BCHAN = LOWEST(LOW, LENGTH)[1]; #10지수이평이 60지수이평보다 크면 #다음봉에 하단 이하의 시세가 발생하면 즉시 매수진입 if Tcond == TRUE AND ema(C,5) > ema(C, 60) and MarketPosition == 0 and (TotalTrades == 0 or (TotalTrades >= 1 and BarsSinceExit(1) >= 5)) Then buy("buy", atlimit, BCHAN); #매수진입 후 if MarketPosition == 1 Then { #상단까지 시세 상승하면 즉시 청산 exitlong("EL_상단터치", atlimit, TCHAN); #30틱 수익이면 즉시 청산 exitlong("EL_익절",atlimit, EntryPrice + PriceScale*익절틱수); #30틱 손실이면 즉시 청산 exitlong("EL_손절",AtStop, EntryPrice - PriceScale*손절틱수); } #10지수이평이 60지수이평보다 작으면 #다음봉에 상단 이상의 시세가 발생하면 즉시 매도진입 if Tcond == true and ema(C,5) < ema(C, 60) and MarketPosition == 0 and (TotalTrades == 0 or (TotalTrades >= 1 and BarsSinceExit(1) >= 5)) Then sell("sell", atlimit, TCHAN); #매도진입 후 if MarketPosition == -1 Then { #하단까지 시세 하락하면 즉시 청산 exitshort("ES_하단터치", atlimit, BCHAN); #30틱 수익이면 즉시 청산 exitshort("ES_익절",atlimit, EntryPrice - PriceScale*익절틱수); #30틱 손실이면 즉시 청산 exitshort("ES_손절",AtStop, EntryPrice + PriceScale*손절틱수); }
프로필 이미지
해피슈
2019-01-16
186
글번호 125317
시스템
답변완료

매수,매도, 글씨 문의 드립니다.

Input : B_A_Period1(12), B_A_Period2(26), B_A_Period3(9); Input : EL_A_Period1(12), EL_A_Period2(26), EL_A_Period3(9); Input : S_A_Period1(12), S_A_Period2(26), S_A_Period3(9); Input : ES_A_Period1(12), ES_A_Period2(26), ES_A_Period3(9); Var : B_A_value1(0), B_A_value2(0); Var : B_A_CondResult(FALSE), B_A_TempResult(FALSE), B_A_Condition3(FALSE); Var : EL_A_value1(0), EL_A_value2(0); Var : EL_A_CondResult(FALSE), EL_A_TempResult(FALSE), EL_A_Condition5(FALSE); Var : S_A_value1(0), S_A_value2(0); Var : S_A_CondResult(FALSE), S_A_TempResult(FALSE), S_A_Condition3(FALSE); Var : ES_A_value1(0), ES_A_value2(0); Var : ES_A_CondResult(FALSE), ES_A_TempResult(FALSE), ES_A_Condition5(FALSE); B_A_value1 = EMA(Close,B_A_Period1)-EMA(Close,B_A_Period2); B_A_value2 = EMA(B_A_value1,B_A_Period3); B_A_Condition3 = CrossUp(B_A_value1, B_A_value2); B_A_TempResult = B_A_Condition3; B_A_CondResult = B_A_TempResult; If B_A_CondResult Then { Buy("매수1"); } EL_A_value1 = EMA(Close,EL_A_Period1)-EMA(Close,EL_A_Period2); EL_A_value2 = EMA(EL_A_value1,EL_A_Period3); EL_A_Condition5 = EL_A_value1[2] < EL_A_value1[1] and EL_A_value1[1] > EL_A_value1; EL_A_TempResult = EL_A_Condition5; EL_A_CondResult = EL_A_TempResult; If EL_A_CondResult Then { ExitLong(); } S_A_value1 = EMA(Close,S_A_Period1)-EMA(Close,S_A_Period2); S_A_value2 = EMA(S_A_value1,S_A_Period3); S_A_Condition3 = CrossDown(S_A_value1, S_A_value2); S_A_TempResult = S_A_Condition3; S_A_CondResult = S_A_TempResult; If S_A_CondResult Then { Sell(); } ES_A_value1 = EMA(Close,ES_A_Period1)-EMA(Close,ES_A_Period2); ES_A_value2 = EMA(ES_A_value1,ES_A_Period3); ES_A_Condition5 = ES_A_value1[2] > ES_A_value1[1] and ES_A_value1[1] < ES_A_value1; ES_A_TempResult = ES_A_Condition5; ES_A_CondResult = ES_A_TempResult; If ES_A_CondResult Then { ExitShort(); } 이수식에 한글로 매수 매수 청산 매도 매도 청산 이렇게 한글로 화면에 쓰이게 부탁 드립니다.
프로필 이미지
와라바다
2019-01-16
200
글번호 125313
시스템
답변완료

매수가 대비 2퍼센트 하락시 본전가 매도주문 수식 부탁드립니다.

매수가로부터 -2퍼센트 도달 즉시 평단가로 매도주문이 나가게 하고싶습니다. 수식좀 부탁드립니다.
프로필 이미지
스밥
2019-01-16
201
글번호 125312
시스템