커뮤니티
지표식 부탁드려요
2016-01-14 10:15:02
238
글번호 94397
첨부한 고저라인파동식에서 고점과 저점이 숫자로 표현되고 있습니다.
이식에서 좀 더 추가하고 싶은 내용은 고점과 저점의 진폭이 나오면 (상: 고점+진폭, 하: 저점-진폭) 계산된 숫자까지 표현되게 하고 싶습니다.
예로 고점 230.5, 저점 230일때 (진폭: 0.5, 상: 240, 하: 295.5) 이렇게 3가지 내용이 표현되었으면 합니다.
기존 지표는 그대로 두시고 3가지 내용을 더 추가해 주세요,
감사합니다.
- 1. 고저라인파동.yin (0.00 MB)
답변 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가지 내용을 더 추가해 주세요,
감사합니다.