커뮤니티

추세선 직전과의 차이

프로필 이미지
고성
2023-02-13 07:58:57
1770
글번호 166211
답변완료
input : Period(120),틱1(3),틱2(4); Var:j(0),T(0); Var: date11(0),date12(0),time11(0),time12(0),TL1(0),TL(0),tl9(0), date21(0),date22(0),time21(0),time22(0),txx(0), vTL(0), vTL9(0),txxx(0), date31(0),date32(0),time31(0),time32(0),tx(0),tx1(0),tl4(0),tx4(0); Array:HiVal[20](0),LoVal[20](0),HiBar[20](0),LoBar[20](0); Array:r[7](0),fr[7](0),TL2[7](0),TL3[7](0),TX2[7](0),TX3[7](0); Plot1(value12); For j = 0 To 19 { HiBar[j] = HiBar[j] + 1; LoBar[j] = LoBar[j] + 1; } if crossup(c,highest(H,Period)[1]) Then T = 1; if CrossDown(c,Lowest(L,Period)[1]) Then T = -1; If T == -1 Then { If T[1] != -1 Then { For j = 18 DownTo 0 { LoVal[j+1] = LoVal[j]; LoBar[j+1] = LoBar[j]; } LoVal[0] = L; LoBar[0] = 0; date11 = date[HiBar[0]]; time11 = stime[HiBar[0]]; Value11 = HiVal[0]; date12 = date[LoBar[0]]; time12 = stime[LoBar[0]]; Value12 = LoVal[0]; date21 = date[HiBar[0]]; time21 = stime[HiBar[0]]; date22 = date[0]; time22 = stime[0]; for j = 0 to 6 { fr[j] = LoVal[1] + ((HiVal[0] - LoVal[1]) * r[j]); } Condition3 = False; if Condition3 == False and Value12 <= value11-0.5 and value12 < DayHigh-0.8 Then { Tx4=Text_New(date11,time11,value11+PriceScale*2,"●"); Condition3 = true; Text_SetStyle(tx4,2,2); Text_SetColor(tx4,Black); Text_SetSize(tx4,35); } Txx = Text_New(date11,time11,loval[0]-PriceScale*10,"●"); Condition99 = true; Text_SetColor(Txx,Red); Text_SetStyle(Txx,2,2); Text_SetSize(txx,20); if Condition99 == true and Loval[0] <= loval[1]-PriceScale*틱2 Then { Condition99 = False; Text_Delete(txx); PlaySound("C:₩예스트레이더₩data₩Sound₩reject.wav"); } } Else { If LoVal[0] > L Then { LoVal[0] = L; LoBar[0] = 0; date12 = date[LoBar[0]]; time12 = stime[LoBar[0]]; Value12 = LoVal[0]; date22 = date[0]; time22 = stime[0]; } if Condition3 == False and Value12 <= value11-0.5 and value12 < DayHigh-0.8 Then { Tx4 =Text_New(date11,time11,value11+PriceScale*2,"●"); Condition3 = true; Text_SetColor(Tx4,Black); Text_SetStyle(tx4,2,2); Text_SetSize(tx4,35); } TL_Delete(tl); if Condition99 == true and Loval[0] <= loval[1]-PriceScale*틱2 Then { Condition99 = False; Text_Delete(txx); PlaySound("C:₩예스트레이더₩data₩Sound₩reject.wav"); } } } If T == 1 Then { If T[1] != 1 Then { if Condition3 == true Then Text_Delete(tx4); For j = 18 DownTo 0 { HiVal[j+1] = HiVal[j]; HiBar[j+1] = HiBar[j]; } HiVal[0] = H; HiBar[0] = 0; date11 = date[LoBar[0]]; time11 = stime[LoBar[0]]; Value11 = LoVal[0]; date12 = date[HiBar[0]]; time12 = stime[HiBar[0]]; Value12 = HiVal[0]; date31 = date[LoBar[0]]; time31 = stime[LoBar[0]]; date32 = date[0]; time32 = stime[0]; for j = 0 to 5 { fr[j] = LoVal[0] + ((HiVal[1] - LoVal[0]) * r[j]); } if Condition99 == true and Loval[0] >= Loval[1]-PriceScale*틱1 Then { Condition99 = False; Text_Delete(txx); } } If HiVal[0] < H Then { HiVal[0] = H; HiBar[0] = 0; date12 = date[HiBar[0]]; time12 = stime[HiBar[0]]; Value12 = HiVal[0]; date32 = date[0]; time32 = stime[0]; } } 1. 현 수식 중에 양전환되거나 직전저점을 4틱 벗어나면 삭제되는 빨간 동그라미의 위치를 loval[0] 고정에서 하락추세선 하단을 따라 같이 내려가는 이동형으로 수정. 2-1. 추세선이 양전환되면 바로 직전고점과의 차이를, 상승 추세선 상단을 따라 같이 올라가며 표기. 처음에는 -로 출발되니까 파란 글씨로, 차이를 변경해가며 표기. - 숫자가 점차 줄어들다 직전 고점에 도달하면 차이가 0 되고, 돌파하여 +로 바뀌면 빨간색으로 변경하여 돌파된 만큼의 숫자 표기 계속. 이전 상단은 지우고 마지막 상승 추세선 차이 숫자만 남긴다. 음전환되면 반대로 바로 직전저점과의 차이를 빨간 글씨로 추세선 하단을 따라가며 표기. 숫자가 줄어들다가 직전 저점에 도달하여 0 된후 붕괴되어 -로 바뀌면 파란 글씨로 변경하여 하단을 따라 내려가며 계속 표기. 이전 하락추세선 차이 숫자는 지우고 마지막 차이 숫자만 남긴다. 2-2. 직전과의 차이 숫자 표기는 상단 하나,하단 하나씩만 남기고 이전것은 항상 삭제. 2-3. 직전과의 차이는 틱수로 계산하여 표기 (0.15면 3). 감사합니다.
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2023-02-13 17:55:08

