커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

문의 드립니다.~~~~

주석을 보니 제 질문이 잘못되어 수정해 올립니다~~ 참고로 설명그림을 첨부합니다~~ 수고스럽지만 다시 부탁드립니다~` 항상 감사합니다~~ - 10시 시가부터 형성되는 틱봉 저가에서 상승시 n틱(변수처리) 하락조정받지 않고 m틱(변수처리)이상 상승시에는 저가(10시 시가부터 형성된)+m틱(변수처리)에 역추세 매도진입 - 10시 시가부터 형성되는 틱봉 고가에서 하락시 a틱(변수처리) 상승조정받지않고 b틱(변수처리)이상 하락시에는 고가(10시 시가부터 형성된)-b틱에(변수처리) 역추세 매수진입하는 진입식을 부탁드립니다. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 문의 드립니다.~~~~ > 안녕하세요 예스스탁입니다. input : ntime(100000),nn(10),mm(5),aa(10),bb(10); var : OO(0),HH(0),LL(0); #ntime이후 첫봉 if (sdate != sdate[1] and stime >= ntime) or (sdate == sdate[1] and stime >= ntime and stime[1] < ntime) Then { #변수값 해당봉 시/고/저로 초기화 OO = O; HH = H; LL = L; } #ntime이후 최고가 계산 if HH > 0 and H > HH Then HH = H; #ntime이후 최저가 계산 if LL > 0 and L < LL Then LL = L; #시가에 값이 저장되어 있고(ntime이후) #최저가가 최고가대비 nn틱 이하로 내려가적이 없으면 if OO > 0 and LL >= HH-PriceScale*nn Then #최저가+mm틱이상 상승시 매도 sell("s",AtLimit,LL+mm*PriceScale); #시가에 값이 저장되어 있고(ntime이후) #최고가가 최저가대비 aa틱 이상로 상승한적이 없으면 if OO > 0 and HH <= LL+PriceScale*aa Then #최고가-bb틱이상 하락시 매수 Buy("b",AtLimit,HH-bb*PriceScale); 즐거운 하루되세요 > 예스요 님이 쓴 글입니다. > 제목 : 문의 드립니다.~~~~ > 항상 감사합니다~` 의도와는 수식의 결과가 다르게 나와 if HH > 0 and H > HH Then HH = H; if LL > 0 and L < LL Then LL = L; if OO > 0 and LL >= HH-PriceScale*nn Then sell("s",AtLimit,LL+mm*PriceScale); if OO > 0 and HH <= LL+PriceScale*aa Then Buy("b",AtLimit,HH-bb*PriceScale); 위의 식의 주석을 달아 상세히 설명해 주시면 감사하겠습니다~~ > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 문의 드립니다.~~~~ > 안녕하세요 예스스탁입니다. input : ntime(100000),nn(10),mm(5),aa(10),bb(10); var : OO(0),HH(0),LL(0); if (sdate != sdate[1] and stime >= ntime) or (sdate == sdate[1] and stime >= ntime and stime[1] < ntime) Then { OO = O; HH = H; LL = L; } if HH > 0 and H > HH Then HH = H; if LL > 0 and L < LL Then LL = L; if OO > 0 and LL >= HH-PriceScale*nn Then sell("s",AtLimit,LL+mm*PriceScale); if OO > 0 and HH <= LL+PriceScale*aa Then Buy("b",AtLimit,HH-bb*PriceScale); 즐거운 하루되세요 > 예스요 님이 쓴 글입니다. > 제목 : 문의 드립니다.~~~~ > 수고하십니다. - 10시 시가부터 형성되는 틱봉 고가에서 n틱(변수처리)이상 하락하지 않고 m틱(변수처리)이상 상승시에는 저가(10시 시가부터 형성된)+m틱(변수처리)에 역추세 매도진입 - 10시 시가부터 형성되는 틱봉 저가에서 a틱(변수처리)이상 상승하지않고 b틱(변수처리)이상 하락시에는 고가(10시 시가부터 형성된)-b틱에(변수처리) 역추세 매수진입하는 진입식을 부탁드립니다.
프로필 이미지
예스요
2021-11-23
703
글번호 153844
시스템
답변완료

부탁드립니다

$,안녕하세요 1,최근n일동안 고저진폭이 가장'작은폭의 포인트값를 당일'저가부터 계산해서 그 값만큼 '위로 추세선을 우측 그리기 합니다. *최근n일동안 고저진폭이 가장'작은폭의 포인트값를 당일'고가부터 계산해서 그 값만큼 '아래로 추세선을 우측 그리기 합니다. 2.최근n일동안 고저진폭이 가장'큰폭의 포인트값를 당일'저가부터 계산해서 그 값만큼 '위로 추세선을 우측 그리기 합니다. *최근n일동안 고저진폭이 가장'큰폭의 포인트값를 당일'고가부터 계산해서 그 값만큼 '아래로 추세선을 우측 그리기 합니다. 3,최근n일동안 고저진폭이 (가장'작은폭+가장'큰폭)/2의 포인트값를 당일'저가부터 계산해서그 값만큼 '위로 추세선을 우측 그리기 합니다. *,최근n일동안 고저진폭이 (가장'작은폭+가장'큰폭)/2의 포인트값를 당일'고가부터 계산해서그 값만큼 '아래로 추세선을 우측 그리기 합니다. 위 조건식(1포인트20틱)으로 Plot 출력되게 도움 부탁드립니다. $,고맙습니다.
프로필 이미지
크라켄
2021-11-24
742
글번호 153838
지표
답변완료

