커뮤니티

수식에 표시 관련해서 여쭤보겠습니다

프로필 이미지
yamu
2024-08-21 11:02:25
870
글번호 182719
답변완료
추세선에 텍스트 표시 하나 여쭤보겠습니다 질문은 수식안에 !!!!표시로 작성하였습니다 질문은 총 2개 입니다 감사합니다 var : n(15); var : cnt(0),hh(0),hb(0),ll(0),lb(0),TL(0),TX(0),tx1(0),TL1(0); if CountIf(H >= L*1.11,n) >= 1 Then { #"최근봉"만 표시되게 하기위해 "직전에서 출력된 추세선과 텍스트는 삭제" #n개봉 최고가와 최고가위치(몇봉전인지) 계산 #n개봉 최저가와 최저가위치(몇봉전인지) 계산 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 (lb > hb and hh >= ll*1.24) or (lb < hb and ll <= hh*0.80) Then { //TL_Delete(TL); // Text_Delete(TX); //TL_Delete(TL1); if (hb < lb and abs(hb-lb) <= 18) or (hb > lb and abs(hb-lb) <= 9) Then { #상향,하향 일때 봉갯수 조건 TL = TL_New(sDate[hb],sTime[hb],hh,sDate[lb],sTime[lb],ll); TL_SetDrawMode(tl,0); TL_SetExtRight(tl,true); #20개봉 수평선 TL1 = TL_New(sDate[n-1],sTime[n-1],hh,sDate[0],sTime[0],hh); TL_SetDrawMode(tl1,0); TL_SetColor(tl1,Tomato); TL_SetSize(tl1,0); !!!!아래 조건을 작성해봤는데 봉갯수 5개 이하면 다른 컬러로 하려고 합니다. 이전 추세선 (봉갯수 9개 이하) 과 겹치면서 표시가 모호해지는데 방법이 있을까요? 상위 if문에서 abs(hb-lb) >5 and abs(hb-lb)<=9 으로 작성해봤는데 제대로 나오지가 않습니다. 또한 수정의 신속함을 위해서 상위 if 문은 그대로 둔채로 수정이 가능하게 해주실 수 있을까요?? if (hb > lb and abs(hb-lb) <= 5) Then { tl=tl_new(sDate[hb],sTime[hb],hh,sDate[lb],sTime[lb],ll); TL_SetDrawMode(tl,0); TL_SetStyle(tl,2); TL_SetColor(tl,Green); !!!! TX1 = 이 부분에 고점 저점간의 등락률을 표시하고 싶습니다. } //TL_Delete(TL1); #최고가가 더 가까우면 빨강 아니면 파랑 if lb > hb Then { TL_SetColor(TL,Pink); TL_SetStyle(tl,2); } Else { TL_SetColor(TL,LightBlue); TL_SetStyle(tl,2); } TX = Text_New(TL_GetEndDate(TL),TL_GetEndTime(TL),TL_GetendVal(TL),NumToStr(abs(hb-lb),0)); Text_SetSize(tx,12); } }
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-08-21 14:30:53

안녕하세요 예스스탁입니다. 고저점간 추세선은 이미 출력이 되어 있으므로 하단에서는 조건에 따라 색만 지정하게 하시면 됩니다. 작성하신 내용에는 추세선을 또 출력하고 있습니다. 1. 지정한 조건이 만족하면 추세선을 먼저 출력하고 2. 최고가 최저가 발생 순서에 따라 먼저 지정한 색으로 변경한 후에 3. if (hb > lb and abs(hb-lb) <= 5) Then 조건이면 다른색으로 변경하면 됩니다. var : n(15); var : cnt(0),hh(0),hb(0),ll(0),lb(0),TL(0),TX(0),tx1(0),TL1(0); if CountIf(H >= L*1.11,n) >= 1 Then { #"최근봉"만 표시되게 하기위해 "직전에서 출력된 추세선과 텍스트는 삭제" #n개봉 최고가와 최고가위치(몇봉전인지) 계산 #n개봉 최저가와 최저가위치(몇봉전인지) 계산 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 (lb > hb and hh >= ll*1.24) or (lb < hb and ll <= hh*0.80) Then { //TL_Delete(TL); // Text_Delete(TX); //TL_Delete(TL1); if (hb < lb and abs(hb-lb) <= 18) or (hb > lb and abs(hb-lb) <= 9) Then { #상향,하향 일때 봉갯수 조건 TL = TL_New(sDate[hb],sTime[hb],hh,sDate[lb],sTime[lb],ll); TL_SetDrawMode(tl,0); TL_SetExtRight(tl,true); #20개봉 수평선 TL1 = TL_New(sDate[n-1],sTime[n-1],hh,sDate[0],sTime[0],hh); TL_SetDrawMode(tl1,0); TL_SetColor(tl1,Tomato); TL_SetSize(tl1,0); #최고가가 더 가까우면 빨강 아니면 파랑 if lb > hb Then { TL_SetColor(TL,Pink); TL_SetStyle(tl,2); } Else { TL_SetColor(TL,LightBlue); TL_SetStyle(tl,2); } #최고가 이후 최저가 발생했고 5봉이내이면 초록색 if (hb > lb and abs(hb-lb) <= 5) Then { TL_SetColor(tl,Green); TX1 = text_new(sDate,sTime,LL,NumToStr((ll-hh)/hh*100,2)); Text_SetStyle(tx1,2,0); } //TL_Delete(TL1); TX = Text_New(TL_GetEndDate(TL),TL_GetEndTime(TL),TL_GetendVal(TL),NumToStr(abs(hb-lb),0)); Text_SetSize(tx,12); } } } 즐거운 하루되세요 > yamu 님이 쓴 글입니다. > 제목 : 수식에 표시 관련해서 여쭤보겠습니다 > 추세선에 텍스트 표시 하나 여쭤보겠습니다 질문은 수식안에 !!!!표시로 작성하였습니다 질문은 총 2개 입니다 감사합니다 var : n(15); var : cnt(0),hh(0),hb(0),ll(0),lb(0),TL(0),TX(0),tx1(0),TL1(0); if CountIf(H >= L*1.11,n) >= 1 Then { #"최근봉"만 표시되게 하기위해 "직전에서 출력된 추세선과 텍스트는 삭제" #n개봉 최고가와 최고가위치(몇봉전인지) 계산 #n개봉 최저가와 최저가위치(몇봉전인지) 계산 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 (lb > hb and hh >= ll*1.24) or (lb < hb and ll <= hh*0.80) Then { //TL_Delete(TL); // Text_Delete(TX); //TL_Delete(TL1); if (hb < lb and abs(hb-lb) <= 18) or (hb > lb and abs(hb-lb) <= 9) Then { #상향,하향 일때 봉갯수 조건 TL = TL_New(sDate[hb],sTime[hb],hh,sDate[lb],sTime[lb],ll); TL_SetDrawMode(tl,0); TL_SetExtRight(tl,true); #20개봉 수평선 TL1 = TL_New(sDate[n-1],sTime[n-1],hh,sDate[0],sTime[0],hh); TL_SetDrawMode(tl1,0); TL_SetColor(tl1,Tomato); TL_SetSize(tl1,0); !!!!아래 조건을 작성해봤는데 봉갯수 5개 이하면 다른 컬러로 하려고 합니다. 이전 추세선 (봉갯수 9개 이하) 과 겹치면서 표시가 모호해지는데 방법이 있을까요? 상위 if문에서 abs(hb-lb) >5 and abs(hb-lb)<=9 으로 작성해봤는데 제대로 나오지가 않습니다. 또한 수정의 신속함을 위해서 상위 if 문은 그대로 둔채로 수정이 가능하게 해주실 수 있을까요?? if (hb > lb and abs(hb-lb) <= 5) Then { tl=tl_new(sDate[hb],sTime[hb],hh,sDate[lb],sTime[lb],ll); TL_SetDrawMode(tl,0); TL_SetStyle(tl,2); TL_SetColor(tl,Green); !!!! TX1 = 이 부분에 고점 저점간의 등락률을 표시하고 싶습니다. } //TL_Delete(TL1); #최고가가 더 가까우면 빨강 아니면 파랑 if lb > hb Then { TL_SetColor(TL,Pink); TL_SetStyle(tl,2); } Else { TL_SetColor(TL,LightBlue); TL_SetStyle(tl,2); } TX = Text_New(TL_GetEndDate(TL),TL_GetEndTime(TL),TL_GetendVal(TL),NumToStr(abs(hb-lb),0)); Text_SetSize(tx,12); } }