커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

추가진입상황에서 BarsSinceEntry 함수 쓰기

안녕하세요, BarsSinceEntry를 이용해 추가진입의 간격을 특정 구간으로 벌리려고 하는데, 작동이 되지 않아 문의드립니다. 스크립트에 문제 있는지 확인 부탁드립니다. If COND == 1 AND MarketPosition > 0 AND BarsSinceEntry(0) > n Then { If COND2 == 1 AND CountIf(Ind > Ind [1], 2) == 2 Then { Buy("B4", OnClose, Def, 1); } ... }
프로필 이미지
민현종
2023-04-24
782
글번호 168441
시스템
답변완료

부탁좀 드려요~

안녕하세요~ 키움식인데, 예스검색으로 부탁좀 해도 될까요? A 주가등락률:[일]1봉전(중) 종가대비 0봉전 종가등락률 0.3%이상 B 가격-이동평균 비교:[일]0봉전 (종가 10)이평 < 종가 C 가격-이동평균 비교:[일]0봉전 (종가 10)이평 > 시가 D 이평이격도[일]0봉전(종가 1, 종가 10) : 99.4%이상 100%이하 1회이상 E 거래량비율(n봉):[일]1봉전 거래량 대비 0봉전 거래량 비율 120%이상 F 거래량비율:[일]5봉 평균(1봉전)거래량대비 일 0봉전 120%이상 A and ((B and C) or D) and (E or F)
프로필 이미지
따라고나
2023-04-24
957
글번호 168440
검색
답변완료

수식 문의드립니다

안녕하세요 수식작성에 도움주셔서 은혜에 감사드립니다 아래 조건을 충족하는 종목검색식 작성 부탁드립니다 1 20일 이평선이 쌍바닥 ( 쌍바닥 오른쪽 저점이 높은) 2 ( 0봉전 기준) 이전 20봉이내에 전일대비 500%이상 거래량 발생 3 0봉전기준 20일이평선이 우상향 추세를 지속유지 중일 것 (20일 이평선 상승추세 각도가 최소 20도이상) - 20일선이 하향추세 진행중인 경우는 제외하기 위함 4 0봉전 기준 , 그 이전 봉 캔들이 우상향하고 있는 20일 이평선위에서 15일이상 머물러 있다가 20일선을 종가기준으로 처음 이탈 5 종가기준으로 상기 4항 이탈 캔들 발생후, 5일이내 종가기준으로 20일이평선을 다시 재 돌파하는 캔들 발생 (반드시 5일이내라는 조건충족) 요청사항 1) 상기 1~5항 전부 동시 충족하는 검색식 2) 상기 1을 제외한 2~5항을 충족하는 검색식
프로필 이미지
용팔이
2023-04-24
1039
글번호 168436
종목검색
답변완료

부탁드립니다.

1. 종가상 거래량이 직전봉보다 2배이상 늘어나면 빨강색으로, 거래량이 직전봉보다 절반이하로 줄어들면 파란색으로 구현해 주세요 2. 2개이상 연속된 양봉이 끝나고 음봉이 발생하면 매도하라. 2개이상 연속된 음봉이 끝나고 양봉이 발생하면 매수하라 고맙습니다.
프로필 이미지
서태공
2023-04-24
970
글번호 168435
강조
답변완료

문의

키움지표를 예스로 부탁드립니다. if((high+low)/2<=close,volume,0) a1=(high-close)/(high-low); if((high+low)/2<=close,volume*a1,0) b1=if((high+low)/2>close,volume,0) b1=(close-low)/(high-low); if((high+low)/2>close,volume*b1,0)
프로필 이미지
레전드
2023-04-24
1191
글번호 168429
지표
답변완료

y축일치

