커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

도사님 도움부탁드려요.

1. 두번째 갱신되었을경우, 별모양 추가해주세요. 3번째갱신되었을경우,별모양 input : 전환포인트(0.8); Array : HD[10](0),HT[10](0),HV[10](0); Array : LD[10](0),LT[10](0),LV[10](0); var : cnt(0),Hprice(0),Lprice(0); var : UpTrend(false),DownTrend(False),Trend(0),Trend1(0),ZigZagTL(0),TX(0),tx1(0); var : TL1(0),TL2(0),TL3(0),TL4(0),TL5(0),TL6(0),TL7(0),TL8(0),t(0); Plot1 (0); HPrice = H; LPrice = L; if Index == 0 or Bdate != Bdate[1] Then { HD[0] = sDate; HT[0] = sTime; HV[0] = HPrice; LD[0] = sDate; LT[0] = sTime; LV[0] = LPrice; trend = 0; trend1 = 0; t = 0; } Else { if Trend == 0 Then { if L < LV[0] Then { LD[0] = sDate; LT[0] = sTime; LV[0] = LPrice; } if H > HV[0] Then { HD[0] = sDate; HT[0] = sTime; HV[0] = HPrice; } } UpTrend = HPrice >= LV[0]+전환포인트; DownTrend = LPrice <= HV[0]-전환포인트; if trend <= 0 and UpTrend == true Then { trend = 1; trend1 = trend[1]; For cnt = 9 DownTo 1 { HD[cnt] = HD[cnt-1]; HT[cnt] = HT[cnt-1]; HV[cnt] = HV[cnt-1]; } HD[0] = sDate; HT[0] = sTime; HV[0] = HPrice; ZigZagTL = TL_New(LD[0],LT[0],LV[0],HD[0],HT[0],HV[0]); TL_SetColor(ZigZagTL,Gold); TL_SetSize(ZigZagTL,1); TX = Text_New(HD[0],HT[0],HV[0],NumToStr(HV[0]-LV[0],2)+" "); Text_SetStyle(TX,1,1); Text_SetColor(TX,Black); Text_SetSize(tx,25); Text_SetBold(tx,1); var2 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(23.6/100)); var3 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(38.2/100)); var4 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(50/100)); var5 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(61.8/100)); var6 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(76.4/100)); TL1 = TL_New(LD[0],LT[0],HV[0],NextBarSdate,NextBarStime,HV[0]); TL2 = TL_New(LD[0],LT[0],var2,NextBarSdate,NextBarStime,var2); TL3 = TL_New(LD[0],LT[0],var3,NextBarSdate,NextBarStime,var3); TL4 = TL_New(LD[0],LT[0],var4,NextBarSdate,NextBarStime,var4); TL5 = TL_New(LD[0],LT[0],var5,NextBarSdate,NextBarStime,var5); TL6 = TL_New(LD[0],LT[0],var6,NextBarSdate,NextBarStime,var6); TL7 = TL_New(LD[0],LT[0],LV[0],NextBarSdate,NextBarStime,LV[0]); TL_SetColor(TL1,Magenta); TL_SetColor(TL2,Gold); TL_SetColor(TL3,Orange); TL_SetColor(TL4,Green); TL_SetColor(TL5,Orange); TL_SetColor(TL6,Gold); TL_SetColor(TL7,Magenta); TL_SetSize(TL1,1); t = t+1; if t == 1 Then { tx1 = Text_New(NextBarSdate,NextBarStime,LV[0]-PriceScale*2,"■"); } } Else if trend >= 0 and DownTrend Then//하락추세 전환 { trend = -1; trend1 = trend[1]; For cnt = 9 DownTo 1 { LD[cnt] = LD[cnt-1]; LT[cnt] = LT[cnt-1]; LV[cnt] = LV[cnt-1]; } LD[0] = sDate; LT[0] = sTime; LV[0] = LPrice; ZigZagTL = TL_New(HD[0],HT[0],HV[0],LD[0],LT[0],LV[0]); TL_SetColor(ZigZagTL,Gold); TL_SetSize(ZigZagTL,1); TX = Text_New(LD[0],LT[0],LV[0],NumToStr(HV[0]-LV[0],2)+" "); Text_SetStyle(TX,1,0); Text_SetColor(TX,Black); Text_SetSize(tx,25); Text_SetBold(tx,1); var2 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(23.6/100)); var3 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(38.2/100)); var4 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(50/100)); var5 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(61.8/100)); var6 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(76.4/100)); TL1 = TL_New(HD[0],HT[0],HV[0],NextBarSdate,NextBarStime,HV[0]); TL2 = TL_New(HD[0],HT[0],var2,NextBarSdate,NextBarStime,var2); TL3 = TL_New(HD[0],HT[0],var3,NextBarSdate,NextBarStime,var3); TL4 = TL_New(HD[0],HT[0],var4,NextBarSdate,NextBarStime,var4); TL5 = TL_New(HD[0],HT[0],var5,NextBarSdate,NextBarStime,var5); TL6 = TL_New(HD[0],HT[0],var6,NextBarSdate,NextBarStime,var6); TL7 = TL_New(HD[0],HT[0],LV[0],NextBarSdate,NextBarStime,LV[0]); TL_SetColor(TL1,Magenta); TL_SetColor(TL2,Gold); TL_SetColor(TL3,Orange); TL_SetColor(TL4,Green); TL_SetColor(TL5,Orange); TL_SetColor(TL6,Gold); TL_SetColor(TL7,Magenta); TL_SetSize(TL7,1); t = t+1; if t == 1 Then { tx1 = Text_New(NextBarSdate,NextBarStime,HV[0]+PriceScale*2,"■"); } } Else { if trend == 1 Then { if trend1 == 0 Then { LV[0] = DayLow; } if HPrice > HV[0] Then { HD[0] = sDate; HT[0] = sTime; HV[0] = HPrice; TL_SetEnd(ZigZagTL,HD[0],HT[0],HV[0]); Text_SetLocation(TX,HD[0],HT[0],HV[0]); Text_SetString(TX,NumToStr(HV[0]-LV[0],2)+" "); var2 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(23.6/100)); var3 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(38.2/100)); var4 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(50/100)); var5 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(61.8/100)); var6 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(76.4/100)); TL_SetBegin(TL1,LD[0],LT[0],HV[0]); TL_SetBegin(TL2,LD[0],LT[0],Var2); TL_SetBegin(TL3,LD[0],LT[0],Var3); TL_SetBegin(TL4,LD[0],LT[0],Var4); TL_SetBegin(TL5,LD[0],LT[0],Var5); TL_SetBegin(TL6,LD[0],LT[0],Var6); TL_SetBegin(TL7,LD[0],LT[0],LV[0]); TL_SetEnd(TL1,Sdate,Stime,HV[0]); TL_SetEnd(TL2,Sdate,Stime,Var2); TL_SetEnd(TL3,Sdate,Stime,Var3); TL_SetEnd(TL4,Sdate,Stime,Var4); TL_SetEnd(TL5,Sdate,Stime,Var5); TL_SetEnd(TL6,Sdate,Stime,Var6); TL_SetEnd(TL7,Sdate,Stime,LV[0]); if t == 1 Then Text_SetLocation(tx1,sDate,sTime,LV[0]-PriceScale*2); } } if trend == -1 Then { if trend1 == 0 Then { HV[0] = DayHigh; } if LPrice < LV[0] Then { LD[0] = sDate; LT[0] = sTime; LV[0] = LPrice; TL_SetEnd(ZigZagTL,LD[0],LT[0],LV[0]); Text_SetLocation(TX,LD[0],LT[0],LV[0]); Text_SetString(TX,NumToStr(HV[0]-LV[0],2)+" "); var2 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(23.6/100)); var3 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(38.2/100)); var4 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(50/100)); var5 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(61.8/100)); var6 = 10^(LOG10(HV[0])-(LOG10(HV[0])-LOG10(LV[0]))*(76.4/100)); TL_SetBegin(TL1,HD[0],HT[0],HV[0]); TL_SetBegin(TL2,HD[0],HT[0],Var2); TL_SetBegin(TL3,HD[0],HT[0],Var3); TL_SetBegin(TL4,HD[0],HT[0],Var4); TL_SetBegin(TL5,HD[0],HT[0],Var5); TL_SetBegin(TL6,HD[0],HT[0],Var6); TL_SetBegin(TL7,HD[0],HT[0],LV[0]); TL_SetEnd(TL1,Sdate,Stime,HV[0]); TL_SetEnd(TL2,Sdate,Stime,Var2); TL_SetEnd(TL3,Sdate,Stime,Var3); TL_SetEnd(TL4,Sdate,Stime,Var4); TL_SetEnd(TL5,Sdate,Stime,Var5); TL_SetEnd(TL6,Sdate,Stime,Var6); TL_SetEnd(TL7,Sdate,Stime,LV[0]); if t == 1 Then Text_SetLocation(tx1,sDate,sTime,HV[0]+PriceScale*2); } } } }
프로필 이미지
아이덜
2024-12-24
614
글번호 186563
지표

