커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

함수요청

안녕하세요? 아래 전략에 대해 스크립트 작성 부탁드립니다. 국내선물 일봉으로 포지션 거래를 하고자 합니다. 일목균형표상 전환선과 기준선의 교차가 일어나는 시점에 주가 > 기준선이면 익봉 시가에 매수진입 주가 < 기준선이면 익봉 시가에 매도진입 주가 < 전환선이면 익봉 시가에 매수청산 주가 > 전환선이면 익봉 시가에 매도청산
프로필 이미지
흰둥이아빠
2024-09-11
480
글번호 183383
시스템

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

프로필 이미지
살빼고싶다
2024-09-11
37
글번호 183382
검색
답변완료

수식 추가 문의 드립니다

안녕하세요 예전에 추세선 관련해서 수식 작성해주셨는데요 TLH 와 TLL 선을 5개까지만 EXTRIGHT 하는 조건인데요 추세선을 더 추가 하는경우 수식을 단순화 하기 위해서 "배열 변수"로 처리 할 수 있을까요? 그리고 가장 최근 추세선만 SETSIZE 2로 하고 싶을땐 어떻게 작성을 하면 될까요 질문2) 그리고 마지막 문단에 크로스업 하는 조건들도 매 추세선 마다 나열을 했는데요 이 부분도 배열로 단순화 할 수 있을까요?? 감사합니다 if TL_GetValue(TLH,sDate,stime) > 0 then { value1 = TL_GetValue(TLH,sDate,stime); if CrossUp(O,Value1) Then plot11(high,"tlcross1",Yellow); 이하 반복~ 질문 3) HB 와 LB 사이의 봉갯수 간격 제한 하는 부분이 잘 적용이 안되는데 검토를 좀 해주실 수 있을까요? 가령 9개 이하만 표시하라고 했을때 9개 이상인것도 표현이 되고 있습니다. 수식 구조상에 문제가 있는건가요? #봉갯수 간격 제한 if (abs(hb-lb) <= 9) Then { TL_SetColor(tl,LightGreen); TL_SetStyle(tl,3); } 수식은 아래와 같습니다 input : n(20); var : cnt(0),hh(0),hb(0),ll(0),lb(0),TL(0),TXn(0),txper(0),TXpaa(0),nline(0),tl2(0); var : txx(0),TXper1(0); var : hd(0),ht(0),hd1(0),ht1(0),hv(0),hv1(0), LD(0), LT(0), LV (0), LD1(0), LT1(0),LV1(0); var: TLH(0),TLH1(0),TLH2(0),TLH3(0),TLH4(0),TLH5(0), TLL(0),TLL1(0),TLL2(0),TLL3(0),TLL4(0),TLL5(0); if CountIf(H >= L*1.08,n) >= 1 Then { hh = 0; hb = 0; ll = 0; lb = 0; For cnt = 0 to n-1 { if hh == 0 or (hh > 0 and h[cnt] > hh) Then { hh = h[cnt]; hb = cnt; } if ll == 0 or (ll > 0 and l[cnt] < ll) Then { ll = l[cnt]; lb = cnt; } } if (hB < lB AND ll *1.13 <HH and (hh != Var3 and ll != Var4) ) OR (hB > lB AND LL>HH*0.70 and (hh != Var3 and ll != Var4) ) Then { hd = sDate[hb]; ht = sTime[hb]; hv = hh; hd1 = hd[1]; ht1 = ht[1]; hv1 = hv[1]; if hv1 > 0 Then { TLH1 = TLH[1]; TLH2 = TLH1[1]; TLH3 = TLH2[1]; TLH4 = TLH3[1]; TLH5= TLH4[1]; TL_SetExtRight(TLH5,False); TLH = TL_new(hd1,ht1,hv1,hd,ht,hv); TL_SetExtRight(TLH,True); IF (HV > HV1*0.9 AND HV < HV1*1.09) OR (HV1 > HV*0.9 AND HV1 <HV*1.09) TheN TL_SetColoR(TLH,LightGreen); } LD = sDatE[LB]; LT = sTimE[LB]; LV = LL; LD1 = LD[1]; LT1 = LT[1]; LV1 = LV[1]; IF LV1 > 0 TheN { TLL1 = TLL[1]; TLL2 = TLL1[1]; TLL3 = TLL2[1]; TLL4 = TLL3[1]; TLL5= TLL4[1]; TL_SetExtRighT(TLL5,FalsE); TLL= TL_NEW(LD1,LT1,LV1,LD,LT,LV); TL_SetExtRighT(TLL,TRUE); TL_SetColoR(TLL,Yellow); } VAR3 = hh; VAR4 = ll; VAR1 = Index[lb]; VAR2 = VAR1[1]; if VAR2 > 0 Then { VAR5 = 0; For cnt = Index-var1 to Index-var2 { if Var5 == 0 or (Var5 > 0 and h[cnt] > Var5) Then Var5 = h[cnt]; } } if var1 >= Var2 Then { TL = TL_New(sDate[lb],sTime[lb],ll,sDate[hb],sTime[hb],hh); TL_SetDrawMode(tl,1); TL_SetColoR(TL,Cyan); TXper= text_new(sDate[lb],sTime[lb],ll,"★"); Text_SetStyle(txper,2,0); Text_SetSizE(TXPER,18); Text_SetColor(txper,MagentA); TXpaa= text_new(sDate[HB],sTime[HB],HH,"★"); Text_SetStyle(TXPAA,2,0); Text_SetSizE(TXPAA,15); Text_SetColor(tXPAA,LightGreen); } } } #우상향, 우하향 색상 구분 if lb > hb Then { TL_SetColor(TL,LIGHTReD); TL_SetStyle(tl,2); TL_SetDrawMode(tl,1); } Else { TL_SetColor(TL,LightBlue); TL_SetStyle(tl,2); } #봉갯수 간격 제한 if (abs(hb-lb) <= 9) Then { TL_SetColor(tl,LightGreen); TL_SetStyle(tl,3); } If VAR5 > 0 Then { PLOT35(VAR5,"INTER TL HH",Tomato); IF CrossUP(C,Var5) Then PLOT34(C,"CROSS구간고가",CyaN); } if TL_GetValue(TLH,sDate,stime) > 0 then { value1 = TL_GetValue(TLH,sDate,stime); if CrossUp(O,Value1) Then plot11(high,"tlcross1",Yellow); } if TL_GetValue(TLH1,sDate,stime) > 0 then { value2 = TL_GetValue(TLH,sDate,stime); if CrossUp(O,Value2) Then plot22(high,"tlcross2",Red); } if TL_GetValue(TLH2,sDate,stime) > 0 then { value3 = TL_GetValue(TLH,sDate,stime); if CrossUp(O,Value3) Then plot33(high,"tlcross3",LightGreen); } if TL_GetValue(TLH3,sDate,stime) > 0 then { value4 = TL_GetValue(TLH,sDate,stime); if CrossUp(O,Value4) Then plot44(high,"tlcross4",Cyan); }
프로필 이미지
yamu
2024-09-11
604
글번호 183379
지표
답변완료