안녕하세요 아래 2가지 지표식을 동일차트에서 구현하는데 두 지표식의 Y축 지표값이 일치하지 않아서 따로 따로 작동하는데 두 지표식의 y축값을 일치 시킬 수 있는 방법을 문의드립니다 참고로 2지표식을 한 지표식으로 만들면 너무 양이 많아서 동작이 잘 안될때가 많아서 따로 분리해서 많들었습니다 지표식1: Input: Period1(1),Period2(2); Variables: TLen1(0),TRIma1(0); TLen1 = Ceiling((Period1 + 1) * .5); TRIma1 =Ema(Ema(C, TLen1), TLen1); var5 = bids-asks;#잔량차(매수호가잔량-매도호가잔량) plot1(Var5[1],"O일자",Yellow,Def,0); if TRIma1 >= H[1] Then plot2(Var5[1]+200,"O일자",White,Def,0); Else NoPlot(2); if TRIma1 >= H[1] Then plot3(Var5[1]+400,"O일자",White,Def,0); Else NoPlot(3); if TRIma1 >= H[1] Then plot4(Var5[1]+600,"O일자",White,Def,0); Else NoPlot(4); if TRIma1 >= H[1] Then plot5(Var5[1]+800,"O일자",White,Def,0); Else NoPlot(5); if TRIma1 >= H[1] Then plot6(Var5[1]+1000,"O일자",White,Def,0); Else NoPlot(6); if TRIma1 >= H[1] Then plot7(Var5[1]+1200,"O일자",White,Def,0); Else NoPlot(7); if TRIma1 >= H[1] Then plot8(Var5[1]+1400,"O일자",White,Def,0); Else NoPlot(8); if TRIma1 >= H[1] Then plot9(Var5[1]+1600,"O일자",White,Def,0); Else NoPlot(9); if TRIma1 <= L[1] Then plot12(Var5[1]-200,"O일자",White,Def,0); Else NoPlot(12); if TRIma1 <= L[1] Then plot14(Var5[1]-400,"O일자",White,Def,0); Else NoPlot(14); if TRIma1 <= L[1] Then plot15(Var5[1]-600,"O일자",White,Def,0); Else NoPlot(15); if TRIma1 <= L[1] Then plot16(Var5[1]-800,"O일자",White,Def,0); Else NoPlot(16); if TRIma1 <= L[1] Then plot17(Var5[1]-1000,"O일자",White,Def,0); Else NoPlot(17); if TRIma1 <= L[1] Then plot18(Var5[1]-1200,"O일자",White,Def,0); Else NoPlot(18); if TRIma1 <= L[1] Then plot19(Var5[1]-1400,"O일자",White,Def,0); Else NoPlot(19); if TRIma1 <= L[1] Then plot20(Var5[1]-1600,"O일자",White,Def,0); Else NoPlot(20); 지표식2: #==========================================# # 지 표 명 : 고저라인 지그재그 파동선 # 버 전 : 1.2 # 작 성 자 : 수식지왕 # 블 로 그 : http://yahoosir.blog.me # 업데이트 : 2017-03-10 #==========================================# Input: Period1(1),length(2),종가사용여부(0),파동선두께(2),수치표시(1); Variables: TLen1(0),TRIma1(0),j(0),jj(0),HH(0),LL(0),최종고가(0),최종저가(0),최종꼭지점(""),처리구분(""), TL1(0),Text1(0); Array:고[10,4](0),저[10,4](0); // 1:가격,2:Index,3:sDate,4:sTime #==========================================# TLen1 = Ceiling((Period1 + 1) * .5); TRIma1 =Ema(Ema(C, TLen1), TLen1); var5 = bids-asks;#잔량차(매수호가잔량-매도호가잔량) var1 = 고[1,1] - var5 ; var2 = var5 - 저[1,1] ; HH = Var5; LL = Var5; If Index == 0 Then { 고[1,1] = HH; 저[1,1] = LL; } Condition1 = Highest(HH,length) == HH and 최종고가 <> HH; Condition2 = Lowest (LL,length) == LL and 최종저가 <> LL; 처리구분 = ""; If Condition1 and Condition2 Then // 기간고점과 기간저점 동시 발생 { If 최종꼭지점 == "저점" Then { If 저[1,1] > LL Then 처리구분 = "저점처리"; Else 처리구분 = "고점처리"; } Else If 최종꼭지점 == "고점" Then { If 고[1,1] < HH Then 처리구분 = "고점처리"; Else 처리구분 = "저점처리"; } } Else If Condition1 Then 처리구분 = "고점처리"; Else If Condition2 Then 처리구분 = "저점처리"; #==========================================# If 처리구분 == "고점처리" Then { 최종고가 = HH; // 신규고점을 체크하기 위해 저장 If 최종꼭지점 == "저점" Then { For j = 10 DownTo 2 { For jj = 1 To 4 { 고[j,jj] = 고[j-1,jj]; } } 고[1,1] = HH; 고[1,2] = Index; 고[1,3] = sDate; 고[1,4] = sTime; TL1 = TL_New(저[1,3],저[1,4],저[1,1],고[1,3],고[1,4],고[1,1]); If 수치표시 == 1 Then { Text1 = Text_New(고[1,3],고[1,4],고[1,1],NumToStr(고[1,1],2)); Text_SetStyle(Text1, 2, 1); } TL_SetSize(TL1,파동선두께); TL_SetColor(TL1,RED); } Else If 고[1,1] < HH Then // 1번 고점보다 높은 고가 출현 { 고[1,1] = HH; 고[1,2] = Index; 고[1,3] = sDate; 고[1,4] = sTime; TL_SetEnd(TL1,고[1,3],고[1,4],고[1,1]); // 시작점은 변동없고 끝점의 위치가 현재 봉으로 연장된 것임 If 수치표시 == 1 Then { Text_SetLocation(Text1,고[1,3],고[1,4],고[1,1]); Text_SetString(Text1,NumToStr(고[1,1],2)); } } 최종꼭지점 = "고점"; } #==========================================# If 처리구분 == "저점처리" Then { 최종저가 = LL; If 최종꼭지점 == "고점" then { For j = 10 DownTo 2 { For jj = 1 To 4 { 저[j,jj] = 저[j-1,jj]; } } 저[1,1] = LL; 저[1,2] = Index; 저[1,3] = sDate; 저[1,4] = sTime; TL1 = TL_New(고[1,3],고[1,4],고[1,1],저[1,3],저[1,4],저[1,1]); If 수치표시 == 1 Then { Text1 = Text_New(저[1,3],저[1,4],저[1,1],NumToStr(저[1,1],2)); Text_SetStyle(Text1, 2, 0); } TL_SetSize(TL1,파동선두께); TL_SetColor(TL1,BLUE); } Else If 저[1,1] > LL then { 저[1,1] = LL; 저[1,2] = Index; 저[1,3] = sDate; 저[1,4] = sTime; TL_SetEnd(TL1,저[1,3],저[1,4],저[1,1]); If 수치표시 == 1 Then { Text_SetLocation(Text1,저[1,3],저[1,4],저[1,1]); Text_SetString(Text1,NumToStr(저[1,1],2)); } } 최종꼭지점 = "저점"; } plot1(고[1,1],"고일자",iff(H<H[1],rgb(0,255,0),White),DEf,IFf(Var5 < Var5[1] ,8,0)); plot2(저[1,1],"저일자",iff(L>L[1],Magenta,Black),DEf,IFf(Var5 > Var5[1],8,0)); if Var5 >Var5[1] Then plot3(Var5,"호가선",Red,DEF,IFf(TRIma1 >= H[1] and TRIma1 == H,1,0)); Else plot3(Var5,"호가선",Blue,DEF,IFf( TRIma1 <= L[1] and TRIma1 == L,1,0)); if Var5 >Var5[1] Then plot11(Var5,"호가상일자",iff(TRIma1 >= H[1] and TRIma1 == H,red,Rgb(255,94,0)),DEF,IFF(TRIma1 >= H[1] and TRIma1 == H,3,1)); Else NoPlot(11); If Var5 > Var5[1] and TRIma1 > H[1] and TRIma1 == H Then plot19(Var5, "속1=H일자",Yellow,DEF,1); Else NoPlot(19); if Var5 <Var5[1] Then plot34(Var5,"호가하일자",iff(TRIma1 <= L[1] and TRIma1 == L,Blue,Rgb(54,138,255)),DEF,IFF(TRIma1 <= L[1] and TRIma1 == L,3,1)); Else NoPlot(34); If Var5 < Var5[1] and TRIma1 < L[1] and TRIma1 == L Then plot35(Var5, "속1=L일자",Cyan,DEF,1); Else NoPlot(35); If Var5 <Var5[1] Then plot4(고[1,1]-((고[1,1]-Var5)*1/8), "하1/8점",iff(TRIma1 <= L[1] and TRIma1 == L,Blue,Rgb(54,138,255)),DEF,iff(TRIma1 <= L[1] and TRIma1 == L,11,4)); Else NoPlot(4); If Var5 <Var5[1] Then plot5(고[1,1]-((고[1,1]-Var5)*2/8), "하2/8점",iff(TRIma1 <= L[1] and TRIma1 == L,Blue,Rgb(54,138,255)),DEF,iff(TRIma1 <= L[1] and TRIma1 == L,10,4)); Else NoPlot(5); If Var5 <Var5[1] Then plot6(고[1,1]-((고[1,1]-Var5)*3/8), "하3/8점",iff(TRIma1 <= L[1] and TRIma1 == L,Blue,Rgb(54,138,255)),DEF,iff(TRIma1 <= L[1] and TRIma1 == L,9,4)); Else NoPlot(6); If Var5 <Var5[1] Then plot7(고[1,1]-((고[1,1]-Var5)*4/8), "하4/8점",iff(TRIma1 <= L[1] and TRIma1 == L,Blue,Rgb(54,138,255)),DEF,iff(TRIma1 <= L[1] and TRIma1 == L,8,4)); Else NoPlot(7); If Var5 <Var5[1] Then plot8(고[1,1]-((고[1,1]-Var5)*5/8), "하5/8점",iff(TRIma1 <= L[1] and TRIma1 == L,Blue,Rgb(54,138,255)),DEF,iff(TRIma1 <= L[1] and TRIma1 == L,7,4)); Else NoPlot(8); If Var5 <Var5[1] Then plot9(고[1,1]-((고[1,1]-Var5)*6/8), "하6/8점",iff(TRIma1 <= L[1] and TRIma1 == L,Blue,Rgb(54,138,255)),DEF,iff(TRIma1 <= L[1] and TRIma1 == L,6,4)); Else NoPlot(9); If Var5 <Var5[1] Then plot10(고[1,1]-((고[1,1]-Var5)*7/8), "하7/8점",iff(TRIma1 <= L[1] and TRIma1 == L,Blue,Rgb(54,138,255)),DEF,iff(TRIma1 <= L[1] and TRIma1 == L,5,4)); Else NoPlot(10); If Var5 >Var5[1] Then plot12(저[1,1]+((Var5-저[1,1])*1/8), "상1/8점",iff(TRIma1 >= H[1] and TRIma1 == H,red,Rgb(255,94,0)),DEF,iff(TRIma1 >= H[1] and TRIma1 == H,11,4)); Else NoPlot(12); If Var5 >Var5[1] Then plot13(저[1,1]+((Var5-저[1,1])*2/8), "상2/8점",iff(TRIma1 >= H[1] and TRIma1 == H,red,Rgb(255,94,0)),DEF,iff(TRIma1 >= H[1] and TRIma1 == H,10,4)); Else NoPlot(13); If Var5 >Var5[1] Then plot14(저[1,1]+((Var5-저[1,1])*3/8), "상3/8점",iff(TRIma1 >= H[1] and TRIma1 == H,red,Rgb(255,94,0)),DEF,iff(TRIma1 >= H[1] and TRIma1 == H,9,4)); Else NoPlot(14); If Var5 >Var5[1] Then plot15(저[1,1]+((Var5-저[1,1])*4/8), "상4/8점",iff(TRIma1 >= H[1] and TRIma1 == H,red,Rgb(255,94,0)),DEF,iff(TRIma1 >= H[1] and TRIma1 == H,8,4)); Else NoPlot(15); If Var5 >Var5[1] Then plot16(저[1,1]+((Var5-저[1,1])*5/8), "상5/8점",iff(TRIma1 >= H[1] and TRIma1 == H,red,Rgb(255,94,0)),DEF,iff(TRIma1 >= H[1] and TRIma1 == H,7,4)); Else NoPlot(16); If Var5 >Var5[1] Then plot17(저[1,1]+((Var5-저[1,1])*6/8), "상6/8점",iff(TRIma1 >= H[1] and TRIma1 == H,red,Rgb(255,94,0)),DEF,iff(TRIma1 >= H[1] and TRIma1 == H,6,4)); Else NoPlot(17); If Var5 >Var5[1] Then plot18(저[1,1]+((Var5-저[1,1])*7/8), "상7/8점",iff(TRIma1 >= H[1] and TRIma1 == H,red,Rgb(255,94,0)),DEF,iff(TRIma1 >= H[1] and TRIma1 == H,5,4)); Else NoPlot(18); If Var5 >Var5[1] and TRIma1 > H[1] and TRIma1 == H Then plot20(저[1,1]+((Var5-저[1,1])*7/8), "속1>=H점",Yellow,DEF,2); Else NoPlot(20); If Var5 >Var5[1] and TRIma1 > H[1] and TRIma1 == H Then plot21(저[1,1]+((Var5-저[1,1])*6/8), "속1>=H점",Yellow,DEF,3); Else NoPlot(21); If Var5 >Var5[1] and TRIma1 > H[1] and TRIma1 == H Then plot22(저[1,1]+((Var5-저[1,1])*5/8), "속1>=H점",Yellow,DEF,4); Else NoPlot(22); If Var5 >Var5[1] and TRIma1 > H[1] and TRIma1 == H Then plot23(저[1,1]+((Var5-저[1,1])*4/8), "속1>=H점",Yellow,DEF,5); Else NoPlot(23); If Var5 >Var5[1] and TRIma1 > H[1] and TRIma1 == H Then plot24(저[1,1]+((Var5-저[1,1])*3/8), "속1>=H점",Yellow,DEF,6); Else NoPlot(24); If Var5 >Var5[1] and TRIma1 > H[1] and TRIma1 == H Then plot25(저[1,1]+((Var5-저[1,1])*2/8), "속1>=H점",Yellow,DEF,7); Else NoPlot(25); If Var5 >Var5[1] and TRIma1 > H[1] and TRIma1 == H Then plot26(저[1,1]+((Var5-저[1,1])*1/8), "속1>=H점",Yellow,DEF,8); Else NoPlot(26); If Var5 <Var5[1] and TRIma1 < L[1] and TRIma1 == L Then plot27(고[1,1]-((고[1,1]-Var5)*7/8), "속1<=L점",Cyan,DEF,2); Else NoPlot(27); If Var5 <Var5[1] and TRIma1 < L[1] and TRIma1 == L Then plot28(고[1,1]-((고[1,1]-Var5)*6/8), "속1<=L점",Cyan,DEF,3); Else NoPlot(28); If Var5 <Var5[1] and TRIma1 < L[1] and TRIma1 == L Then plot29(고[1,1]-((고[1,1]-Var5)*5/8), "속1<=L점",Cyan,DEF,4); Else NoPlot(29); If Var5 <Var5[1] and TRIma1 < L[1] and TRIma1 == L Then plot30(고[1,1]-((고[1,1]-Var5)*4/8), "속1<=L점",Cyan,DEF,5); Else NoPlot(30); If Var5 <Var5[1] and TRIma1 < L[1] and TRIma1 == L Then plot31(고[1,1]-((고[1,1]-Var5)*3/8), "속1<=L점",Cyan,DEF,6); Else NoPlot(31); If Var5 <Var5[1] and TRIma1 < L[1] and TRIma1 == L Then plot32(고[1,1]-((고[1,1]-Var5)*2/8), "속1<=L점",Cyan,DEF,7); Else NoPlot(32); If Var5 <Var5[1] and TRIma1 < L[1] and TRIma1 == L Then plot33(고[1,1]-((고[1,1]-Var5)*1/8), "속1<=L점",Cyan,DEF,8); Else NoPlot(33); If Var5 > Var5[1] Then Plot37(Var5,"호가1점",iff(TRIma1 >= H[1] and TRIma1 == H,red,Rgb(255,94,0)),DEF,4); Else NoPlot(37); If Var5 < Var5[1] Then Plot36(Var5,"호가1점",iff(TRIma1 <= L[1] and TRIma1 == L,Blue,Rgb(54,138,255)),DEF,4); Else NoPlot(36); If Var5 > Var5[1] Then Plot38(Var5,"호가속상점",Yellow,DEF,IFF(TRIma1 > H[1] and TRIma1 == H,2,0)); Else NoPlot(38); If Var5 < Var5[1] Then Plot39(Var5,"호가1속하점",Cyan,DEF,IFF(TRIma1 < L[1] and TRIma1 == L,2,0)); Else NoPlot(39);
프로필 이미지
bestkim
2023-04-24
1948
글번호 168424
지표
답변완료