지표

지표 1]당일)시고저중종 고가~저가 사이의 10%30%60%80%110%130%(-110%,-130%)라인 1-1전일)시고저중종 고가~저가 사이의 10%30%60%80%110%130%(-110%,-130%)라인 2]이번주지난주~ 3]이번월지난월~
프로필 이미지
호정0688
2021-11-23
718
글번호 153836
지표

시스템식 문의 드립니다.

as
프로필 이미지
맴맴잉
2021-11-23
593
글번호 153835
시스템
답변완료

문의드립니다.

항상 감사드립니다. 현재 캔들 기준 이전 n번째 캔들의 고가 돌파시 즉시 매수, 저가 돌파시 즉시 매도. 손절은 매수는 n번째 캔들의 저가를 돌파시,매도는 n번째 캔들의 고가를 돌파시. 그리고 현재캔들 기준인데, 거래시간 전의 캔들은 포함하지 않는 건지요? 제가 원하는 것은 거래시간 시작이후 첫 캔들이 n번째 이전 캔들의 고가 저가를 반영해서 로직대로 진행하는 것입니다. 수식을 작성했는데요. 안 맞는 부분이 있어서 수정 부탁드립니다. 감사합니다. input : n1(n); input : StartTime(235000),EndTime(060000); input : 익절틱수(800),손절틱수(0),거래횟수(10); var : Tcond(false), entry(0); IF Endtime > starttime Then SetStopEndofday(Endtime); Else { if sDate != sDate[1] Then SetStopEndofday(Endtime); } if (NextBarSdate != sdate and NextBarStime >= EndTime) or (NextBarSdate == sdate and NextBarStime >= EndTime and stime < EndTime) Then Tcond = False; if (NextBarSdate != sdate and NextBarStime >= StartTime) or (NextBarSdate == sdate and NextBarStime >= StartTime and stime < StartTime) Then { Tcond = true; entry = 0; IF Endtime <= starttime Then { SetStopEndofday(0); } } if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if Tcond == true Then { if MarketPosition <= 0 and NextBarOpen <= H[n1] and entry < 거래횟수 Then Buy("b1",AtStop,H[n1]+PriceScale*1); if MarketPosition >= 0 and NextBarOpen >= L[N1] and entry < 거래횟수 Then Sell("s1",AtStop,L[N1]-PriceScale*1); if MarketPosition == 1 Then ExitLong("bx",AtStop,L[N1]-PriceScale*1); if MarketPosition == -1 Then ExitShort("sx",AtStop,H[n1]+PriceScale*1); } SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopLoss(PriceScale*손절틱수,PointStop);
프로필 이미지
jesten77
2021-11-23
870
글번호 153834
시스템
답변완료

수고하십니다.예비신호에 대하여

빠른 답변에 감사드립니다. 예비신호 발생시에 변수로 예비신호가 나왔다는것을 저장하는 방법이 있나요?
프로필 이미지
구름달
2021-11-23
633
글번호 153830
시스템
답변완료

RSI

===================================================================== Inputs: Length(NumericSimple); Variables: Counter(0), DownAmt(0), UpAmt(0), UpSum(0), DownSum(0), UpAvg(0), DownAvg(0); If CurrentBar == 1 AND Length > 0 Then Begin UpSum = 0; DownSum = 0; For Counter = 0 To Length - 1 Begin UpAmt = C[Counter] - C[Counter+1]; If UpAmt >= 0 Then DownAmt = 0; Else Begin DownAmt = -UpAmt; UpAmt = 0; End; UpSum = UpSum + UpAmt; DownSum = DownSum + DownAmt; End; UpAvg = UpSum / Length; DownAvg = DownSum / Length; End Else If CurrentBar > 1 AND Length > 0 Then Begin UpAmt = C[0] - C[1]; If UpAmt >= 0 Then DownAmt = 0; Else Begin DownAmt = -UpAmt; UpAmt = 0; End; UpAvg = (UpAvg[1] * (Length - 1) + UpAmt) / Length; DownAvg = (DownAvg[1] * (Length - 1) + DownAmt) / Length; End; If UpAvg + DownAvg <> 0 Then RSI = 100 * UpAvg / (UpAvg + DownAvg); Else RSI = 0; ========================================================================== RSI 지표 구성이 위와 같습니다.(예스랭귀지 내용 복사했습니다.) 스팟에서 RSI 지료를 쓰려고 하는데, 확장차트에서 할 수 없는 상황이 되었습니다. 위의 식을 스팟에서 구현하도록 도움 부탁드리겠습니다. CurrentBar를 어떻게 처리할 지 몰라서 여쭤봅니다. 확장 차트에서 C[Counter] ==> CT[i].GetClose(Counter) 이런 식으로 구성할 예정입니다.
프로필 이미지
cs아빠
2021-11-23
493
글번호 153829
지표
답변완료

지표 수식 부탁드립니다.

분봉에서 상한가 마감한 다음날 고가 대비 -10, -15, -20, -25, -30가 선으로 나타나게끔 지표 수식 부탁드립니다. 감사합니다.
프로필 이미지
after512
2021-11-23
617
글번호 153827
지표

선물대장 님에 의해서 삭제되었습니다.

프로필 이미지
선물대장
2021-11-23
0
글번호 153824
시스템