문의 드립니다.

study(shorttitle="BB Filter", title="Bollinger Bands Filter", overlay=true, resolution="") src = input(close, title = "Source") length = input(55, minval=1, title = "SMA length")// 20 for classis Bollinger Bands SMA line (basis) mult = input(1., minval=0.236, maxval=2, title="Standard Deviation")//2 for Classic Bollinger Bands //Maxval = 2 as higher the deviation, higher the risk basis = sma(src, length) dev = mult * stdev(src,length) CC = input(true, "Color Bars") upper = basis + dev lower = basis - dev //Conditions for Long and Short - Extra filter condition can be used such as RSI or CCI etc. short = src<lower// and rsi(close,14)<40 long = src>upper// and rsi(close,14)>60 L1 = barssince(long) S1 = barssince(short) longSignal = L1<S1 and not (L1<S1)[1] shortSignal = S1<L1 and not (S1<L1)[1] //Plots and Fills ////Long/Short shapes with text // plotshape(S1<L1 and not (S1<L1)[1]?close:na, text = "s&#7431;&#671;&#671;", textcolor=#ff0100, color=#ff0100, style=shape.triangledown, size=size.small, location=location.abovebar, transp=0, title = "SELL", editable = true) // plotshape(L1<S1 and not (L1<S1)[1]?close:na, text = "&#665;&#7452;&#655;", textcolor = #008000, color=#008000, style=shape.triangleup, size=size.small, location=location.belowbar, transp=0, title = "BUY", editable = true) plotshape(shortSignal?close:na, color=#ff0100, style=shape.triangledown, size=size.small, location=location.abovebar, transp=0, title = "Short Signal", editable = true) plotshape(longSignal?close:na, color=#008000, style=shape.triangleup, size=size.small, location=location.belowbar, transp=0, title = "Long Signal", editable = true) p1 = plot(upper, color=#ff0000, display=display.all, transp=75, title = "Upper Band") p2 = plot(lower, color=#008000, display=display.all, transp=75, title = "Lower Band") p = plot(basis, color=L1<S1?#008000:S1<L1?#ff0000:na, linewidth=2, editable=false, title="Basis") fill(p,p1, color=color.teal, transp=85, title = "Top Fill") //fill for basis-upper fill(p,p2, color=color.orange, transp=85, title = "Bottom Fill")//fill for basis-lower //Barcolor bcol = src>upper?color.new(#8ceb07,0): src<lower?color.new(#ff0000,0): src>basis?color.green: src<basis?color.red:na barcolor(CC?bcol:na, editable=false, title = "Color Bars") //Alerts ---- // Use 'Once per bar close' alertcondition(condition=longSignal, title="Long - BB Filter", message='BB Filter Long @ {{close}}') // Use 'Once per bar close' alertcondition(condition=shortSignal, title="Short - BB Filter", message='BB Filter Short @ {{close}}') // Use 'Once per bar close' 트레이딩뷰 지표인데 예스 수식으로 좀 바꿔주세요.
프로필 이미지
신대륙발견
2024-09-11
919
글번호 183378
지표

회원 님에 의해서 삭제되었습니다.

프로필 이미지
회원
2024-09-11
26
글번호 183377
지표

겐지 님에 의해서 삭제되었습니다.

프로필 이미지
겐지
2024-09-11
34
글번호 183376
시스템

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

프로필 이미지
살빼고싶다
2024-09-11
33
글번호 183369
검색
답변완료

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

항상 노고에 감사드림니다. 아래의 수식을 종목검색식으로 부탁드림니다. aa=(highestsince(1,crossup(trix(20),0),c)+ lowestsince(1,crossdown(trix(20),0),c))/2;//안전선 a=Highest(h(1),20, 1); a1=Highest(h(1),40, 1); a2=Highest(h(1),60, 1); crossup(c,a) and crossup(c,a1) and crossup(c,a2) and c>aa and SUM(if(V(1)*2<= V, 1,0),3) //100 and c>predayclose() and o(1)/c(1)>0.5 and L/H>0.7 and H/C>0.3 and C>dayopen() and Disparity(5) >= 90//100 and c<predayclose()*1.15 //100 and c>BBandsup(30, 1.8) //100
프로필 이미지
존슨비치
2024-09-11
526
글번호 183366
종목검색

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

프로필 이미지
살빼고싶다
2024-09-11
19
글번호 183365
검색