커뮤니티

지표식 부탁드려요

프로필 이미지
할수있따
2016-01-14 10:15:02
238
글번호 94397
답변완료
첨부한 고저라인파동식에서 고점과 저점이 숫자로 표현되고 있습니다. 이식에서 좀 더 추가하고 싶은 내용은 고점과 저점의 진폭이 나오면 (상: 고점+진폭, 하: 저점-진폭) 계산된 숫자까지 표현되게 하고 싶습니다. 예로 고점 230.5, 저점 230일때 (진폭: 0.5, 상: 240, 하: 295.5) 이렇게 3가지 내용이 표현되었으면 합니다. 기존 지표는 그대로 두시고 3가지 내용을 더 추가해 주세요, 감사합니다.
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2016-01-14 14:34:25

안녕하세요 예스스탁입니다. Input:length(12); Var:j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),TL1(0), Text1(0),처리구분(""); Array:고점[10,2](0),저점[10,2](0); //가격,위치 처리구분 = ""; If Highest(H,length) == H and lastHiVal <> H and Lowest(L,length) == L and lastLoVal <> L Then { If 저점[1,1] > L Then 처리구분 = "저점처리"; If 고점[1,1] < H Then 처리구분 = "고점처리"; } Else If Highest(H,length) == H and lastHiVal <> H Then 처리구분 = "고점처리"; Else If Lowest(L,length) == L and lastLoVal <> L Then 처리구분 = "저점처리"; If 처리구분 == "고점처리" Then { lastHiVal = H; If 고점[1,2] < 저점[1,2] Then { For j = 10 DownTo 2 { 고점[j,1] = 고점[j-1,1]; 고점[j,2] = 고점[j-1,2]; } } If 고점[1,2] < 저점[1,2] or 고점[1,1] < H Then { 고점[1,1] = H; 고점[1,2] = Index; sBar = Index - 저점[1,2]; eBar = 0; If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then { TL_Delete(TL1); Text_Delete(Text1); } TL1 = TL_New(sDate[sBar],sTime[sBar],저점[1,1], sDate[eBar],sTime[eBar],고점[1,1]); Text1 = Text_New(sDate[eBar],sTime[eBar],고점[1,1],NumToStr(고점[1,1],2) +NewLine+"진폭"+NumToStr((고점[1,1]-저점[1,1]),2) +NewLine+"상"+NumToStr(고점[1,1]+(고점[1,1]-저점[1,1]),2) +NewLine+"하"+NumToStr(고점[1,1]-(고점[1,1]-저점[1,1]),2)); Text_SetStyle(Text1, 2, 1); } } If 처리구분 == "저점처리" Then { lastLoVal = L; If 저점[1,2] < 고점[1,2] then { For j = 10 DownTo 2 { 저점[j,1] = 저점[j-1,1]; 저점[j,2] = 저점[j-1,2]; } } If 저점[1,2] < 고점[1,2] or 저점[1,1] > L then { 저점[1,1] = L; 저점[1,2] = Index; sBar = Index - 고점[1,2]; eBar = 0; If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then { TL_Delete(TL1); Text_Delete(Text1); } TL1 = TL_New(sDate[sBar],sTime[sBar],고점[1,1], sDate[eBar],sTime[eBar],저점[1,1]); Text1 = Text_New(sDate[eBar],sTime[eBar],저점[1,1],NumToStr(저점[1,1],2) +NewLine+"진폭"+NumToStr((고점[1,1]-저점[1,1]),2) +NewLine+"상"+NumToStr(저점[1,1]+(고점[1,1]-저점[1,1]),2) +NewLine+"하"+NumToStr(저점[1,1]-(고점[1,1]-저점[1,1]),2)); Text_SetStyle(Text1, 2, 0); } } TL_SetSize(TL1,2); TL_SetColor(TL1,BLACK); 즐거운 하루되세요 > 할수있따 님이 쓴 글입니다. > 제목 : 지표식 부탁드려요 > 첨부한 고저라인파동식에서 고점과 저점이 숫자로 표현되고 있습니다. 이식에서 좀 더 추가하고 싶은 내용은 고점과 저점의 진폭이 나오면 (상: 고점+진폭, 하: 저점-진폭) 계산된 숫자까지 표현되게 하고 싶습니다. 예로 고점 230.5, 저점 230일때 (진폭: 0.5, 상: 240, 하: 295.5) 이렇게 3가지 내용이 표현되었으면 합니다. 기존 지표는 그대로 두시고 3가지 내용을 더 추가해 주세요, 감사합니다.