커뮤니티
수식 부탁합니다
2017-06-16 19:12:17
209
글번호 110509
아래수식에서
#,현재에서 1개월전(ex:5월16)을 종기로 그이전 1개월(ex:4월16~5월16)동안의 최고점과 최저점
의 피보나치선을 오른쪽 그리기로 표시하면 좋겠습니다,기간수정 부탁드립니다.
#,240분봉 차트기준 전일의 6개캔들중에 변동폭이 가장 큰 캔들의 고점과 저점의 피보나치선을
오른쪽 그리기로 표시하면 좋겠습니다.
$,언제나 늘 감사합니다.
input : Per1(0),Per2(23.6),Per3(38.2),Per4(50.00),Per5(61.80),Per6(76.40),Per7(100.00);
var : HH(0),LL(0),RR(0);
var : TL1(0),TL2(0),TL3(0),TL4(0),TL5(0),TL6(0),TL7(0);
var : Tx1(0),Tx2(0),Tx3(0),Tx4(0),Tx5(0),Tx6(0),Tx7(0);
HH = dayhigh(1);
LL = daylow(1);
RR = HH-LL;
if Bdate != Bdate[1] Then{
TL_Delete(TL1);
TL_Delete(TL2);
TL_Delete(TL3);
TL_Delete(TL4);
TL_Delete(TL5);
TL_Delete(TL6);
TL_Delete(TL7);
TL1 = TL_New(sdate[1],stime[1],HH-RR*(Per1/100),Sdate,stime,HH-RR*(Per1/100));
TL2 = TL_New(sdate[1],stime[1],HH-RR*(Per2/100),Sdate,stime,HH-RR*(Per2/100));
TL3 = TL_New(sdate[1],stime[1],HH-RR*(Per3/100),Sdate,stime,HH-RR*(Per3/100));
TL4 = TL_New(sdate[1],stime[1],HH-RR*(Per4/100),Sdate,stime,HH-RR*(Per4/100));
TL5 = TL_New(sdate[1],stime[1],HH-RR*(Per5/100),Sdate,stime,HH-RR*(Per5/100));
TL6 = TL_New(sdate[1],stime[1],HH-RR*(Per6/100),Sdate,stime,HH-RR*(Per6/100));
TL7 = TL_New(sdate[1],stime[1],HH-RR*(Per7/100),Sdate,stime,HH-RR*(Per7/100));
TL_SetExtRight(TL1,true);
TL_SetExtRight(TL2,true);
TL_SetExtRight(TL3,true);
TL_SetExtRight(TL4,true);
TL_SetExtRight(TL5,true);
TL_SetExtRight(TL6,true);
TL_SetExtRight(TL7,true);
}
Text_Delete(tx1);
Text_Delete(tx2);
Text_Delete(tx3);
Text_Delete(tx4);
Text_Delete(tx5);
Text_Delete(tx6);
Text_Delete(tx7);
tx1 = Text_New(sdate,stime,HH-RR*(Per1/100),NumToStr(Per1,2)+"% :" +NumToStr(HH-RR*(Per1/100),2));
tx2 = Text_New(sdate,stime,HH-RR*(Per2/100),NumToStr(Per2,2)+"% :" +NumToStr(HH-RR*(Per2/100),2));
tx3 = Text_New(sdate,stime,HH-RR*(Per3/100),NumToStr(Per3,2)+"% :" +NumToStr(HH-RR*(Per3/100),2));
tx4 = Text_New(sdate,stime,HH-RR*(Per4/100),NumToStr(Per4,2)+"% :" +NumToStr(HH-RR*(Per4/100),2));
tx5 = Text_New(sdate,stime,HH-RR*(Per5/100),NumToStr(Per5,2)+"% :" +NumToStr(HH-RR*(Per5/100),2));
tx6 = Text_New(sdate,stime,HH-RR*(Per6/100),NumToStr(Per6,2)+"% :" +NumToStr(HH-RR*(Per6/100),2));
tx7 = Text_New(sdate,stime,HH-RR*(Per7/100),NumToStr(Per7,2)+"% :" +NumToStr(HH-RR*(Per7/100),2));
답변 1
예스스탁 예스스탁 답변
2017-06-19 11:35:55
안녕하세요
예스스탁입니다.
1
15일과 같이 기준되는 날짜와 이전값은 지정하셔야 합니다.
input : nday(15),n(1);
input : Per1(0),Per2(23.6),Per3(38.2),Per4(50.00),Per5(61.80),Per6(76.40),Per7(100.00);
var : ndate(0),cnt(0),RR(0),HH(0),LL(0);
var : TL1(0),TL2(0),TL3(0),TL4(0),TL5(0),TL6(0),TL7(0);
var : Tx1(0),Tx2(0),Tx3(0),Tx4(0),Tx5(0),Tx6(0),Tx7(0);
Array : Hv[10](0),Lv[10](0),Dv[10](0),Tv[10](0);
ndate = bdate%100;
if bdate != bdate[1] and (ndate == nday or (ndate > nday and ndate[1] < nday)) Then{
Hv[0] = H;
Lv[0] = L;
Dv[0] = sdate;
Tv[0] = stime;
for cnt = 1 to 9{
Hv[cnt] = Hv[cnt-1][1];
Lv[cnt] = Lv[cnt-1][1];
Dv[cnt] = Dv[cnt-1][1];
Tv[cnt] = Tv[cnt-1][1];
}
}
if H > Hv[0] Then
Hv[0] = H;
if L < Lv[0] Then
Lv[0] = L;
if Hv[n] > 0 and Hv[n] > 0 then{
HH = Hv[n];
LL = Lv[n];
RR = HH-LL;
TL_Delete(TL1);
TL_Delete(TL2);
TL_Delete(TL3);
TL_Delete(TL4);
TL_Delete(TL5);
TL_Delete(TL6);
TL_Delete(TL7);
TL1 = TL_New(DV[1],TV[1],HH-RR*(Per1/100),Sdate,stime,HH-RR*(Per1/100));
TL2 = TL_New(DV[1],TV[1],HH-RR*(Per2/100),Sdate,stime,HH-RR*(Per2/100));
TL3 = TL_New(DV[1],TV[1],HH-RR*(Per3/100),Sdate,stime,HH-RR*(Per3/100));
TL4 = TL_New(DV[1],TV[1],HH-RR*(Per4/100),Sdate,stime,HH-RR*(Per4/100));
TL5 = TL_New(DV[1],TV[1],HH-RR*(Per5/100),Sdate,stime,HH-RR*(Per5/100));
TL6 = TL_New(DV[1],TV[1],HH-RR*(Per6/100),Sdate,stime,HH-RR*(Per6/100));
TL7 = TL_New(DV[1],TV[1],HH-RR*(Per7/100),Sdate,stime,HH-RR*(Per7/100));
TL_SetExtRight(TL1,true);
TL_SetExtRight(TL2,true);
TL_SetExtRight(TL3,true);
TL_SetExtRight(TL4,true);
TL_SetExtRight(TL5,true);
TL_SetExtRight(TL6,true);
TL_SetExtRight(TL7,true);
Text_Delete(tx1);
Text_Delete(tx2);
Text_Delete(tx3);
Text_Delete(tx4);
Text_Delete(tx5);
Text_Delete(tx6);
Text_Delete(tx7);
tx1 = Text_New(sdate,stime,HH-RR*(Per1/100),NumToStr(Per1,2)+"% :" +NumToStr(HH-RR*(Per1/100),2));
tx2 = Text_New(sdate,stime,HH-RR*(Per2/100),NumToStr(Per2,2)+"% :" +NumToStr(HH-RR*(Per2/100),2));
tx3 = Text_New(sdate,stime,HH-RR*(Per3/100),NumToStr(Per3,2)+"% :" +NumToStr(HH-RR*(Per3/100),2));
tx4 = Text_New(sdate,stime,HH-RR*(Per4/100),NumToStr(Per4,2)+"% :" +NumToStr(HH-RR*(Per4/100),2));
tx5 = Text_New(sdate,stime,HH-RR*(Per5/100),NumToStr(Per5,2)+"% :" +NumToStr(HH-RR*(Per5/100),2));
tx6 = Text_New(sdate,stime,HH-RR*(Per6/100),NumToStr(Per6,2)+"% :" +NumToStr(HH-RR*(Per6/100),2));
tx7 = Text_New(sdate,stime,HH-RR*(Per7/100),NumToStr(Per7,2)+"% :" +NumToStr(HH-RR*(Per7/100),2));
}
2
input : n(1);
input : Per1(0),Per2(23.6),Per3(38.2),Per4(50.00),Per5(61.80),Per6(76.40),Per7(100.00);
var : RR(0),HH(0),LL(0),cnt(0);
var : TL1(0),TL2(0),TL3(0),TL4(0),TL5(0),TL6(0),TL7(0);
var : Tx1(0),Tx2(0),Tx3(0),Tx4(0),Tx5(0),Tx6(0),Tx7(0);
Array : Hv[10](0),Lv[10](0),Dv[10](0),Tv[10](0);
if bdate != bdate[1] Then{
var1 = H-L;
Hv[0] = H;
Lv[0] = L;
Dv[0] = sdate;
Tv[0] = stime;
for cnt = 1 to 9{
Hv[cnt] = Hv[cnt-1][1];
Lv[cnt] = Lv[cnt-1][1];
Dv[cnt] = Dv[cnt-1][1];
Tv[cnt] = Tv[cnt-1][1];
}
}
if H-L > var1 then{
Hv[0] = H;
Lv[0] = L;
}
if Hv[n] > 0 and Hv[n] > 0 then{
HH = Hv[n];
LL = Lv[n];
RR = HH-LL;
TL_Delete(TL1);
TL_Delete(TL2);
TL_Delete(TL3);
TL_Delete(TL4);
TL_Delete(TL5);
TL_Delete(TL6);
TL_Delete(TL7);
TL1 = TL_New(DV[1],TV[1],HH-RR*(Per1/100),Sdate,stime,HH-RR*(Per1/100));
TL2 = TL_New(DV[1],TV[1],HH-RR*(Per2/100),Sdate,stime,HH-RR*(Per2/100));
TL3 = TL_New(DV[1],TV[1],HH-RR*(Per3/100),Sdate,stime,HH-RR*(Per3/100));
TL4 = TL_New(DV[1],TV[1],HH-RR*(Per4/100),Sdate,stime,HH-RR*(Per4/100));
TL5 = TL_New(DV[1],TV[1],HH-RR*(Per5/100),Sdate,stime,HH-RR*(Per5/100));
TL6 = TL_New(DV[1],TV[1],HH-RR*(Per6/100),Sdate,stime,HH-RR*(Per6/100));
TL7 = TL_New(DV[1],TV[1],HH-RR*(Per7/100),Sdate,stime,HH-RR*(Per7/100));
TL_SetExtRight(TL1,true);
TL_SetExtRight(TL2,true);
TL_SetExtRight(TL3,true);
TL_SetExtRight(TL4,true);
TL_SetExtRight(TL5,true);
TL_SetExtRight(TL6,true);
TL_SetExtRight(TL7,true);
Text_Delete(tx1);
Text_Delete(tx2);
Text_Delete(tx3);
Text_Delete(tx4);
Text_Delete(tx5);
Text_Delete(tx6);
Text_Delete(tx7);
tx1 = Text_New(sdate,stime,HH-RR*(Per1/100),NumToStr(Per1,2)+"% :" +NumToStr(HH-RR*(Per1/100),2));
tx2 = Text_New(sdate,stime,HH-RR*(Per2/100),NumToStr(Per2,2)+"% :" +NumToStr(HH-RR*(Per2/100),2));
tx3 = Text_New(sdate,stime,HH-RR*(Per3/100),NumToStr(Per3,2)+"% :" +NumToStr(HH-RR*(Per3/100),2));
tx4 = Text_New(sdate,stime,HH-RR*(Per4/100),NumToStr(Per4,2)+"% :" +NumToStr(HH-RR*(Per4/100),2));
tx5 = Text_New(sdate,stime,HH-RR*(Per5/100),NumToStr(Per5,2)+"% :" +NumToStr(HH-RR*(Per5/100),2));
tx6 = Text_New(sdate,stime,HH-RR*(Per6/100),NumToStr(Per6,2)+"% :" +NumToStr(HH-RR*(Per6/100),2));
tx7 = Text_New(sdate,stime,HH-RR*(Per7/100),NumToStr(Per7,2)+"% :" +NumToStr(HH-RR*(Per7/100),2));
}
즐거운 하루되세요
> 골든키 님이 쓴 글입니다.
> 제목 : 수식 부탁합니다
> 아래수식에서
#,현재에서 1개월전(ex:5월16)을 종기로 그이전 1개월(ex:4월16~5월16)동안의 최고점과 최저점
의 피보나치선을 오른쪽 그리기로 표시하면 좋겠습니다,기간수정 부탁드립니다.
#,240분봉 차트기준 전일의 6개캔들중에 변동폭이 가장 큰 캔들의 고점과 저점의 피보나치선을
오른쪽 그리기로 표시하면 좋겠습니다.
$,언제나 늘 감사합니다.
input : Per1(0),Per2(23.6),Per3(38.2),Per4(50.00),Per5(61.80),Per6(76.40),Per7(100.00);
var : HH(0),LL(0),RR(0);
var : TL1(0),TL2(0),TL3(0),TL4(0),TL5(0),TL6(0),TL7(0);
var : Tx1(0),Tx2(0),Tx3(0),Tx4(0),Tx5(0),Tx6(0),Tx7(0);
HH = dayhigh(1);
LL = daylow(1);
RR = HH-LL;
if Bdate != Bdate[1] Then{
TL_Delete(TL1);
TL_Delete(TL2);
TL_Delete(TL3);
TL_Delete(TL4);
TL_Delete(TL5);
TL_Delete(TL6);
TL_Delete(TL7);
TL1 = TL_New(sdate[1],stime[1],HH-RR*(Per1/100),Sdate,stime,HH-RR*(Per1/100));
TL2 = TL_New(sdate[1],stime[1],HH-RR*(Per2/100),Sdate,stime,HH-RR*(Per2/100));
TL3 = TL_New(sdate[1],stime[1],HH-RR*(Per3/100),Sdate,stime,HH-RR*(Per3/100));
TL4 = TL_New(sdate[1],stime[1],HH-RR*(Per4/100),Sdate,stime,HH-RR*(Per4/100));
TL5 = TL_New(sdate[1],stime[1],HH-RR*(Per5/100),Sdate,stime,HH-RR*(Per5/100));
TL6 = TL_New(sdate[1],stime[1],HH-RR*(Per6/100),Sdate,stime,HH-RR*(Per6/100));
TL7 = TL_New(sdate[1],stime[1],HH-RR*(Per7/100),Sdate,stime,HH-RR*(Per7/100));
TL_SetExtRight(TL1,true);
TL_SetExtRight(TL2,true);
TL_SetExtRight(TL3,true);
TL_SetExtRight(TL4,true);
TL_SetExtRight(TL5,true);
TL_SetExtRight(TL6,true);
TL_SetExtRight(TL7,true);
}
Text_Delete(tx1);
Text_Delete(tx2);
Text_Delete(tx3);
Text_Delete(tx4);
Text_Delete(tx5);
Text_Delete(tx6);
Text_Delete(tx7);
tx1 = Text_New(sdate,stime,HH-RR*(Per1/100),NumToStr(Per1,2)+"% :" +NumToStr(HH-RR*(Per1/100),2));
tx2 = Text_New(sdate,stime,HH-RR*(Per2/100),NumToStr(Per2,2)+"% :" +NumToStr(HH-RR*(Per2/100),2));
tx3 = Text_New(sdate,stime,HH-RR*(Per3/100),NumToStr(Per3,2)+"% :" +NumToStr(HH-RR*(Per3/100),2));
tx4 = Text_New(sdate,stime,HH-RR*(Per4/100),NumToStr(Per4,2)+"% :" +NumToStr(HH-RR*(Per4/100),2));
tx5 = Text_New(sdate,stime,HH-RR*(Per5/100),NumToStr(Per5,2)+"% :" +NumToStr(HH-RR*(Per5/100),2));
tx6 = Text_New(sdate,stime,HH-RR*(Per6/100),NumToStr(Per6,2)+"% :" +NumToStr(HH-RR*(Per6/100),2));
tx7 = Text_New(sdate,stime,HH-RR*(Per7/100),NumToStr(Per7,2)+"% :" +NumToStr(HH-RR*(Per7/100),2));
다음글
이전글