커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

문의 드립니다

5선,10선,15선의 이동평균선이 모두 상향 정배열일 때 4계약을 매수 진입 하여 1차청산 100틱,2차청산 200틱,3차청산 300틱에 3계약을 분할 청산하고 나머지 1계약은 Setstoptrailing (0.01,4.99,pointstop);에 청산 되고 ※ 손절은 5선이 10선을 데드크로스 할때 손절이 되게 해 주십시요 5선,10선,15선의 이동평균선이 모두 하향 역배열일 때 4계약을 매도 진입 하여 1차청산 100틱,2차청산 200틱,3차청산 300틱에 3계약을 분할 청산하고 나머지 1계약은 Setstoptrailing (0.01,1.92,pointstop);에 청산 되는 수식을 부탁 드립니다 ※ 손절은 5선이 10선을 골든크로스 할때 손절이 되게 해 주십시요
프로필 이미지
영구없다
2018-03-08
276
글번호 117242
시스템
답변완료

문의입니다.

var : tl(0),tx(0),tx1(0); var1 = (H+L)/2; TL_Delete(TL); TL = TL_New(sdate[1],stime[1],var1,sdate,stime,var1); TL_SetExtRight(TL,true); TL_SetColor(TL,YELLOW); TL_SetSize(TL,1); Text_Delete(tx); Tx = Text_New(sdate,stime,var1,NumToStr(var1,2)); Tx1 = Text_SetStyle(tx, 0, 1); Tx1 = Text_SetColor(tx, WHITE); 아래 지운 그 질문을 혼자 해결 해보니 이렇게 되었는데.. 한가지 해결 못해서 고민 끝에 도움 요청 드립니다. 캔들에 글씨가 박혀서 나오는데 그 글씨를 출현하고 있는 수평선 오른쪽 맨~끝 위에 나오게 할 수 없나요? 그리고 글씨 굵기 조절 명령어는 없는건가요? 그리고 수평선 길이 조절할 수 있는 명령어가 뭐죠? 수평선이 오른쪽으로 길게 나오는데 이것을 짧게 조절할 수 없나요? 추가로 지금 수평선 하나씩 나오는데 이것을 연속적으로 짧은 수평선을 캔들에 표시하고 싶은데 방법을 알고 싶습니다. 연속적으로 짧은 수평선이 나오면 가격 숫자 글씨가 연속적으로 표시 될것 같은데 혹시 캔들 넘어갈때 마다 전캔들의 숫자가 없어지고 다음 캔들에 숫자 표시 되고 연속적으로 하고, 짧은 수평선이 그대로 남아 표시 가능하나요? 가능하다면 수식을 어떻게 구성 되죠?
프로필 이미지
스오어스
2018-03-09
317
글번호 117241
지표
답변완료

지표수정

아래수식에서 파란점 빨간점을 각각봉마다 표시되게 부탁합니다. 늘 감사합니다. var : Tx(0); var1 = ma(C,10); var2 = ma(C,10); if crossup(c,var1) Then{ Tx = Text_New(sdate,stime,L-PriceScale*20,"1●"); Text_SetColor(Tx,RED); } if CrossDown(c,var1) Then{ Tx = Text_New(sdate,stime,H+PriceScale*20,"2●"); Text_SetColor(Tx,BLUE); }
프로필 이미지
야크
2018-03-08
291
글번호 117240
지표
답변완료

기준봉을 1로 할 경우 마지막 봉인지 확인하는 방법 문의

안녕하세요. 기준봉을 1로 할 경우 마지막 봉인지 확인하는 수식이 어떻게 되는지 확인 부탁 드립니다. 감사합니다.
프로필 이미지
올데이
2018-03-08
266
글번호 117239
종목검색
답변완료

문의드립니다.

수고하십니다. 아래 수식을 검색하여 붙임 그림과 같이 검색된 골든브릿지증권 차트입니다. 1. 이 검색식에서 기준봉이 오늘 봉인지 어제 봉인지요 2. 오늘, 어제 봉 두봉중 어제봉의 저점을 기준으로 이전10봉까지 1% 이내의 봉의 개수가 3개 이하라 판단되는데 어디가 잘 못 되었는지 알려 주시면 고압겠습니다. 3. 그리고 오늘봉도 카운트에 포함되나요 = 아래 검색식 구현 의도 = 일봉상 오늘 현재봉(기준봉)의 저점과 최근 10봉중 캔들의 저점을 비교하여 +,- 1%(범위)이내인 봉이 5개 이상 나오는 종목중을 검색하는 식 input : P(10),Per(1),N(5); var : cnt(0),count(0); count = 0; for cnt = 1 to P{ if L[cnt] <= L*(1+Per/100) and L[cnt] >= (1-Per/100) Then count = count+1; } if count >= N Then find(count);
프로필 이미지
자아준
2018-03-08
300
글번호 117234
종목검색
답변완료

부탁드립니다