지표변환부탁드립니다

// This work is licensed under a Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) https://creativecommons.org/licenses/by-nc-sa/4.0/ //@version = 4 //Copyright LuxAlgo study("Volume Profile [LUX]","Volume Profile [LuxAlgo]",true,max_bars_back=1000,max_lines_count=500) length = input(500,'Lookback',minval=1,maxval=1000,group='Basic' ,tooltip='Number of most recent bars to use for the calculation of the volume profile') row = input(200,'Row Size',minval=1,maxval=500,group='Basic' ,tooltip='Determines the number of rows used for the calculation of the volume profile') show_rpoc = input(false,'Show Rolling POC',group='Basic' ,tooltip='Determines whether to display the rolling POC of the volume profile') width = input(50,'Width (% of the box)',minval=1,maxval=100,group='Style' ,tooltip='Determines the length of the bars relative to the Lookback value') bar_width = input(2,'Bar Width',group='Style' ,tooltip='Width of each bar') flip = input(false,'Flip Histogram',group='Style' ,tooltip='Flip the histogram, when enabled, the histogram base will be located at the most recent candle') grad = input(true,'Gradient',group='Style' ,tooltip='Allows to color the volume profile bars with a gradient, with a color intensity determined by the length of each bar') solid = input(#2157f3,'Rows Solid Color',group='Style' ,tooltip='Color of each bar when "Gradient" is disabled') poc_color = input(#ff5d00,'POC Solid Color',group='Style' ,tooltip='Color of the POC when "Gradient" is disabled') //----------------------------------------------------------------------------------------- var vol_css = array.new_color(na) var a = array.new_line() var b = array.new_line() if barstate.isfirst array.push(vol_css,#1E152A), array.push(vol_css,#1E162B), array.push(vol_css,#1F182C), array.push(vol_css,#1F192E), array.push(vol_css,#201B2F), array.push(vol_css,#211C31), array.push(vol_css,#211E32), array.push(vol_css,#222034), array.push(vol_css,#222135), array.push(vol_css,#232337), array.push(vol_css,#242438), array.push(vol_css,#24263A), array.push(vol_css,#25273B), array.push(vol_css,#25293D), array.push(vol_css,#262B3E), array.push(vol_css,#272C3F), array.push(vol_css,#272E41), array.push(vol_css,#282F42), array.push(vol_css,#283144), array.push(vol_css,#293245), array.push(vol_css,#2A3447), array.push(vol_css,#2A3648), array.push(vol_css,#2B374A), array.push(vol_css,#2B394B), array.push(vol_css,#2C3A4D), array.push(vol_css,#2D3C4E), array.push(vol_css,#2D3D50), array.push(vol_css,#2E3F51), array.push(vol_css,#2E4153), array.push(vol_css,#2F4254), array.push(vol_css,#304455), array.push(vol_css,#304557), array.push(vol_css,#314758), array.push(vol_css,#32495A), array.push(vol_css,#324A5B), array.push(vol_css,#334C5D), array.push(vol_css,#334D5E), array.push(vol_css,#344F60), array.push(vol_css,#355061), array.push(vol_css,#355263), array.push(vol_css,#365464), array.push(vol_css,#365566), array.push(vol_css,#375767), array.push(vol_css,#385868), array.push(vol_css,#385A6A), array.push(vol_css,#395B6B), array.push(vol_css,#395D6D), array.push(vol_css,#3A5F6E), array.push(vol_css,#3B6070), array.push(vol_css,#3B6271), array.push(vol_css,#3C6373), array.push(vol_css,#3C6574), array.push(vol_css,#3D6676), array.push(vol_css,#3E6877), array.push(vol_css,#3E6A79), array.push(vol_css,#3F6B7A), array.push(vol_css,#3F6D7C), array.push(vol_css,#406E7D), array.push(vol_css,#41707E), array.push(vol_css,#417180), array.push(vol_css,#427381), array.push(vol_css,#427583), array.push(vol_css,#437684), array.push(vol_css,#447886), array.push(vol_css,#447987), array.push(vol_css,#457B89), array.push(vol_css,#467D8A), array.push(vol_css,#467E8C), array.push(vol_css,#47808D), array.push(vol_css,#47818F), array.push(vol_css,#488390), array.push(vol_css,#498491), array.push(vol_css,#498693), array.push(vol_css,#4A8894), array.push(vol_css,#4A8996), array.push(vol_css,#4B8B97), array.push(vol_css,#4C8C99), array.push(vol_css,#4C8E9A), array.push(vol_css,#4D8F9C), array.push(vol_css,#4D919D), array.push(vol_css,#4E939F), array.push(vol_css,#4F94A0), array.push(vol_css,#4F96A2), array.push(vol_css,#5097A3), array.push(vol_css,#5099A5), array.push(vol_css,#519AA6), array.push(vol_css,#529CA7), array.push(vol_css,#529EA9), array.push(vol_css,#539FAA), array.push(vol_css,#53A1AC), array.push(vol_css,#54A2AD), array.push(vol_css,#55A4AF), array.push(vol_css,#55A5B0), array.push(vol_css,#56A7B2), array.push(vol_css,#56A9B3), array.push(vol_css,#57AAB5), array.push(vol_css,#58ACB6), array.push(vol_css,#58ADB8), array.push(vol_css,#59AFB9), array.push(vol_css,#5AB1BB) for i = 0 to row-1 array.push(a,line.new(na,na,na,na,width=2)) array.push(b,line.new(na,na,na,na,width=2)) //----------------------------------------------------------------------------------------- n = bar_index src = close v = volume //----------------------------------------------------------------------------------------- var Alvl = 0. var Blvl = 0. var current_num_conf = 0 var current_num_cont = 0 highest = highest(length) lowest = lowest(length) //---- line l = na line poc = na levels = array.new_float(0) sumv = array.new_float(0) //---- condition = show_rpoc ? true : barstate.islast if condition for i = 0 to row array.push(levels,lowest + i/row*(highest-lowest)) for j = 0 to row-1 sum = 0. for k = 0 to length-1 sum := high[k] > array.get(levels,j) and low[k] < array.get(levels,j+1) ? sum + v[k] : sum array.push(sumv,sum) for j = 0 to row-1 mult = array.get(sumv,j)/array.max(sumv) l := array.get(a,j) get = array.get(levels,j) if flip line.set_xy1(l,n,get) line.set_xy2(l,n-round(length*width/100*mult),array.get(levels,j)) else line.set_xy1(l,n-length+1,get) line.set_xy2(l,n-length+round(length*width/100*mult),array.get(levels,j)) line.set_color(l,grad ? array.get(vol_css,round(mult*99)) : solid) line.set_width(l,bar_width) if mult == 1 poc := array.get(b,0) avg = avg(get,array.get(levels,j+1)) if flip line.set_xy1(poc,n,avg) line.set_xy2(poc,n-length+1,avg) else line.set_xy1(poc,n-length+1,avg) line.set_xy2(poc,n,avg) line.set_color(poc,grad ? #5AB1BB : poc_color) line.set_style(poc,line.style_dotted) line.set_width(poc,bar_width) if show_rpoc Alvl := array.get(levels,array.indexof(sumv,array.max(sumv))) Blvl := array.get(levels,array.indexof(sumv,array.max(sumv))+1) plot(show_rpoc ? avg(Alvl,Blvl) : na,'Rolling POC',color=#ff1100) //----------------------------------------------------------------------------------------]
프로필 이미지
나고수야
2023-04-24
1322
글번호 168423
지표
답변완료