살빼고싶다 님에 의해서 삭제되었습니다.

프로필 이미지
살빼고싶다
2024-12-24
81
글번호 186562
검색
답변완료

검색식 부탁 드립니다

기준 시가 A=Valuewhen(1,dayclose()>predayclose()*m,dayopen()); 기준 중심 A=Valuewhen(1,dayclose()>predayclose()*m,dayclose()); B=Valuewhen(1,dayclose()>predayclose()*m,dayopen()); (A+B)/2 기준 종가 A=Valuewhen(1,dayclose()>predayclose()*m,dayclose()); 지표 조건 M 1.10 5이평각도 a=avg(c,기간1); b=(a(0)/c)-(a(1)/c); 10이평각도 a=avg(c,기간2); b=(a(0)/c)-(a(1)/c); 20이평각도 a=avg(c,기간3); b=(a(0)/c)-(a(1)/c); 지표조건 기간1 5 기간2 10 기간3 20 기준 시가 기준 중심 기준종가 를 이평각도5이평이 돌파 하는 종목검색식 부탁 드립니다 상단 당일=(dayClose()+dayHigh()+dayLow())/3; A=당일+npdc(1)+npdc(2)+npdc(3)+npdc(4)+npdc(5)+npdc(6)+ npdc(7)+npdc(8)+npdc(9)+npdc(10)+npdc(11)+npdc(12)+npdc(13)+ npdc(14)+npdc(15)+npdc(16)+npdc(17)+npdc(18)+npdc(19); M=A/20; 편차합= pow(당일-M,2)+pow(npdc(1)-M,2)+pow(npdc(2)-M,2)+ pow(npdc(3)-M,2)+pow(npdc(4)-M,2)+pow(npdc(5)-M,2)+ pow(npdc(6)-M,2)+pow(npdc(7)-M,2)+pow(npdc(8)-M,2)+ pow(npdc(9)-M,2)+pow(npdc(10)-M,2)+pow(npdc(11)-M,2)+ pow(npdc(12)-M,2)+pow(npdc(13)-M,2)+pow(npdc(14)-M,2)+ pow(npdc(15)-M,2)+pow(npdc(16)-M,2)+pow(npdc(17)-M,2)+ pow(npdc(18)-M,2)+pow(npdc(19)-M,2); M-D1*sqrt(편차합/20) 상단중심 M1=M-D1*sqrt(편차합/20); (M+M1)/2 지표조건 D1 2 상단 중심을 돌파하는 종목 검색식 부탁 드립니다
프로필 이미지
구경꾼그림자
2024-12-24
589
글번호 186561
종목검색
답변완료