안녕하세요 예스스탁입니다. input : Period(120),틱1(3),틱2(4); Var:j(0),T(0); Var: date11(0),date12(0),time11(0),time12(0),TL1(0),TL(0),tl9(0), date21(0),date22(0),time21(0),time22(0),txx(0), vTL(0), vTL9(0),txxx(0), date31(0),date32(0),time31(0),time32(0),tx(0),tx1(0),tl4(0),tx4(0); Array:HiVal[20](0),LoVal[20](0),HiBar[20](0),LoBar[20](0); Array:r[7](0),fr[7](0),TL2[7](0),TL3[7](0),TX2[7](0),TX3[7](0); var : upt(0),dnt(0); Plot1(value12); For j = 0 To 19 { HiBar[j] = HiBar[j] + 1; LoBar[j] = LoBar[j] + 1; } if crossup(c,highest(H,Period)[1]) Then T = 1; if CrossDown(c,Lowest(L,Period)[1]) Then T = -1; If T == -1 Then { If T[1] != -1 Then { For j = 18 DownTo 0 { LoVal[j+1] = LoVal[j]; LoBar[j+1] = LoBar[j]; } LoVal[0] = L; LoBar[0] = 0; date11 = date[HiBar[0]]; time11 = stime[HiBar[0]]; Value11 = HiVal[0]; date12 = date[LoBar[0]]; time12 = stime[LoBar[0]]; Value12 = LoVal[0]; date21 = date[HiBar[0]]; time21 = stime[HiBar[0]]; date22 = date[0]; time22 = stime[0]; for j = 0 to 6 { fr[j] = LoVal[1] + ((HiVal[0] - LoVal[1]) * r[j]); } Condition3 = False; if Condition3 == False and Value12 <= value11-0.5 and value12 < DayHigh-0.8 Then { Tx4=Text_New(date11,time11,value12,"●"); Condition3 = true; Text_SetStyle(tx4,2,2); Text_SetColor(tx4,Black); Text_SetSize(tx4,35); } Txx = Text_New(date11,time11,loval[0]-PriceScale*10,"●"); Condition99 = true; Text_SetColor(Txx,Red); Text_SetStyle(Txx,2,2); Text_SetSize(txx,20); if Condition99 == true and Loval[0] <= loval[1]-PriceScale*틱2 Then { Condition99 = False; Text_Delete(txx); PlaySound("C:₩예스트레이더₩data₩Sound₩reject.wav"); } Text_Delete(dnt); var1 = loval[0]-loval[1]; dnt = Text_New(date12,time12,value12,NumToStr(abs(var1/PriceScale),2)); Text_SetColor(dnt,iff(var1>0,Red,Blue)); } Else { If LoVal[0] > L Then { LoVal[0] = L; LoBar[0] = 0; date12 = date[LoBar[0]]; time12 = stime[LoBar[0]]; Value12 = LoVal[0]; date22 = date[0]; time22 = stime[0]; var1 = loval[0]-loval[1]; Text_SetLocation(dnt,date12,time12,value12); Text_SetString(dnt,NumToStr(abs(var1/PriceScale),2)); Text_SetColor(dnt,iff(var1>0,Red,Blue)); } if Condition3 == False and Value12 <= value11-0.5 and value12 < DayHigh-0.8 Then { Tx4 =Text_New(date11,time11,value12,"●"); Condition3 = true; Text_SetColor(Tx4,Black); Text_SetStyle(tx4,2,2); Text_SetSize(tx4,35); } TL_Delete(tl); if Condition99 == true and Loval[0] <= loval[1]-PriceScale*틱2 Then { Condition99 = False; Text_Delete(txx); PlaySound("C:₩예스트레이더₩data₩Sound₩reject.wav"); } } } If T == 1 Then { If T[1] != 1 Then { if Condition3 == true Then Text_Delete(tx4); For j = 18 DownTo 0 { HiVal[j+1] = HiVal[j]; HiBar[j+1] = HiBar[j]; } HiVal[0] = H; HiBar[0] = 0; date11 = date[LoBar[0]]; time11 = stime[LoBar[0]]; Value11 = LoVal[0]; date12 = date[HiBar[0]]; time12 = stime[HiBar[0]]; Value12 = HiVal[0]; date31 = date[LoBar[0]]; time31 = stime[LoBar[0]]; date32 = date[0]; time32 = stime[0]; for j = 0 to 5 { fr[j] = LoVal[0] + ((HiVal[1] - LoVal[0]) * r[j]); } if Condition99 == true and Loval[0] >= Loval[1]-PriceScale*틱1 Then { Condition99 = False; Text_Delete(txx); } Text_Delete(upt); var1 = hival[0]-hival[1]; upt = Text_New(date12,time12,value12,NumToStr(abs(var1/PriceScale),2)); Text_SetColor(upt,iff(var1>0,Red,Blue)); } If HiVal[0] < H Then { HiVal[0] = H; HiBar[0] = 0; date12 = date[HiBar[0]]; time12 = stime[HiBar[0]]; Value12 = HiVal[0]; date32 = date[0]; time32 = stime[0]; var1 = hival[0]-hival[1]; Text_SetLocation(upt,date12,time12,value12); Text_SetString(upt,NumToStr(abs(var1/PriceScale),2)); Text_SetColor(upt,iff(var1>0,Red,Blue)); } } 즐거운 하루되세요 > 고성 님이 쓴 글입니다. > 제목 : 추세선 직전과의 차이 > input : Period(120),틱1(3),틱2(4); Var:j(0),T(0); Var: date11(0),date12(0),time11(0),time12(0),TL1(0),TL(0),tl9(0), date21(0),date22(0),time21(0),time22(0),txx(0), vTL(0), vTL9(0),txxx(0), date31(0),date32(0),time31(0),time32(0),tx(0),tx1(0),tl4(0),tx4(0); Array:HiVal[20](0),LoVal[20](0),HiBar[20](0),LoBar[20](0); Array:r[7](0),fr[7](0),TL2[7](0),TL3[7](0),TX2[7](0),TX3[7](0); Plot1(value12); For j = 0 To 19 { HiBar[j] = HiBar[j] + 1; LoBar[j] = LoBar[j] + 1; } if crossup(c,highest(H,Period)[1]) Then T = 1; if CrossDown(c,Lowest(L,Period)[1]) Then T = -1; If T == -1 Then { If T[1] != -1 Then { For j = 18 DownTo 0 { LoVal[j+1] = LoVal[j]; LoBar[j+1] = LoBar[j]; } LoVal[0] = L; LoBar[0] = 0; date11 = date[HiBar[0]]; time11 = stime[HiBar[0]]; Value11 = HiVal[0]; date12 = date[LoBar[0]]; time12 = stime[LoBar[0]]; Value12 = LoVal[0]; date21 = date[HiBar[0]]; time21 = stime[HiBar[0]]; date22 = date[0]; time22 = stime[0]; for j = 0 to 6 { fr[j] = LoVal[1] + ((HiVal[0] - LoVal[1]) * r[j]); } Condition3 = False; if Condition3 == False and Value12 <= value11-0.5 and value12 < DayHigh-0.8 Then { Tx4=Text_New(date11,time11,value11+PriceScale*2,"●"); Condition3 = true; Text_SetStyle(tx4,2,2); Text_SetColor(tx4,Black); Text_SetSize(tx4,35); } Txx = Text_New(date11,time11,loval[0]-PriceScale*10,"●"); Condition99 = true; Text_SetColor(Txx,Red); Text_SetStyle(Txx,2,2); Text_SetSize(txx,20); if Condition99 == true and Loval[0] <= loval[1]-PriceScale*틱2 Then { Condition99 = False; Text_Delete(txx); PlaySound("C:₩예스트레이더₩data₩Sound₩reject.wav"); } } Else { If LoVal[0] > L Then { LoVal[0] = L; LoBar[0] = 0; date12 = date[LoBar[0]]; time12 = stime[LoBar[0]]; Value12 = LoVal[0]; date22 = date[0]; time22 = stime[0]; } if Condition3 == False and Value12 <= value11-0.5 and value12 < DayHigh-0.8 Then { Tx4 =Text_New(date11,time11,value11+PriceScale*2,"●"); Condition3 = true; Text_SetColor(Tx4,Black); Text_SetStyle(tx4,2,2); Text_SetSize(tx4,35); } TL_Delete(tl); if Condition99 == true and Loval[0] <= loval[1]-PriceScale*틱2 Then { Condition99 = False; Text_Delete(txx); PlaySound("C:₩예스트레이더₩data₩Sound₩reject.wav"); } } } If T == 1 Then { If T[1] != 1 Then { if Condition3 == true Then Text_Delete(tx4); For j = 18 DownTo 0 { HiVal[j+1] = HiVal[j]; HiBar[j+1] = HiBar[j]; } HiVal[0] = H; HiBar[0] = 0; date11 = date[LoBar[0]]; time11 = stime[LoBar[0]]; Value11 = LoVal[0]; date12 = date[HiBar[0]]; time12 = stime[HiBar[0]]; Value12 = HiVal[0]; date31 = date[LoBar[0]]; time31 = stime[LoBar[0]]; date32 = date[0]; time32 = stime[0]; for j = 0 to 5 { fr[j] = LoVal[0] + ((HiVal[1] - LoVal[0]) * r[j]); } if Condition99 == true and Loval[0] >= Loval[1]-PriceScale*틱1 Then { Condition99 = False; Text_Delete(txx); } } If HiVal[0] < H Then { HiVal[0] = H; HiBar[0] = 0; date12 = date[HiBar[0]]; time12 = stime[HiBar[0]]; Value12 = HiVal[0]; date32 = date[0]; time32 = stime[0]; } } 1. 현 수식 중에 양전환되거나 직전저점을 4틱 벗어나면 삭제되는 빨간 동그라미의 위치를 loval[0] 고정에서 하락추세선 하단을 따라 같이 내려가는 이동형으로 수정. 2-1. 추세선이 양전환되면 바로 직전고점과의 차이를, 상승 추세선 상단을 따라 같이 올라가며 표기. 처음에는 -로 출발되니까 파란 글씨로, 차이를 변경해가며 표기. - 숫자가 점차 줄어들다 직전 고점에 도달하면 차이가 0 되고, 돌파하여 +로 바뀌면 빨간색으로 변경하여 돌파된 만큼의 숫자 표기 계속. 이전 상단은 지우고 마지막 상승 추세선 차이 숫자만 남긴다. 음전환되면 반대로 바로 직전저점과의 차이를 빨간 글씨로 추세선 하단을 따라가며 표기. 숫자가 줄어들다가 직전 저점에 도달하여 0 된후 붕괴되어 -로 바뀌면 파란 글씨로 변경하여 하단을 따라 내려가며 계속 표기. 이전 하락추세선 차이 숫자는 지우고 마지막 차이 숫자만 남긴다. 2-2. 직전과의 차이 숫자 표기는 상단 하나,하단 하나씩만 남기고 이전것은 항상 삭제. 2-3. 직전과의 차이는 틱수로 계산하여 표기 (0.15면 3). 감사합니다.