커뮤니티
수식부탁드립니다
2019-03-24 21:10:32
397
글번호 127346
#, 안녕하세요
ㅡ,아래수식은 이전9개의 고점,저점 연결추세선 수식입니다, 이 수식을 고점이나 저점의
동일가격(+-1틱포함)이 발생시 가로수평 추세선으로 오른쪽 Y축까지 그리기로 수정하고
싶습니다, 도움 부탁드립니다.
input :len1(9);
var : cnt(0),TL1(0),TL2(0);
var : HHv(0),HDv(0),HTv(0);
var : LLv(0),LDv(0),LTv(0);
Array : HH[10](0),HD[10](0),HT[10](0);
Array : LL[10](0),LD[10](0),LT[10](0);
If SwingHighBar(1,high,len1,len1,len1+len1+1) != -1 Then{
HH[0] = H[Len1];
HD[0] = sdate[Len1];
HT[0] = stime[Len1];
For cnt = 1 To 9{
HH[cnt] = HH[cnt-1][1];
HD[cnt] = HD[cnt-1][1];
HT[cnt] = HT[cnt-1][1];
}
Condition1 = false;
For cnt = 1 To 9{
if Condition1 == false and HH[cnt] > HH[0] and HH[cnt] > 0 Then{
Condition1 = true;
HHv = HH[cnt];
HDv = HD[cnt];
HTv = HT[cnt];
}
}
#이전 9개의 고점 중 현재 고점보다 높은 고점이 있으면
#고점연결선 출력
if Condition1 == true then{
TL_Delete(TL1);
TL1 = TL_New(HDv,HTv,HHv,HD[0],HT[0],HH[0]);
TL_SetColor(TL1,MAGENTA);
TL_SetExtRight(TL1,true);
TL_SetSize(TL1,0);
}
}
If SwingLow(1,L,len1,len1,len1+len1+1) != -1 Then{
LL[0] = L[Len1];
LD[0] = sdate[Len1];
LT[0] = stime[Len1];
For cnt = 1 To 9{
LL[cnt] = LL[cnt-1][1];
LD[cnt] = LD[cnt-1][1];
LT[cnt] = LT[cnt-1][1];
}
Condition2 = false;
For cnt = 1 To 9{
if Condition2 == false and LL[cnt] < LL[0] and LL[cnt] > 0 Then{
Condition2 = true;
LLv = LL[cnt];
LDv = LD[cnt];
LTv = LT[cnt];
}
}
#이전 9개의 저점 중 현재 저점보다 낮은 저점이 있으면
#저점 연결선 출력
if Condition2 == true then{
TL_Delete(TL2);
TL2 = TL_New(LDv,LTv,LLv,LD[0],LT[0],LL[0]);
TL_SetColor(TL2,blue);
TL_SetExtRight(TL2,true);
TL_SetSize(TL2,0);
}
}
고맙습니다.
답변 1
예스스탁 예스스탁 답변
2019-03-25 16:22:12
안녕하세요
예스스탁입니다.
input :len1(9);
var : cnt(0),TL1(0),TL2(0);
var : HHv(0),HDv(0),HTv(0);
var : LLv(0),LDv(0),LTv(0);
Array : HH[10](0),HD[10](0),HT[10](0);
Array : LL[10](0),LD[10](0),LT[10](0);
If SwingHighBar(1,high,len1,len1,len1+len1+1) != -1 Then{
HH[0] = H[Len1];
HD[0] = sdate[Len1];
HT[0] = stime[Len1];
For cnt = 1 To 9{
HH[cnt] = HH[cnt-1][1];
HD[cnt] = HD[cnt-1][1];
HT[cnt] = HT[cnt-1][1];
}
Condition1 = false;
For cnt = 1 To 9{
if Condition1 == false and abs(HH[cnt]-HH[0]) <= PriceScale*1 and HH[cnt] > 0 Then{
Condition1 = true;
HHv = HH[cnt];
HDv = HD[cnt];
HTv = HT[cnt];
}
}
#이전 9개의 고점 중 현재 고점보다 높은 고점이 있으면
#고점연결선 출력
if Condition1 == true then{
TL_Delete(TL1);
TL1 = TL_New(HDv,HTv,HHv,HD[0],HT[0],HHv);
TL_SetColor(TL1,MAGENTA);
TL_SetExtRight(TL1,true);
TL_SetSize(TL1,0);
}
}
If SwingLow(1,L,len1,len1,len1+len1+1) != -1 Then{
LL[0] = L[Len1];
LD[0] = sdate[Len1];
LT[0] = stime[Len1];
For cnt = 1 To 9{
LL[cnt] = LL[cnt-1][1];
LD[cnt] = LD[cnt-1][1];
LT[cnt] = LT[cnt-1][1];
}
Condition2 = false;
For cnt = 1 To 9{
if Condition2 == false and abs(LL[cnt]-LL[0]) <= PriceScale*1 and LL[cnt] > 0 Then{
Condition2 = true;
LLv = LL[cnt];
LDv = LD[cnt];
LTv = LT[cnt];
}
}
#이전 9개의 저점 중 현재 저점보다 낮은 저점이 있으면
#저점 연결선 출력
if Condition2 == true then{
TL_Delete(TL2);
TL2 = TL_New(LDv,LTv,LLv,LD[0],LT[0],LLv);
TL_SetColor(TL2,blue);
TL_SetExtRight(TL2,true);
TL_SetSize(TL2,0);
}
}
즐거운 하루되세요
> 골든키 님이 쓴 글입니다.
> 제목 : 수식부탁드립니다
> #, 안녕하세요
ㅡ,아래수식은 이전9개의 고점,저점 연결추세선 수식입니다, 이 수식을 고점이나 저점의
동일가격(+-1틱포함)이 발생시 가로수평 추세선으로 오른쪽 Y축까지 그리기로 수정하고
싶습니다, 도움 부탁드립니다.
input :len1(9);
var : cnt(0),TL1(0),TL2(0);
var : HHv(0),HDv(0),HTv(0);
var : LLv(0),LDv(0),LTv(0);
Array : HH[10](0),HD[10](0),HT[10](0);
Array : LL[10](0),LD[10](0),LT[10](0);
If SwingHighBar(1,high,len1,len1,len1+len1+1) != -1 Then{
HH[0] = H[Len1];
HD[0] = sdate[Len1];
HT[0] = stime[Len1];
For cnt = 1 To 9{
HH[cnt] = HH[cnt-1][1];
HD[cnt] = HD[cnt-1][1];
HT[cnt] = HT[cnt-1][1];
}
Condition1 = false;
For cnt = 1 To 9{
if Condition1 == false and HH[cnt] > HH[0] and HH[cnt] > 0 Then{
Condition1 = true;
HHv = HH[cnt];
HDv = HD[cnt];
HTv = HT[cnt];
}
}
#이전 9개의 고점 중 현재 고점보다 높은 고점이 있으면
#고점연결선 출력
if Condition1 == true then{
TL_Delete(TL1);
TL1 = TL_New(HDv,HTv,HHv,HD[0],HT[0],HH[0]);
TL_SetColor(TL1,MAGENTA);
TL_SetExtRight(TL1,true);
TL_SetSize(TL1,0);
}
}
If SwingLow(1,L,len1,len1,len1+len1+1) != -1 Then{
LL[0] = L[Len1];
LD[0] = sdate[Len1];
LT[0] = stime[Len1];
For cnt = 1 To 9{
LL[cnt] = LL[cnt-1][1];
LD[cnt] = LD[cnt-1][1];
LT[cnt] = LT[cnt-1][1];
}
Condition2 = false;
For cnt = 1 To 9{
if Condition2 == false and LL[cnt] < LL[0] and LL[cnt] > 0 Then{
Condition2 = true;
LLv = LL[cnt];
LDv = LD[cnt];
LTv = LT[cnt];
}
}
#이전 9개의 저점 중 현재 저점보다 낮은 저점이 있으면
#저점 연결선 출력
if Condition2 == true then{
TL_Delete(TL2);
TL2 = TL_New(LDv,LTv,LLv,LD[0],LT[0],LL[0]);
TL_SetColor(TL2,blue);
TL_SetExtRight(TL2,true);
TL_SetSize(TL2,0);
}
}
고맙습니다.