커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

검색식 부탁합니다

수고하십니다. 종목검색식 부탁드립니다. 20이동평균을 이용하여 일봉이나 분봉에서 최근 N봉이 20이동평균선 위에 있는 종목을 검색할 수 있는 식을 부탁합니다.
프로필 이미지
등정
2018-05-17
216
글번호 118971
종목검색
답변완료

수평선 가격표시

감사합니다 1) 각 분봉 단위 1봉전 고가기준 +가% -가%선을 현재 분봉에 표시 각 분봉 단위 및 고가기준 +-%선은 변수 처리 2) 현재 분봉이 5분봉이라면 이전 15분봉의 고가기준 +가% -가%선을 현재 5분봉에 표시 타주기 분봉 및 고가기준 +-%선은 변수 처리 3) 지정가 기준 +가% -가%선을 추세선 지표로 표시하고 가격값 표시 지정가 변수처리
프로필 이미지
jdavid
2018-05-17
239
글번호 118970
지표
답변완료

부탁 드립니다.

항상 만족할 만한 도움 주심에 감사 드립니다. 다음은 57804번에서 "예를들어 지난달 4째주 금요일 0700과 이번달 첫째주 화요일 0700를 연결하는선"을 나타내는 수식으로 작성해주신 것입니다. 잘 가동되고 있습니다. 이것을 임의의 전달, 임의의 주, 임의의 요일을 외부 변수로 입력할수 있도록 부탁 드리고자 합니다. 예를 든다면 2달전 3번째 화요일의 07:00에 시작점과 1달전 4번째 목요일의 07:00에 종료점을 연결하는선 또 다른예를 든다면 3달전 1번째 수요일의 07:00에 시작점과 현재달 2번째 월요일 07:00에 종료점을 연결하는 선 등 입니다. 미리 경배로 감사 인사 올립니다. var : cnt(0),TL(0); Array : D1[10](0),T1[10](0),C1[10](0); Array : D11[10](0),T11[10](0),C11[10](0); Array : D2[10](0),T2[10](0),C2[10](0); Array : D21[10](0),T21[10](0),C21[10](0); #영업일 기준 월변경 if bdate > bdate[1]+30 Then{ #횟수 카운트 하는 변수는 0으로 초기화 var1 = 0; var2 = 0; #전달 카운트 값 다른변수에 저장 var11 = var1[1]; var21 = var2[1]; #기존저장된 값을 전월값을 알기 위해 다른변수에 옮김 for cnt = 1 to 9{ D11[cnt] = D1[cnt]; T11[cnt] = T1[cnt]; C11[cnt] = C1[cnt]; D21[cnt] = D2[cnt]; T21[cnt] = T2[cnt]; C21[cnt] = C2[cnt]; } #날짜/시간/종가 저장하는 배열들은 0으로 초기화 for cnt = 0 to 9{ D1[cnt] = 0; T1[cnt] = 0; C1[cnt] = 0; D2[cnt] = 0; T2[cnt] = 0; C2[cnt] = 0; } } #영업일 변경되고 화요일이면 if bdate != bdate[1] and DayOfWeek(bdate) == 2 Then { #카운트 1씩 증가 var1 = var1+1; #카운트에 해당하는 배열방에 날짜 시간 종가 저장 D1[var1] = sdate; T1[var1] = stime; C1[var1] = C; //첫번째 화요일이고 지날달 금요일 카운트가 4회이상 if var1 == 1 and var21 >= 4 then { TL_Delete(TL); TL = TL_new(D21[4],T21[4],C21[4],D1[1],T1[1],C1[1]); } } #영업이 변경되고 금요일이면 if bdate != bdate[1] and DayOfWeek(bdate) == 5 Then { #카운트 1씩 증가 var2 = var2+1; #카운트에 해당하는 배열방에 날짜 시간 종가 저장 D2[var2] = sdate; T2[var2] = stime; C2[var2] = C; }
프로필 이미지
yes
2018-05-17
225
글번호 118969
지표
답변완료

문의드립니다.

