커뮤니티

수정 부탁 드립니다.

프로필 이미지
참아람
2021-04-27 12:49:12
1309
글번호 148448
답변완료
더블라인을 만들고 싶은데요 고점이 만들어지면 고점라인 20틱 아래로 고점 라인과 같이 평행선이 만들어 지고 반대로 저점이 만들어지면 저점라인 20틱위에 저점라인과 평행되게 선을 추가해 주세요. true선도 같이요. Input:length(12); Var:j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),TL1(0),TL2(0),TL3(0), Text1(0),처리구분(""),T(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 { T = 1; 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); TL_Delete(TL2); Text_Delete(Text1); } TL1 = TL_New(sDate[sBar],sTime[sBar],저점[1,1], sDate[eBar],sTime[eBar],고점[1,1]); TL2 = 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)); Text_SetStyle(Text1, 2, 1); TL_SetSize(TL2,2); TL_SetColor(TL2,BLUe); //저점 } } If 처리구분 == "저점처리" Then { T = -1; 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); TL_Delete(TL2); Text_Delete(Text1); } TL1 = TL_New(sDate[sBar],sTime[sBar],고점[1,1], sDate[eBar],sTime[eBar],저점[1,1]); TL2 = 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],1)); Text_SetStyle(Text1, 2, 10); TL_SetSize(TL2,2); TL_SetColor(TL2,BLUe); } } TL_SetSize(TL1,3); TL_SetColor(TL1,CYAN); TL_Delete(TL3); if T == 1 then{ TL3 = TL_New(sDate[index-고점[1,2]],sTime[index-고점[1,2]],고점[1,1],sDate,sTime,고점[1,1]); TL_SetColor(TL3,BLUe); TL_SetSize(TL3,2); TL_SetExtRight(TL3,true); } if T == -1 then{ TL3 = TL_New(sDate[index-저점[1,2]],sTime[index-저점[1,2]],저점[1,1],sDate,sTime,저점[1,1]); TL_SetColor(TL3,BLUe); //저점 TL_SetSize(TL3,2); TL_SetExtRight(TL3,true); }
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-04-27 16:27:40

안녕하세요 예스스탁입니다. Input:length(12); Var:j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),TL1(0),TL2(0),TL3(0), Text1(0),처리구분(""),T(0),TL21(0),TL31(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 { T = 1; 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); TL_Delete(TL2); TL_Delete(TL21); Text_Delete(Text1); } TL1 = TL_New(sDate[sBar],sTime[sBar],저점[1,1],sDate[eBar],sTime[eBar],고점[1,1]); TL2 = TL_New(sDate[sBar],sTime[sBar],저점[1,1],sDate[eBar],sTime[eBar],저점[1,1]); TL21 = TL_New(sDate[sBar],sTime[sBar],저점[1,1]+PriceScale*20,sDate[eBar],sTime[eBar],저점[1,1]+PriceScale*20); Text1 = Text_New(sDate[eBar],sTime[eBar],고점[1,1], NumToStr(고점[1,1],2)); Text_SetStyle(Text1, 2, 1); TL_SetSize(TL2,2); TL_SetColor(TL2,BLUe); //저점 TL_SetSize(TL21,2); TL_SetColor(TL21,BLUe); //저점 } } If 처리구분 == "저점처리" Then { T = -1; 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); TL_Delete(TL2); TL_Delete(TL21); Text_Delete(Text1); } TL1 = TL_New(sDate[sBar],sTime[sBar],고점[1,1],sDate[eBar],sTime[eBar],저점[1,1]); TL2 = TL_New(sDate[sBar],sTime[sBar],고점[1,1],sDate[eBar],sTime[eBar],고점[1,1]); TL21 = TL_New(sDate[sBar],sTime[sBar],고점[1,1]-PriceScale*20,sDate[eBar],sTime[eBar],고점[1,1]-PriceScale*20); Text1 = Text_New(sDate[eBar],sTime[eBar],저점[1,1],NumToStr(저점[1,1],1)); Text_SetStyle(Text1, 2, 10); TL_SetSize(TL2,2); TL_SetColor(TL2,BLUe); TL_SetSize(TL21,2); TL_SetColor(TL21,BLUe); } } TL_SetSize(TL1,3); TL_SetColor(TL1,CYAN); TL_Delete(TL3); TL_Delete(TL31); if T == 1 then { TL3 = TL_New(sDate[index-고점[1,2]],sTime[index-고점[1,2]],고점[1,1],sDate,sTime,고점[1,1]); TL31 = TL_New(sDate[index-고점[1,2]],sTime[index-고점[1,2]],고점[1,1]-PriceScale*20,sDate,sTime,고점[1,1]-PriceScale*20); TL_SetColor(TL3,BLUE); TL_SetSize(TL3,2); TL_SetExtRight(TL3,true); TL_SetColor(TL31,BLUE); TL_SetSize(TL31,2); TL_SetExtRight(TL31,true); } if T == -1 then { TL3 = TL_New(sDate[index-저점[1,2]],sTime[index-저점[1,2]],저점[1,1],sDate,sTime,저점[1,1]); TL31 = TL_New(sDate[index-저점[1,2]],sTime[index-저점[1,2]],저점[1,1]+PriceScale*20,sDate,sTime,저점[1,1]+PriceScale*20); TL_SetColor(TL3,BLUE); //저점 TL_SetSize(TL3,2); TL_SetExtRight(TL3,true); TL_SetColor(TL31,BLUE); //저점 TL_SetSize(TL31,2); TL_SetExtRight(TL31,true); } 즐거운 하루되세요 > 참아람 님이 쓴 글입니다. > 제목 : 수정 부탁 드립니다. > 더블라인을 만들고 싶은데요 고점이 만들어지면 고점라인 20틱 아래로 고점 라인과 같이 평행선이 만들어 지고 반대로 저점이 만들어지면 저점라인 20틱위에 저점라인과 평행되게 선을 추가해 주세요. true선도 같이요. Input:length(12); Var:j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),TL1(0),TL2(0),TL3(0), Text1(0),처리구분(""),T(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 { T = 1; 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); TL_Delete(TL2); Text_Delete(Text1); } TL1 = TL_New(sDate[sBar],sTime[sBar],저점[1,1], sDate[eBar],sTime[eBar],고점[1,1]); TL2 = 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)); Text_SetStyle(Text1, 2, 1); TL_SetSize(TL2,2); TL_SetColor(TL2,BLUe); //저점 } } If 처리구분 == "저점처리" Then { T = -1; 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); TL_Delete(TL2); Text_Delete(Text1); } TL1 = TL_New(sDate[sBar],sTime[sBar],고점[1,1], sDate[eBar],sTime[eBar],저점[1,1]); TL2 = 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],1)); Text_SetStyle(Text1, 2, 10); TL_SetSize(TL2,2); TL_SetColor(TL2,BLUe); } } TL_SetSize(TL1,3); TL_SetColor(TL1,CYAN); TL_Delete(TL3); if T == 1 then{ TL3 = TL_New(sDate[index-고점[1,2]],sTime[index-고점[1,2]],고점[1,1],sDate,sTime,고점[1,1]); TL_SetColor(TL3,BLUe); TL_SetSize(TL3,2); TL_SetExtRight(TL3,true); } if T == -1 then{ TL3 = TL_New(sDate[index-저점[1,2]],sTime[index-저점[1,2]],저점[1,1],sDate,sTime,저점[1,1]); TL_SetColor(TL3,BLUe); //저점 TL_SetSize(TL3,2); TL_SetExtRight(TL3,true); }