답변 감사합니다...
작성해주신 사용자 함수(N일전 data1의 시고저종)를 이용하여 기본차트 연결선물지수 15분봉에 적용하던것을 타종목차트(data1)에 적용하기 위해 똑같이 변형하였는데.. 값이 다르게 나오네요... 무엇이 문제인지 검토부탁드립니다.
기본차트==>연결선물지수에 적용하였으며, 타종목차트(data1)도
==>연결선물지수에 적용하였습니다.
#기본차트 적용수식
#1.PRICE LINE - 갭에이은 하락 파동에 대한 지지라인 ==>15분봉 적용
Var : bandup(0),banddn(0);
var : timeH1(0);
var : LP1(0),LP11(0);
bandup=_BollBandUp(30,2.1);
banddn=_BollBandDown(30,2.1);
timeH1 = timehigh(090000,093000);
#GAP FILL 지지라인(GAP 상승 후 GAP FILL 시점에 따른 지지라인 설정)==> 눌림 패턴
if date != date[1] then{
var1 = var1+1;
LP11 = Lp1[2];
}
if (timeH1>Dayclose(1)+0.5 or Dayopen()>Dayclose(1)+0.5) and dayopen()>highest(h,120)[2] and timeH1>highest(bandup,20)[3] then {
var2 = var1 ;
var3 = 1 ; }
if var3==1 and var1==var2+1 and daylow(1)<dayhigh(2) then #2일째에 ==> 1일째 GAP FILL 여부 Check
var5=1;
else if var3==1 and var1==var2+2 and daylow(1)<dayhigh(3) then #3일째에 ==> 2일째 GAP FILL 여부 Check
var5=2;
else if var3==1 and var1==var2+3 and daylow(1)<dayhigh(3) then #4일째에 ==> 3일째 GAP FILL 여부 Check
var5=3;
else
var5=4;
if var3==1 and var1==(var2+1) then { #2일째
LP1= min(dayhigh(1)-(dayhigh(1)-dayhigh(2))*2,dayhigh(1)-(dayhigh(1)-daylow(1))*2)+0.3;
}
if var3==1 and var1==(var2+2) and var5<3 then { #3일째
LP1= dayhigh(2)-(dayhigh(2)-daylow(3))*2+0.4;
}
if var3==1 and var5>3 and var1==(var2+2) then { #3일째
LP1= dayhigh(3)+0.2;
}
if var3==1 and var1==(var2+3) then { #4일째
LP1= max(dayhigh(1),dayhigh(2)) -(max(dayhigh(1),dayhigh(2))-min(daylow(1),daylow(2)))*2+0.3;
}
#GAP DOWN 지지라인(당일 갭하락 후 당일 고가가 전일 종가 이상 회복할 경우의 당일 지지라인 설정)==>눌림 패턴
if dayindex() < 3 then{
if lowest(l,2)<highest(banddn,4) and dayopen(0)<dayclose(1)-0.2 then
var6 = 1;
else
var6 = 2;}
if dayindex() == 24 then
var6 = 2;
if var3==0 and var6==1 and dayhigh()>max(dayopen(1),dayclose(1)) then
Lp1 = max(dayhigh(2),dayhigh(1),dayhigh())- (max(dayhigh(2),dayhigh(1),dayhigh())-daylow(1))*2+0.4;
if var1==(var2+5) or (var1==(var2+2) and dayopen(1)+0.5 <dayclose(1)) or (var1>=var2+1 and daylow(1)<Lp11) then
var3 = 0 ;
else if (var1==(var2+1) and max(dayopen(1),dayclose(1))+0.3<dayopen(0)) then
var3 = 0 ;
plot1(LP1,"상승갭필지지",BLACK) ;
#보조차트 적용수식
#2.PRICE LINE - 갭에이은 하락 파동에 대한 지지라인 ==>15분봉 적용
Var : bandup(0),banddn(0);
var : sh(0),timeH1(0);
var : LP1(0),LP11(0);
var : dayo0(0),dayh0(0),dayl0(0),dayc0(0),dayo1(0),dayh1(0),dayl1(0),dayc1(0);
var : dayo2(0),dayh2(0),dayl2(0),dayc2(0),dayo3(0),dayh3(0),dayl3(0),dayc3(0);
var : tah1(0),tal1(0),tac1(0);
tah1=data1("H");
tal1=data1("L");
tac1=data1("C");
bandup=ma(tac1,30)+(2.1*std(tac1,30));
banddn=ma(tac1,30)-(2.1*std(tac1,30));
#timehigh(090000,093000)을 타종목1에 변형
if stime == 090000 then{
sh = data1("H");
}
if stime > 090000 and Stime <= 093000 then{
if data1("H") > sh then
sh = data1("H");
}
timeH1 = sh;
#타종목 당일 시,고,저,종
dayO0=tadayo(0);
dayH0=tadayh(0);
dayL0=tadayl(0);
#타종목 전일 시,고,저,종
dayO1=tadayo(1);
dayH1=tadayh(1);
dayL1=tadayl(1);
dayC1=tadayc(1);
#타종목 전전일 시,고,저,종
dayO2=tadayo(2);
dayH2=tadayh(2);
dayL2=tadayl(2);
dayC2=tadayc(2);
#타종목 전전전일 시,고,저,종
dayO3=tadayo(3);
dayH3=tadayh(3);
dayL3=tadayl(3);
dayC3=tadayc(3);
#GAP FILL 지지라인(GAP 상승 후 GAP FILL 시점에 따른 지지라인 설정)==> 눌림 패턴
if date != date[1] then{
var1 = var1+1;
LP11 = Lp1[2];
}
if (timeH1>Dayc1+0.5 or Dayo0>Dayc1+0.5) and dayo0>highest(tah1,120)[2] and timeH1>highest(bandup,20)[3] then {
var2 = var1 ;
var3 = 1 ; }
if var3==1 and var1==var2+1 and dayl1<dayh2 then #2일째에 ==> 1일째 GAP FILL 여부 Check
var5=1;
else if var3==1 and var1==var2+2 and dayl1<dayh3 then #3일째에 ==> 2일째 GAP FILL 여부 Check
var5=2;
else if var3==1 and var1==var2+3 and dayl1<dayh3 then #4일째에 ==> 3일째 GAP FILL 여부 Check
var5=3;
else
var5=4;
if var3==1 and var1==(var2+1) then { #2일째
LP1= min(dayh1-(dayh1-dayh2)*2,dayh1-(dayh1-dayl1)*2)+0.3;
}
if var3==1 and var1==(var2+2) and var5<3 then { #3일째
LP1= dayh2-(dayh2-dayl3)*2+0.4;
}
if var3==1 and var5>3 and var1==(var2+2) then { #3일째
LP1= dayh3+0.2;
}
if var3==1 and var1==(var2+3) then { #4일째
LP1= max(dayh1,dayh2) -(max(dayh1,dayh2)-min(dayl1,dayl2))*2+0.3;
}
#GAP DOWN 지지라인(당일 갭하락 후 당일 고가가 전일 종가 이상 회복할 경우의 당일 지지라인 설정)==>눌림 패턴
if dayindex() < 3 then{
if lowest(tal1,2)<highest(banddn,4) and dayo0<dayc1-0.2 then
var6 = 1;
else
var6 = 2;}
if dayindex() == 24 then
var6 = 2;
if var3==0 and var6==1 and dayh0>max(dayo1,dayc1) then
Lp1 = max(dayh2,dayh1,dayh0)- (max(dayh2,dayh1,dayh0)-dayl1)*2+0.4;
if var1==(var2+5) or (var1==(var2+2) and dayo1+0.5 <dayc1) or (var1>=var2+1 and dayl1<Lp11) then
var3 = 0 ;
else if (var1==(var2+1) and max(dayo1,dayc1)+0.3<dayo0) then
var3 = 0 ;
plot1(LP1,"상승갭필지지",BLACK) ;
===============================================================================================================================================================================
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 질문입니다.
> 안녕하세요
예스스탁입니다.
사용자함수를 4개 올려드립니다.
참고하시기 바랍니다.
즐거운 하루되세요
> CJ_MINSUNG 님이 쓴 글입니다.
> 제목 : 질문입니다.
> 분봉에서 타종목1의 N일전 시가를 구하는 식과 종가를 구하는식이 잘구분이 안되어 질문드립니다.(사용자 함수로 표기하였습니다. )
N일전 시가의 식도 N일전 종가,고가,저가의 식과 마찬가지인가요?
==>값이 다르게 나오는 것같아 질문드립니다...
#N일전 시가
## 0:당일 1: 전일 2:2일전 3:3일전~~~~
input : N(NUMERIC);
var : cnt(0);
array : Cval[11](0);
if date != date[1] then{
for cnt = 1 to 10{
Cval[cnt] = Cval[cnt-1][1];
}
}
Cval[0] = data1("O");
_DayO1 = Cval[N];
#N일전 종가
## 0:당일 1: 전일 2:2일전 3:3일전~~~~
input : N(NUMERIC);
var : cnt(0);
array : Cval[11](0);
if date != date[1] then{
for cnt = 1 to 10{
Cval[cnt] = Cval[cnt-1][1];
}
}
Cval[0] = data1("C");
_DayC1 = Cval[N];
#N일전 고가
## 0:당일 1: 전일 2:2일전 3:3일전~~~~
input : N(NUMERIC);
var : cnt(0);
array : Cval[11](0);
if date != date[1] then{
for cnt = 1 to 10{
Cval[cnt] = Cval[cnt-1][1];
}
}
Cval[0] = data1("h");
_DayH1 = Cval[N];
#N일전 저가
## 0:당일 1: 전일 2:2일전 3:3일전~~~~
input : N(NUMERIC);
var : cnt(0);
array : Cval[11](0);
if date != date[1] then{
for cnt = 1 to 10{
Cval[cnt] = Cval[cnt-1][1];
}
}
Cval[0] = data1("L");
_DayL1 = Cval[N];
답변을 입력해주세요.