커뮤니티

TL 관련

프로필 이미지
씸풀
2025-06-15 01:37:00
198
글번호 191726
답변완료

첨부 이미지

TL의 갯수를 iTL에서 정한 갯수만큼 유지하려고 합니다. 문제는 TL_Delete를 실행시키면 예를 들면 iTL=2일때, TL1[2]가 지워져야 하므로 TL1, TL1[1], 이 2개가 보여야 하는데 첨부된 그림처럼 직전 TL1인 TL1[1], blue 가 아니고 TL1[3], darkRed 가 보이는 문제가 있습니다. (TL1=red, TL1[1]=blue, TL1[3]=darkRed로 표시함) 해결 방법을 알려주세요. input: iTL(2),per1(5),per2(20),thk2(2); var : val(0),bUp(0),bDn(0),idxUp(0),idxDn(0),gap(0),TL1(0),TL2(0); val=C; var1=ma(val,per1); var2=ma(val,per2); Plot2(val); plot1(var2,"ma2"); if crossup(var1,var2) then { plot3(val,"Rev",red); bUp=val; idxUp=Index; gap=idxUp-idxUp[1]; if iTL>=1 Then { TL1=TL_New_Self(sDate[gap],sTime[gap],bUp[1],sDate,sTime,bUp); TL_SetColor(TL1,Red); TL_SetExtRight(TL1,true); TL_SetSize(TL1,thk2); TL_SetColor(TL1[1],DarkRed); if IsNaN(TL1[iTL])==False Then TL_Delete(TL1[iTL]); } }
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-06-16 10:58:31

안녕하세요 예스스탁입니다. TL1[1],TL1[2]는 TL1의 한봉전,두봉전값입니다. 직전, 전전 추세선의 아이디를 지정하지 않습니다. 아래와 같이 작성하시면 배열변수 TL에 TL[0],TL[1],TL[2]순으로 순서대로 추세선의 아이디가 저장됩니다. 해당 배열인자로 이전 값들 색변경하거나 삭제하시면 됩니다. input: iTL(2),per1(5),per2(20),thk2(2); var : val(0),bUp(0),bDn(0),idxUp(0),idxDn(0),gap(0),TL1(0),TL2(0); var : i(0); Array : TL[10](0); val=C; var1=ma(val,per1); var2=ma(val,per2); Plot2(val); plot1(var2,"ma2"); if crossup(var1,var2) then { plot3(val,"Rev",red); bUp=val; idxUp=Index; gap=idxUp-idxUp[1]; if iTL>=1 Then { For i = 9 downto 1 { TL[i] = TL[i-1]; } TL[0]=TL_New_Self(sDate[gap],sTime[gap],bUp[1],sDate,sTime,bUp); TL_SetColor(TL[0],Red); TL_SetExtRight(TL1,true); TL_SetSize(TL[0],thk2); TL_SetColor(TL[1],Blue); TL_SetColor(TL[2],DarkRed); TL_Delete(TL[iTL]); } } 즐거운 하루되세요 > 씸풀 님이 쓴 글입니다. > 제목 : TL 관련 > TL의 갯수를 iTL에서 정한 갯수만큼 유지하려고 합니다. 문제는 TL_Delete를 실행시키면 예를 들면 iTL=2일때, TL1[2]가 지워져야 하므로 TL1, TL1[1], 이 2개가 보여야 하는데 첨부된 그림처럼 직전 TL1인 TL1[1], blue 가 아니고 TL1[3], darkRed 가 보이는 문제가 있습니다. (TL1=red, TL1[1]=blue, TL1[3]=darkRed로 표시함) 해결 방법을 알려주세요. input: iTL(2),per1(5),per2(20),thk2(2); var : val(0),bUp(0),bDn(0),idxUp(0),idxDn(0),gap(0),TL1(0),TL2(0); val=C; var1=ma(val,per1); var2=ma(val,per2); Plot2(val); plot1(var2,"ma2"); if crossup(var1,var2) then { plot3(val,"Rev",red); bUp=val; idxUp=Index; gap=idxUp-idxUp[1]; if iTL>=1 Then { TL1=TL_New_Self(sDate[gap],sTime[gap],bUp[1],sDate,sTime,bUp); TL_SetColor(TL1,Red); TL_SetExtRight(TL1,true); TL_SetSize(TL1,thk2); TL_SetColor(TL1[1],DarkRed); if IsNaN(TL1[iTL])==False Then TL_Delete(TL1[iTL]); } }