아래식에서 *** 부분을 추가하고 싶습니다. 부탁드립니다. 일부 작성을 해 보았습니다. ***에 맞게 수식 수정하시어 아래식에 추가 부탁 드립니다. 감사합니다. *** 수식추가 요청사항 crossup(mav2,mav3) 매수되면 crossdown(mav2,mav3) 전에 아래 1,2번을 한번만 실행하고 싶습니다. 1번) 기준(10틱) 이상 이익이면, 하락(50틱)만큼 하락하면 매수 포지션 청산 2번) 청산 후 다시 mav2(10일선)이 상승하면 매수 재 진입 만약, 1번)에 의한 청산후 crossdown(mav2,mav3) 되면 2번) 실행 없이 매도 진입 하여 1번),2번)을 한번만 실행 매도, 반대 ***작성해본 수식 # 1. 기준(10틱) 이상 수익이면 하락(50틱)하면 매수 청산 (10틱수익/-40틱청산, 70틱수익/20틱청산) if MarketPosition == 1 Then{ BH = highest(H,BarsSinceEntry); if BH >= EntryPrice+PriceScale*기준 Then{ ExitLong("B익절1",AtStop,BH-PriceScale*하락); } # 2. 다시 10일선이 상승하면 재 진입 if mav2 > mav2[1] Then buy("Buy2"); # 1. 기준(10틱) 이상 수익이면 하락(50틱)하면 매수 청산 (10틱수익/-40틱청산, 70틱수익/20틱청산) if MarketPosition == -1 Then{ SL = Lowest(L,BarsSinceEntry); if SL <= EntryPrice-PriceScale*기준 Then{ ExitShort("S익절1",AtStop,SL+PriceScale*하락); } # 2. 다시 10일선이 하락하면 재 진입 if mav2 < mav2[1] Then sell("Sell2"); 아래식 -------------------------------------------------------------- input : P1(3),P2(10),P3(280),기준(10), 하락(50), 손절(150); var : mav2(0),mav3(0); var : BH(0),SL(0); mav2 = ma(c,P2); mav3 = ma(c,P3); #ATR Input : ATR추적(20), ATR손절(20); #ATR 청산 Var : PosHigh(0), PosLow(0); #ATR 청산 //진입 if crossup(mav2,mav3) Then buy("Buy"); if CrossDown(mav2,mav3) Then sell("Sell"); # ATR 추적 청산 PosHigh = Highest(H, BarsSinceEntry+1); PosLow = Lowest(L,BarsSinceEntry+1); If MarketPosition <> 0 Then { ExitLong("EL_추적ATR", AtStop,PosHigh-ATR(20)*ATR추적); Exitshort("ES_추적ATR", AtStop,PosLow+ATR(20)*ATR추적); } # ATR 손절 청산 If MarketPosition <> 0 Then { ExitLong("EL_손절ATR", AtStop,EntryPrice-ATR(20)*ATR손절); Exitshort("ES_손절ATR", AtStop,EntryPrice+ATR(20)*ATR손절); } # 최대손절 청산 if MarketPosition == 1 Then{ BH = highest(H,BarsSinceEntry); ExitLong("B손절",AtStop,EntryPrice-PriceScale*손절); } if MarketPosition == -1 Then{ SL = Lowest(L,BarsSinceEntry); ExitShort("S손절",AtStop,EntryPrice+PriceScale*손절); }
프로필 이미지
라떼처럼
2018-05-17
208
글번호 118968
시스템
답변완료

시스템 수식 문의드립니다....

수고가 많으시죠 시스템식 문의 드립니다... bollinger bands (40 , 2) 이평선 5일 20일 문의 내용은 다음과 같읍니다... 1 볼린저밴드 상단보다 고가가 큰 봉이 20봉 이내에 있고 5일 20일 데드크로스에 매도 2 볼린저밴드 하단보다 저가가 적은 봉이 20봉 이내에 있고 5일 20일 골든크로스에 매수 이상입니다...수고하세요
프로필 이미지
우섭
2018-05-16
196
글번호 118967
시스템
답변완료

수식 작성 부탁드립니다.

예스트레이더에 월, 일, 분, 틱 단위는 있는데, 연 단위는 없더라구요. 그래서 지표로 만들고 싶은데, 연 시가, 고가, 저가 라인 작성 부탁 좀 드리겠습니다.
프로필 이미지
풍운객
2018-05-16
209
글번호 118966
지표