문의

data2 차트에 적용할 수식으로 변경바랍니다. *********************************************************************** 안녕하세요 예스스탁입니다. input : ma1(7),ma2(3),ma3(4); var : sumc(0),sumi(0); if Bdate != Bdate[1] Then { sumc = 0; sumi = 0; } sumc = sumc+c; sumi = sumi+c; if sumi < ma1 Then var1 = sumc/sumi; Else Var1=ma(c,ma1); if sumi < ma2 Then var2 = sumc/sumi; else Var2=ma(c,ma2); if sumi < ma3 Then var3 = sumc/sumi; else Var3=ma(c,ma3); if CrossUp(var1,Var2) and CrossUp(var2,Var3) Then Buy(); 즐거운 하루되세요
프로필 이미지
목마와숙녀
2023-04-24
998
글번호 168422
시스템
답변완료

국내선물, 진입 후 진입시간 기점 5분이 지나야 다른 진입신호를 허용(익절은 제외)

국내선물 운용 중입니다. 진입 후 진입시간을 기점으로(x초 단위) 5분이 지나야 다른 진입신호를 허용하게 하고 싶습니다. (단 각 진입명의 정해진 익절은 제외) 아래 예제에서 첫번째 진입(macross2-sell)은 5분 이내지만 익절에 도달 했기에 허용. 두번째 진입(sell-stocro-01)은 익절에 도달 안했는데 다른 진입신호(macross2-buy)가 발생하여 절체됨. -----> 모든 진입은 익절신호는 제외하고, 5분 경과한 후에 발생한 신호만 허용하게 하는 방법을 알려주세요. 감사합니다.
프로필 이미지
우후훗
2023-04-24
1111
글번호 168421
시스템