종목검색식 부탁드림니다.

항상 노고에 감사드림니다. 아래의 수식을 종목검색식으로 부탁드림니다. 1)종목수식 a=ma((npredayclose(2)+npredayclose(1)+ dayclose())/3,3)*0.92.5; crossup(c,a) 2)종목수식 a=ma((npredayclose(2)+npredayclose(1)+ dayclose())/3,3)*0.85; crossup(c,a)
프로필 이미지
존슨비치
2024-12-24
547
글번호 186560
종목검색
답변완료

박스 높이(위-아래)

아래 박스 수식의 위 아래의 높이를 구하는 수식 부탁합니다(위-아래) ================================================================= Input : 기준(-10),p(5); var : Vpower(0),Upper(0),Lower(0),mav(0),T(0); var : hh(0),ll(0),dd(0),tt(0),box(0); Vpower = upVol/(upVol+downVol)*100-50; If Vpower > 0 Then Upper = Vpower; Else Upper = 0; If Vpower <= 0 Then lower = Vpower; Else lower = 0; mav = ma(Vpower,p); if CrossUp(기준,mav) Then { T = 1; hh = h; ll = l; dd = sDate; tt = sTime; box = Box_New(sDate,sTime,hh,NextBarSdate,NextBarStime,ll); Box_SetColor(box,Blue); Box_SetFill(box,true,100,true); } if CrossDown(기준,mav) Then T = -1; if T == 1 Then { if h > hh Then hh = h; if l < ll Then ll = l; Box_SetBegin(box,dd,tt,hh); Box_SetEnd(box,NextBarSdate,NextBarStime,ll); }
프로필 이미지
팔보채
2024-12-24
533
글번호 186559
지표
답변완료

예스랭귀지 수식 요청합니다

안녕하세요 1봉전보다 0봉전 상승 OBV(10) and CCI(9) 이렇게 수식 가능할까요? 감사합니다
프로필 이미지
당근인생
2024-12-24
575
글번호 186558
종목검색
답변완료

질문드리겠습니다

안녕하세요 crossup,crossdown 을 함수로 만들어 응용하고자 하는데 수식이 어떻게 되는지 알고 싶습니다 랭귀지 편집기에 사용자 함수에는 등재가 안돼있어서요 항상 감사드리며 즐거운 크리스마스 보내시고 한 해 마무리 잘 하시길 바랍니다~
프로필 이미지
yamu
2024-12-24
479
글번호 186557
지표

살빼고싶다 님에 의해서 삭제되었습니다.

프로필 이미지
살빼고싶다
2024-12-24
89
글번호 186556
검색
답변완료

안녕하세요. 수식전환 부탁드릴게요.

안녕하세요. 키움증권에서 약세강세 패턴으로 사용중인 수식 변환 문의드릴게요. 당일 누적 분봉거래대금 500억이상 5%이상 발생시점부터 오후12시까지 차트상 분홍색상으로 배경으로 표시. 오후12시 이후부터는 기존 차트색상 배경으로 표시입니다. 강세패턴 B = sum((H+O+L+C)/4*V/100000000); B2 = valueWhen(1, date(1)!=date, B(1) ); AA = predayclose()*1.05<= dayHigh(); (B-B2)>분봉누적거래대금 and AA; 약세패턴 A=TIME<끝; B=TIME>시작; A AND B 지표변수 분봉누적거래대금 500억 시작 120000 끝 160000 입니다. 감사합니다.
프로필 이미지
산티아고v
2024-12-24
870
글번호 186555
지표