요타 님에 의해서 삭제되었습니다.

프로필 이미지
요타
2018-05-16
0
글번호 118965
시스템
답변완료

부탁드립니다

월봉시가 돌파종목을 검색하고 싶습니다 감사합니다
프로필 이미지
매화산삼
2018-05-16
199
글번호 118964
종목검색
답변완료

수식첨가부탁드립니다

#,아래수식에서 파동의 1/2일선을 우측 그리기수식을 추가 삽입하려고, var;TL2 추가하고 TL2 = TL_new(HD[1],HT[1],(HH[1]+LL)/2,sdate,stime,(HH[1]+LL)/2); 수식을 추가하니까 배열요소값이 와야한다는 오류가 뜨내요.. 도움부탁드립니다. #,제가 원하는식은 현재 수식 조건에다가 파동의 중심값을 추가로 오른쪽 그리기로 하는 식입니다. Input : af(0.02), maxAF(0.2),n(5); var : T(0),TL1(0),cnt(0); Array : HH[10](0),HD[10](0),HT[10](0); Array : LL[10](0),LD[10](0),LT[10](0); Array : upv[10](0),dnv[10](0); var1 = CSar(af,maxAF); if crossup(c,var1) Then { T = 1; HD[0] = sdate; HT[0] = stime; HH[0] = H; for cnt = 1 to 9 { HD[cnt] = HD[cnt-1][1]; HT[cnt] = HT[cnt-1][1]; HH[cnt] = HH[cnt-1][1]; TL_Delete(upv[cnt]); if HH[cnt] > 0 and cnt < N Then { upv[cnt] = TL_New(HD[cnt],HT[cnt],HH[cnt],sdate,stime,HH[cnt]); TL_SetExtRight(upv[cnt],true); TL_SetColor(tl1,GRAY); TL_SetColor(upv[cnt],RED); TL_SetStyle(upv[cnt],3); } } if LL[0] > 0 Then { TL1 = TL_new(LD[0],LT[0],LL[0],HD[0],HT[0],HH[0]); } TL_Delete(upv[0]); upv[0] = TL_New(sdate[1],stime[1],HH[0],HD[0],HT[0],HH[0]); TL_SetExtRight(upv[0],true); } if CrossDown(c,var1) Then { T = -1; LD[0] = sdate; LT[0] = stime; LL[0] = L; for cnt = 1 to 9 { LD[cnt] = LD[cnt-1][1]; LT[cnt] = LT[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; TL_Delete(dnv[cnt]); if LL[cnt] > 0 and cnt < N Then { dnv[cnt] = TL_New(LD[cnt],LT[cnt],LL[cnt],sdate,stime,LL[cnt]); TL_SetExtRight(dnv[cnt],true); TL_SetColor(tl1,GRAY); TL_SetColor(dnv[cnt],BLACK); TL_SetStyle(dnv[cnt],3); } } if HH[0] > 0 Then { TL1 = TL_new(HD[0],HT[0],HH[0],LD[0],LT[0],LL[0]); } TL_Delete(dnv[0]); dnv[0] = TL_New(sdate[1],stime[1],LL[0],LD[0],LT[0],LL[0]); TL_SetExtRight(dnv[0],true); } if T == 1 then { if H > HH[0] Then { HH[0] = H; HD[0] = sdate; HT[0] = stime; TL_SetEnd(TL1,HD[0],HT[0],HH[0]); } TL_Delete(upv[0]); upv[0] = TL_New(HD[0],HT[0],HH[0],sdate,stime,HH[0]); TL_SetExtRight(upv[0],true); TL_SetColor(tl1,YELLOW); TL_SetColor(upv[0],MAGENTA); } if T == -1 then { if L < LL[0] Then { LL[0] = L; LD[0] = sdate; LT[0] = stime; TL_SetEnd(TL1,LD[0],LT[0],LL[0]); } TL_Delete(dnv[0]); dnv[0] = TL_New(LD[0],LT[0],LL[0],sdate,stime,LL[0]); TL_SetExtRight(dnv[0],true); TL_SetColor(tl1,CYAN); TL_SetColor(dnv[0],BLUE); } $$$,언제나 늘 고맙습니다.
프로필 이미지
회원
2018-05-16
221
글번호 118963
지표