아래수식에서하면 항셍인덱스가 18시15분 정도에서 시작하던데 이걸 10시부터 새벽2시까지로 수정부탁드립니다 input : N(40),P1(1),P2(10),P3(20),P4(60),P5(120),z1(20); var : HR(0),LR(0),cnt(0),sum1(0),avgv1(0),sum2(0),avgv2(0),sum3(0),avgv3(0),sum4(0),avgv4(0),sum5(0),avgv5(0); sum1 = 0; sum2 = 0; sum3 = 0; sum4 = 0; sum5 = 0; for cnt = 1 to P5{ if cnt <= P1 Then sum1 = sum1+(dayhigh(cnt)-daylow(cnt)); if cnt <= P2 Then sum2 = sum2+(dayhigh(cnt)-daylow(cnt)); if cnt <= P3 Then sum3 = sum3+(dayhigh(cnt)-daylow(cnt)); if cnt <= P4 Then sum4 = sum4+(dayhigh(cnt)-daylow(cnt)); if cnt <= P5 Then sum5 = sum5+(dayhigh(cnt)-daylow(cnt)); } #P1일 평균진폭 if dayhigh(P1) > 0 Then avgv1 = sum1/P1; #P2일 평균진폭 if dayhigh(P2) > 0 Then avgv2 = sum2/P2; #P3일 평균진폭 if dayhigh(P3) > 0 Then avgv3 = sum3/P3; #P4일 평균진폭 if dayhigh(P4) > 0 Then avgv4 = sum4/P4; #P5일 평균진폭 if dayhigh(P5) > 0 Then avgv5 = sum5/P5; if avgv1 > 0 then{ plot2(avgv1/PriceScale,"1"); } if avgv2 > 0 then{ plot4(avgv2/PriceScale,"10"); } if avgv3 > 0 then{ plot6(avgv3/PriceScale,"20"); } if avgv4 > 0 then{ plot8(avgv4/PriceScale,"60"); } if avgv5 > 0 then{ plot10(avgv5/PriceScale,"120"); } #당일진폭과 n일 최고,최저진폭 HR = dayhigh(1)-daylow(1); LR = dayhigh(1)-daylow(1); for cnt = 1 to N{ if dayhigh(cnt)-daylow(cnt) > HR Then HR = dayhigh(cnt)-daylow(cnt); if dayhigh(cnt)-daylow(cnt) < LR Then LR = dayhigh(cnt)-daylow(cnt); } plot21(HR/PriceScale,"최대진폭"); plot22(LR/PriceScale,"최소진폭"); var1=dayhigh; var2=daylow; var3=dayhigh-daylow; var4=dayhigh-C; var5=C-daylow; plot23(var4/PriceScale,"---고가-현재가"); plot24(var5/PriceScale,"+++현재가-저가"); plot25((var4+var5)/PriceScale/2,"중가"); plot26((var3-var5)/PriceScale,"눌림"); plot27((var1-var2)/PriceScale,"당일진폭"); plot28(z1,"기입");
프로필 이미지
마르뚝
2018-03-08
293
글번호 117233
지표
답변완료

부턱드립니다

아래 수식에서 하루전 또는 N일전의 수식부탁드립니다 input : 시작시간(173000),끝시간(183000); if stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간) Then{ var1 = O; var2 = H; var3 = L; var4 = C; Condition1 = true; } if stime == 끝시간 or (stime > 끝시간 and stime[1] < 끝시간) Then Condition1 = false; if Condition1 == true then{ if H > var2 Then var2 = H; if L < var3 Then var3 = L; } plot1(var1,"시가"); plot2(var2,"고가"); plot3(var3,"저가"); plot4((var2+var3)/2,"중가"); plot5(var4,"close종가");
프로필 이미지
마르뚝
2018-03-08
278
글번호 117232
지표
답변완료

문의드립니다.

도움주시는 덕분에 도전하고 있습니다. 매번 감사합니다. 1. 강조 아래 지표에서 매수방향(값이 0보다 크면 매수 방향)이면 매도방향으로 크게(크게는 1개봉전 대비 크기가 n이상 일때로 정함) 변할 때 강조 코딩 부탁드립니다. if bdate != bdate[1] Then {var1 = 0; var2 =0; var3=0;} if C > O Then var1 = var1 + C-O; if C < O Then var2 = var2 + O-C; var3 = ((var1 - var2)/dayopen)*1000; plot1(var3); 2. 기타 위 지표에서 매수방향이라면 매수방향 고점(시가부터 고점까지의 값) 대비 n% 이상 되돌렸을 때 고가 저가 저장, 매도는 반대 3. 강조 위 지표에서 장시작후 3개봉까지의 합이 n이상일 때 강조 4. 56974 답변 부탁드립니다.
프로필 이미지
잡다백수
2018-03-08
279
글번호 117225
시스템
답변완료

진입시간 제한

input조절에 일정시간 이후 진입을 제한하는 수식을 추가바랍니다. 고맙습니다. **************** input : s1(20),s2(20),X1(20),X2(20),진입시간(090000); var : T1(0),entry(0),LL(0),EH(0); if Bdate != Bdate[1] Then T1 = TotalTrades; if MarketPosition == 0 Then entry = TotalTrades-T1; Else entry = (TotalTrades-T1)+1; if MarketPosition == 0 and entry == 0 and stime >= 진입시간 and C >= daylow+PriceScale*s1 and C[1] < daylow+PriceScale*s1 Then sell("s1"); if MarketPosition == 1 Then{ if CurrentContracts > CurrentContracts[1] Then EH = H; if H > EH Then EH = H; if entry == 1 and C <= EH-PriceScale*X1 Then ExitShort("sx1"); } if TotalTrades > TotalTrades[1] Then LL = L; if L < LL Then LL = L; if MarketPosition == 0 and entry == 1 and stime >= 진입시간 and C >= LL+PriceScale*s2 and C[1] < LL+PriceScale*s2 Then sell("s2"); if MarketPosition== 1 and entry == 2 Then exitlong("sx2",AtStop,EntryPrice-PriceScale*X2);
프로필 이미지
좌오비우오비
2018-03-08
274
글번호 117219
시스템