커뮤니티

고점 저점가격이 소수점 아래 5자리까지 나오도록 수정 부탁드립니다.

프로필 이미지
매버릭
2020-04-14 15:37:50
546
글번호 137928
답변완료
안녕하세요? 첨부지표의 Text표시가 소수점아래 2자리까지 표시가 되게 만들어져있어서 유로에 적용하련; 불편해서 볼수가 없습니다. 제가 고쳐서 써 보려고 했으나 잘 안되어 부탁드립니다. 소수저 ㅁ아래 5자리까지 나오게 수정 좀 부탁드립니다. 내일 하루 투표 잘 하시고 편히 쉬세요.
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2020-04-14 16:14:11

안녕하세요 예스스탁입니다. 가격과 차이값만 소숫점자리 지정할수 있게 수정해 드립니다. 표시되는 내용 중 등락률(%)는 기존과 같이 2자리로 표시됩니다. Input:Period(9),레벨(4),선색깔(MAGENTA),선두께(3),수치표시여부(1),수치표시위치(10),폰트크기(13),두껍게(1),표시소숫점자리(5); Var:RsiValue(0),고점(1),저점(-1),신규(1),연장(2),연속(3),삼선(4); Array:고[10,44](0),저[10,44](0), // 열번호 : 1=가격,2=Index,3=sDate,4=sTime,11=가격,12=Index,13=sDate,14=sTime 최종상태[5](0),처리구분[5](0),TL[3](0),Text[3](0); //=========================================================// If 레벨 <= 4 Then { Var1 = 레벨 * 10; RsiValue = RSI(Period); Value1 = IndicatorZigZag302(H,L,RsiValue,50,고,저,최종상태,처리구분); If 최종상태[레벨] == 고점 Then { If 처리구분[레벨] == 신규 Then { TL[2] = TL_New(저[1,Var1 + 3],저[1,Var1 + 4],저[1,Var1 + 1],고[1,Var1 + 3],고[1,Var1 + 4],고[1,Var1 + 1]); If 수치표시여부 == 1 Then { Text[2] = Text_New(고[1,Var1 + 3],고[1,Var1 + 4],고[1,Var1 + 1] + (수치표시위치 * PriceScale), NumToStr(고[1,Var1 + 1],표시소숫점자리) + "(+" + NumToStr(고[1,Var1 + 1] - 저[1,Var1 + 1],표시소숫점자리) + ", " + NumToStr((고[1,Var1 + 1] - 저[1,Var1 + 1])*100/저[1,Var1 + 1],2) + "%)"); Text_SetStyle(Text[2], 2, 1); Text_SetSize(Text[2],폰트크기); Text_SetBold(Text[2],두껍게); Text_SetColor(Text[2],RED); } } If 처리구분[레벨] == 연장 Then { TL_SetEnd(TL[2],고[1,Var1 + 3],고[1,Var1 + 4],고[1,Var1 + 1]); If 수치표시여부 == 1 Then { Text_SetLocation(Text[2],고[1,Var1 + 3],고[1,Var1 + 4],고[1,Var1 + 1] + (수치표시위치 * PriceScale)); Text_SetString(Text[2],NumToStr(고[1,Var1 + 1],표시소숫점자리) + "(+" + NumToStr(고[1,Var1 + 1] - 저[1,Var1 + 1],표시소숫점자리) + ", " + NumToStr((고[1,Var1 + 1] - 저[1,Var1 + 1])*100/저[1,Var1 + 1],2) + "%)"); } } If 처리구분[레벨] == 연속 Then { TL[1] = TL_New(고[2,Var1 + 3],고[2,Var1 + 4],고[2,Var1 + 1],저[1,Var1 + 3],저[1,Var1 + 4],저[1,Var1 + 1]); TL[2] = TL_New(저[1,Var1 + 3],저[1,Var1 + 4],저[1,Var1 + 1],고[1,Var1 + 3],고[1,Var1 + 4],고[1,Var1 + 1]); If 수치표시여부 == 1 Then { Text[1] = Text_New(저[1,Var1 + 3],저[1,Var1 + 4],저[1,Var1 + 1] - (수치표시위치 * PriceScale), NumToStr(저[1,Var1 + 1],표시소숫점자리) + "(-" + NumToStr(고[2,Var1 + 1] - 저[1,Var1 + 1],표시소숫점자리) + ", " + NumToStr((고[2,Var1 + 1] - 저[1,Var1 + 1])*100/고[2,Var1 + 1],2) + "%)"); Text[2] = Text_New(고[1,Var1 + 3],고[1,Var1 + 4],고[1,Var1 + 1] + (수치표시위치 * PriceScale), NumToStr(고[1,Var1 + 1],표시소숫점자리) + "(+" + NumToStr(고[1,Var1 + 1] - 저[1,Var1 + 1],표시소숫점자리) + ", " + NumToStr((고[1,Var1 + 1] - 저[1,Var1 + 1])*100/저[1,Var1 + 1],2) + "%)"); Text_SetStyle(Text[1], 2, 0); Text_SetStyle(Text[2], 2, 1); Text_SetSize(Text[1],폰트크기); Text_SetSize(Text[2],폰트크기); Text_SetBold(Text[1],두껍게); Text_SetBold(Text[2],두껍게); Text_SetColor(Text[1],BLUE); Text_SetColor(Text[2],RED); } } If 처리구분[레벨] == 삼선 Then { TL[0] = TL_New(저[2,Var1 + 3],저[2,Var1 + 4],저[2,Var1 + 1],고[2,Var1 + 3],고[2,Var1 + 4],고[2,Var1 + 1]); TL[1] = TL_New(고[2,Var1 + 3],고[2,Var1 + 4],고[2,Var1 + 1],저[1,Var1 + 3],저[1,Var1 + 4],저[1,Var1 + 1]); TL[2] = TL_New(저[1,Var1 + 3],저[1,Var1 + 4],저[1,Var1 + 1],고[1,Var1 + 3],고[1,Var1 + 4],고[1,Var1 + 1]); If 수치표시여부 == 1 Then { Text[0] = Text_New(고[2,Var1 + 3],고[2,Var1 + 4],고[2,Var1 + 1] + (수치표시위치 * PriceScale), NumToStr(고[2,Var1 + 1],표시소숫점자리) + "(+" + NumToStr(고[2,Var1 + 1] - 저[2,Var1 + 1],표시소숫점자리) + ", " + NumToStr((고[2,Var1 + 1] - 저[2,Var1 + 1])*100/저[2,Var1 + 1],2) + "%)"); Text[1] = Text_New(저[1,Var1 + 3],저[1,Var1 + 4],저[1,Var1 + 1] - (수치표시위치 * PriceScale), NumToStr(저[1,Var1 + 1],표시소숫점자리) + "(-" + NumToStr(고[2,Var1 + 1] - 저[1,Var1 + 1],표시소숫점자리) + ", " + NumToStr((고[2,Var1 + 1] - 저[1,Var1 + 1])*100/고[2,Var1 + 1],2) + "%)"); Text[2] = Text_New(고[1,Var1 + 3],고[1,Var1 + 4],고[1,Var1 + 1] + (수치표시위치 * PriceScale), NumToStr(고[1,Var1 + 1],표시소숫점자리) + "(+" + NumToStr(고[1,Var1 + 1] - 저[1,Var1 + 1],표시소숫점자리) + ", " + NumToStr((고[1,Var1 + 1] - 저[1,Var1 + 1])*100/저[1,Var1 + 1],2) + "%)"); Text_SetStyle(Text[0], 2, 1); Text_SetStyle(Text[1], 2, 0); Text_SetStyle(Text[2], 2, 1); Text_SetSize(Text[0],폰트크기); Text_SetSize(Text[1],폰트크기); Text_SetSize(Text[2],폰트크기); Text_SetBold(Text[0],두껍게); Text_SetBold(Text[1],두껍게); Text_SetBold(Text[2],두껍게); Text_SetColor(Text[0],RED); Text_SetColor(Text[1],BLUE); Text_SetColor(Text[2],RED); } } } If 최종상태[레벨] == 저점 Then { If 처리구분[레벨] == 신규 Then { TL[2] = TL_New(고[1,Var1 + 3],고[1,Var1 + 4],고[1,Var1 + 1],저[1,Var1 + 3],저[1,Var1 + 4],저[1,Var1 + 1]); If 수치표시여부 == 1 Then { Text[2] = Text_New(저[1,Var1 + 3],저[1,Var1 + 4],저[1,Var1 + 1] - (수치표시위치 * PriceScale), NumToStr(저[1,Var1 + 1],표시소숫점자리) + "(-" + NumToStr(고[1,Var1 + 1] - 저[1,Var1 + 1],표시소숫점자리) + ", " + NumToStr((고[1,Var1 + 1] - 저[1,Var1 + 1])*100/고[1,Var1 + 1],2) + "%)"); Text_SetStyle(Text[2], 2, 0); Text_SetSize(Text[2],폰트크기); Text_SetBold(Text[2],두껍게); Text_SetColor(Text[2],BLUE); } } If 처리구분[레벨] == 연장 Then { TL_SetEnd(TL[2],저[1,Var1 + 3],저[1,Var1 + 4],저[1,Var1 + 1]); If 수치표시여부 == 1 Then { Text_SetLocation(Text[2],저[1,Var1 + 3],저[1,Var1 + 4],저[1,Var1 + 1] - (수치표시위치 * PriceScale)); Text_SetString(Text[2],NumToStr(저[1,Var1 + 1],표시소숫점자리) + "(-" + NumToStr(고[1,Var1 + 1] - 저[1,Var1 + 1],표시소숫점자리) + ", " + NumToStr((고[1,Var1 + 1] - 저[1,Var1 + 1])*100/고[1,Var1 + 1],2) + "%)"); } } If 처리구분[레벨] == 연속 Then { TL[1] = TL_New(저[2,Var1 + 3],저[2,Var1 + 4],저[2,Var1 + 1],고[1,Var1 + 3],고[1,Var1 + 4],고[1,Var1 + 1]); TL[2] = TL_New(고[1,Var1 + 3],고[1,Var1 + 4],고[1,Var1 + 1],저[1,Var1 + 3],저[1,Var1 + 4],저[1,Var1 + 1]); If 수치표시여부 == 1 Then { Text[1] = Text_New(고[1,Var1 + 3],고[1,Var1 + 4],고[1,Var1 + 1] + (수치표시위치 * PriceScale), NumToStr(고[1,Var1 + 1],표시소숫점자리) + "(+" + NumToStr(고[1,Var1 + 1] - 저[2,Var1 + 1],표시소숫점자리) + ", " + NumToStr((고[1,Var1 + 1] - 저[2,Var1 + 1])*100/저[2,Var1 + 1],2) + "%)"); Text[2] = Text_New(저[1,Var1 + 3],저[1,Var1 + 4],저[1,Var1 + 1] - (수치표시위치 * PriceScale), NumToStr(저[1,Var1 + 1],표시소숫점자리) + "(-" + NumToStr(고[1,Var1 + 1] - 저[1,Var1 + 1],표시소숫점자리) + ", " + NumToStr((고[1,Var1 + 1] - 저[1,Var1 + 1])*100/고[1,Var1 + 1],2) + "%)"); Text_SetStyle(Text[1], 2, 1); Text_SetStyle(Text[2], 2, 0); Text_SetSize(Text[1],폰트크기); Text_SetSize(Text[2],폰트크기); Text_SetBold(Text[1],두껍게); Text_SetBold(Text[2],두껍게); Text_SetColor(Text[1],RED); Text_SetColor(Text[2],BLUE); } } If 처리구분[레벨] == 삼선 Then { TL[0] = TL_New(고[2,Var1 + 3],고[2,Var1 + 4],고[2,Var1 + 1],저[2,Var1 + 3],저[2,Var1 + 4],저[2,Var1 + 1]); TL[1] = TL_New(저[2,Var1 + 3],저[2,Var1 + 4],저[2,Var1 + 1],고[1,Var1 + 3],고[1,Var1 + 4],고[1,Var1 + 1]); TL[2] = TL_New(고[1,Var1 + 3],고[1,Var1 + 4],고[1,Var1 + 1],저[1,Var1 + 3],저[1,Var1 + 4],저[1,Var1 + 1]); If 수치표시여부 == 1 Then { Text[0] = Text_New(저[2,Var1 + 3],저[2,Var1 + 4],저[2,Var1 + 1] - (수치표시위치 * PriceScale), NumToStr(저[2,Var1 + 1],표시소숫점자리) + "(-" + NumToStr(고[2,Var1 + 1] - 저[2,Var1 + 1],표시소숫점자리) + ", " + NumToStr((고[2,Var1 + 1] - 저[2,Var1 + 1])*100/고[2,Var1 + 1],2) + "%)"); Text[1] = Text_New(고[1,Var1 + 3],고[1,Var1 + 4],고[1,Var1 + 1] + (수치표시위치 * PriceScale), NumToStr(고[1,Var1 + 1],표시소숫점자리) + "(+" + NumToStr(고[1,Var1 + 1] - 저[2,Var1 + 1],표시소숫점자리) + ", " + NumToStr((고[1,Var1 + 1] - 저[2,Var1 + 1])*100/저[2,Var1 + 1],2) + "%)"); Text[2] = Text_New(저[1,Var1 + 3],저[1,Var1 + 4],저[1,Var1 + 1] - (수치표시위치 * PriceScale), NumToStr(저[1,Var1 + 1],표시소숫점자리) + "(-" + NumToStr(고[1,Var1 + 1] - 저[1,Var1 + 1],표시소숫점자리) + ", " + NumToStr((고[1,Var1 + 1] - 저[1,Var1 + 1])*100/고[1,Var1 + 1],2) + "%)"); Text_SetStyle(Text[0], 2, 0); Text_SetStyle(Text[1], 2, 1); Text_SetStyle(Text[2], 2, 0); Text_SetSize(Text[0],폰트크기); Text_SetSize(Text[1],폰트크기); Text_SetSize(Text[2],폰트크기); Text_SetBold(Text[0],두껍게); Text_SetBold(Text[1],두껍게); Text_SetBold(Text[2],두껍게); Text_SetColor(Text[0],BLUE); Text_SetColor(Text[1],RED); Text_SetColor(Text[2],BLUE); } } } TL_SetColor(TL[0],선색깔); TL_SetSize(TL[0],선두께); TL_SetColor(TL[1],선색깔); TL_SetSize(TL[1],선두께); TL_SetColor(TL[2],선색깔); TL_SetSize(TL[2],선두께); } Else { Alert("4레벨까지만 가능합니다!!"); } 즐거운 하루되세요 > 매버릭 님이 쓴 글입니다. > 제목 : 고점 저점가격이 소수점 아래 5자리까지 나오도록 수정 부탁드립니다. > 안녕하세요? 첨부지표의 Text표시가 소수점아래 2자리까지 표시가 되게 만들어져있어서 유로에 적용하련; 불편해서 볼수가 없습니다. 제가 고쳐서 써 보려고 했으나 잘 안되어 부탁드립니다. 소수저 ㅁ아래 5자리까지 나오게 수정 좀 부탁드립니다. 내일 하루 투표 잘 하시고 편히 쉬세요.