커뮤니티
수식 부탁드립니다.
2019-01-13 15:16:23
192
글번호 125225
아래 지표에 기능 추가 부탁드립니다.
추세선을 상승 또는 하락 돌파시
1, 돌파시점에 수평선을 긋고
2, 돌파시점 + (돌파시점 - P지점의 저가)*(1,2,3,4) 4줄을 상단에 수평선으로 표기
3, 돌파시점 - (P지점의 고가 - 돌파시점)*(1,2,3,4) 4줄을 하단에 수평선으로 표기
input : P(20);
var : cnt(0),i1(0),i2(0),TL1(0),TL2(0);
Array : SHV[50](0),SHD[50](0),SHT[50](0);
Array : SLV[50](0),SLD[50](0),SLT[50](0);
if SwingHigh(1,h,P,P,P*2+1) != -1 Then{
SHV[0] = H[P];
SHD[0] = sdate[P];
SHT[0] = stime[P];
for cnt = 1 to 49{
SHV[cnt] = SHV[cnt-1][1];
SHD[cnt] = SHD[cnt-1][1];
SHT[cnt] = SHT[cnt-1][1];
}
i1 = 1;
for cnt = 1 to 49{
if SHV[cnt] > SHV[0] Then{
i1 = cnt;
cnt = 1000;
}
}
if i1 > 0 Then{
TL_Delete(TL1);
TL1 = TL_New(SHD[i1],SHT[i1],SHV[i1],SHD[0],SHT[0],SHV[0]);
TL_SetExtRight(TL1,true);
TL_SetColor(TL1,BLUE);
TL_SetSize(TL1,1);
}
}
if SwingLow(1,L,P,P,P*2+1) != -1 Then{
SLV[0] = L[P];
SLD[0] = sdate[P];
SLT[0] = stime[P];
for cnt = 1 to 49{
SLV[cnt] = SLV[cnt-1][1];
SLD[cnt] = SLD[cnt-1][1];
SLT[cnt] = SLT[cnt-1][1];
}
i2 = 1;
for cnt = 1 to 49{
if SLV[cnt] < SLV[0] Then{
i2 = cnt;
cnt = 1000;
}
}
if i2 > 0 Then{
TL_Delete(TL2);
TL2 = TL_New(SLD[i2],SLT[i2],SLV[i2],SLD[0],SLT[0],SLV[0]);
TL_SetExtRight(TL2,true);
TL_SetColor(TL2,BLUE);
TL_SetSize(TL2,1);
}
}
답변 1
예스스탁 예스스탁 답변
2019-01-14 14:02:32
안녕하세요
예스스탁입니다.
input : P(20);
var : cnt(0),i1(0),i2(0),TL1(0),TL2(0);
Array : SHV[50](0),SHD[50](0),SHT[50](0);
Array : SLV[50](0),SLD[50](0),SLT[50](0);
if SwingHigh(1,h,P,P,P*2+1) != -1 Then{
SHV[0] = H[P];
SHD[0] = sdate[P];
SHT[0] = stime[P];
for cnt = 1 to 49{
SHV[cnt] = SHV[cnt-1][1];
SHD[cnt] = SHD[cnt-1][1];
SHT[cnt] = SHT[cnt-1][1];
}
i1 = 1;
for cnt = 1 to 49{
if SHV[cnt] > SHV[0] Then{
i1 = cnt;
cnt = 1000;
}
}
if i1 > 0 Then{
TL_Delete(TL1);
TL1 = TL_New(SHD[i1],SHT[i1],SHV[i1],SHD[0],SHT[0],SHV[0]);
TL_SetExtRight(TL1,true);
TL_SetColor(TL1,BLUE);
TL_SetSize(TL1,1);
}
}
if SwingLow(1,L,P,P,P*2+1) != -1 Then{
SLV[0] = L[P];
SLD[0] = sdate[P];
SLT[0] = stime[P];
for cnt = 1 to 49{
SLV[cnt] = SLV[cnt-1][1];
SLD[cnt] = SLD[cnt-1][1];
SLT[cnt] = SLT[cnt-1][1];
}
i2 = 1;
for cnt = 1 to 49{
if SLV[cnt] < SLV[0] Then{
i2 = cnt;
cnt = 1000;
}
}
if i2 > 0 Then{
TL_Delete(TL2);
TL2 = TL_New(SLD[i2],SLT[i2],SLV[i2],SLD[0],SLT[0],SLV[0]);
TL_SetExtRight(TL2,true);
TL_SetColor(TL2,BLUE);
TL_SetSize(TL2,1);
}
}
var : TL11(0),TL12(0),TL13(0),TL14(0),TL15(0);
var : TL21(0),TL22(0),TL23(0),TL24(0),TL25(0);
if (C > TL_GetValue(TL1,sdate,stime) and C[1] <= TL_GetValue(TL1,sdate[1],stime[1])) or
(C < TL_GetValue(TL1,sdate,stime) and C[1] >= TL_GetValue(TL1,sdate[1],stime[1])) or
(C > TL_GetValue(TL2,sdate,stime) and C[1] < TL_GetValue(TL2,sdate[1],stime[1])) or
(C < TL_GetValue(TL2,sdate,stime) and C[1] >= TL_GetValue(TL2,sdate[1],stime[1])) Then
{
var1 = abs(C-SLV[0]);
var2 = abs(C-SHV[0]);
TL_Delete(TL11);
TL11 = TL_New(sdate[1],stime[1],C,sdate,stime,C);
TL_SetExtRight(TL11,true);
TL_Delete(TL12);
TL_Delete(TL13);
TL_Delete(TL14);
TL_Delete(TL15);
TL12 = TL_New(sdate[1],stime[1],C+var1*1,sdate,stime,C+var1*1);
TL_SetExtRight(TL12,true);
TL13 = TL_New(sdate[1],stime[1],C+var1*2,sdate,stime,C+var1*2);
TL_SetExtRight(TL13,true);
TL14 = TL_New(sdate[1],stime[1],C+var1*3,sdate,stime,C+var1*3);
TL_SetExtRight(TL14,true);
TL15 = TL_New(sdate[1],stime[1],C+var1*4,sdate,stime,C+var1*4);
TL_SetExtRight(TL15,true);
TL_Delete(TL22);
TL_Delete(TL23);
TL_Delete(TL24);
TL_Delete(TL25);
TL22 = TL_New(sdate[1],stime[1],C-var2*1,sdate,stime,C-var2*1);
TL_SetExtRight(TL22,true);
TL23 = TL_New(sdate[1],stime[1],C-var2*2,sdate,stime,C-var2*2);
TL_SetExtRight(TL23,true);
TL24 = TL_New(sdate[1],stime[1],C-var2*3,sdate,stime,C-var2*3);
TL_SetExtRight(TL24,true);
TL25 = TL_New(sdate[1],stime[1],C-var2*4,sdate,stime,C-var2*4);
TL_SetExtRight(TL25,true);
}
즐거운 하루되세요
> 스캘퍼 님이 쓴 글입니다.
> 제목 : 수식 부탁드립니다.
> 아래 지표에 기능 추가 부탁드립니다.
추세선을 상승 또는 하락 돌파시
1, 돌파시점에 수평선을 긋고
2, 돌파시점 + (돌파시점 - P지점의 저가)*(1,2,3,4) 4줄을 상단에 수평선으로 표기
3, 돌파시점 - (P지점의 고가 - 돌파시점)*(1,2,3,4) 4줄을 하단에 수평선으로 표기
input : P(20);
var : cnt(0),i1(0),i2(0),TL1(0),TL2(0);
Array : SHV[50](0),SHD[50](0),SHT[50](0);
Array : SLV[50](0),SLD[50](0),SLT[50](0);
if SwingHigh(1,h,P,P,P*2+1) != -1 Then{
SHV[0] = H[P];
SHD[0] = sdate[P];
SHT[0] = stime[P];
for cnt = 1 to 49{
SHV[cnt] = SHV[cnt-1][1];
SHD[cnt] = SHD[cnt-1][1];
SHT[cnt] = SHT[cnt-1][1];
}
i1 = 1;
for cnt = 1 to 49{
if SHV[cnt] > SHV[0] Then{
i1 = cnt;
cnt = 1000;
}
}
if i1 > 0 Then{
TL_Delete(TL1);
TL1 = TL_New(SHD[i1],SHT[i1],SHV[i1],SHD[0],SHT[0],SHV[0]);
TL_SetExtRight(TL1,true);
TL_SetColor(TL1,BLUE);
TL_SetSize(TL1,1);
}
}
if SwingLow(1,L,P,P,P*2+1) != -1 Then{
SLV[0] = L[P];
SLD[0] = sdate[P];
SLT[0] = stime[P];
for cnt = 1 to 49{
SLV[cnt] = SLV[cnt-1][1];
SLD[cnt] = SLD[cnt-1][1];
SLT[cnt] = SLT[cnt-1][1];
}
i2 = 1;
for cnt = 1 to 49{
if SLV[cnt] < SLV[0] Then{
i2 = cnt;
cnt = 1000;
}
}
if i2 > 0 Then{
TL_Delete(TL2);
TL2 = TL_New(SLD[i2],SLT[i2],SLV[i2],SLD[0],SLT[0],SLV[0]);
TL_SetExtRight(TL2,true);
TL_SetColor(TL2,BLUE);
TL_SetSize(TL2,1);
}
}