커뮤니티
60분봉에서 5 일선이 20일선을 상승 돌파하는 수식 문의
2014-07-21 22:52:36
188
글번호 76955
60분 분봉에서
당일 첯봉에서 20 이평 > 5이평 이고
당일 마지막 봉에서 20 이평 < 5이평 인 종목을 검색하려고 합니다.
아래의 프로그램 중에서 무었이 잘못 되었는지요?
Input : Period1(5), Period2(10), Period3(20);
var : ma5(0), ma10(0),ma20(0) ;
var : cond1(false),cond2(false);
// data1 is 60 분봉
ma5 = ma(C,Period1) ;
ma10 = ma(C,Period2) ;
ma20 = ma(C,Period3) ;
if dayindex == 0 then
{
cond1 = false;
cond2 = false;
if(ma20 > ma5) then cond1 = True; else { cond1 = false; }
}
if dayindex == 6 then
{
if(ma20 < ma5) then cond2 = True; else cond2 = false;
}
if ( cond1 == true and cond2 == true ) then find(1);
답변 1
예스스탁 예스스탁 답변
2014-07-22 09:01:28
안녕하세요
예스스탁입니다.
작성하신 수식 맞게 작성된 식입니다.
종목검색결과 정상적으로 조건에 맞는 종목이 나오고 있습니다.
종목검색시에 종목검색 속성화면에서
검색에 필요한 최소 봉갯수를 넉넉히 50정도 지정하시고
60분 주기에서 검색하시면 됩니다.
Input : Period1(5), Period2(10), Period3(20);
var : ma5(0), ma10(0),ma20(0) ;
var : cond1(false),cond2(false);
// data1 is 60 분봉
ma5 = ma(C,Period1) ;
ma10 = ma(C,Period2) ;
ma20 = ma(C,Period3) ;
if dayindex == 0 then
{
cond1 = false;
cond2 = false;
if(ma20 > ma5) then
cond1 = True;
else {
cond1 = false; }
}
if dayindex == 6 then
{
if(ma20 < ma5) then
cond2 = True;
else
cond2 = false;
}
if cond1 and cond2 Then
find(1);
작성하신 식은 마지막봉을 봉번호로 지정하고 있습니다.
종목에 따라 거래가 없어 당일 봉수가
dayindex ==6까지 생성되지 않는 경우가 있을 수 있습니다.
아래와 같이 작성하시면 당일 첫봉은 5이평이 20이평보다 작고
마지막봉은 5이평이 20이평보다 큰 종목을 찾는 식이됩니다.
Input : Period1(5), Period2(10), Period3(20);
var : ma5(0), ma10(0),ma20(0) ;
var : cond1(false),cond2(false);
// data1 is 60 분봉
ma5 = ma(C,Period1) ;
ma10 = ma(C,Period2) ;
ma20 = ma(C,Period3) ;
if dayindex == 0 then
{
cond1 = false;
cond2 = false;
if(ma20 > ma5) then
cond1 = True;
else
cond1 = false;
}
if(ma20 < ma5) then
cond2 = True;
else
cond2 = false;
if cond1 == true and cond2 == true Then
find(1);
즐거운 하루되세요
> ssjyu 님이 쓴 글입니다.
> 제목 : 60분봉에서 5 일선이 20일선을 상승 돌파하는 수식 문의
> 60분 분봉에서
당일 첯봉에서 20 이평 > 5이평 이고
당일 마지막 봉에서 20 이평 < 5이평 인 종목을 검색하려고 합니다.
아래의 프로그램 중에서 무었이 잘못 되었는지요?
Input : Period1(5), Period2(10), Period3(20);
var : ma5(0), ma10(0),ma20(0) ;
var : cond1(false),cond2(false);
// data1 is 60 분봉
ma5 = ma(C,Period1) ;
ma10 = ma(C,Period2) ;
ma20 = ma(C,Period3) ;
if dayindex == 0 then
{
cond1 = false;
cond2 = false;
if(ma20 > ma5) then cond1 = True; else { cond1 = false; }
}
if dayindex == 6 then
{
if(ma20 < ma5) then cond2 = True; else cond2 = false;
}
if ( cond1 == true and cond2 == true ) then find(1);