커뮤니티
일정조건후부터 봉수 계산에서 오류
2005-08-02 01:05:42
1464
글번호 7910
일정조건(5이평선이 10이평선을 골든크로스발생시) 발생후부터 현재까지 진행된
봉수를 계산하는 수식을 만들었습니다. 반대로 5이평선이 10이평선을 데드발생
부터 현재까지 진행한 봉수를 계산합니다.
1. 첫번째 수식
input : p1(5), p2(10);
var : ma1(0), ma2(0), UPBN(0), DownBN(0);
MA1 = ma(C, P1);
MA2 = ma(C, P2);
if CrossUp(MA1, MA2) then
{
UPBN = 1;
}
if CrossDown(MA1, MA2) then
{
DownBN = 1;
}
if MA1 >= MA2 then
UpBN = UPBN + 1 ;
else if MA1 < MA2 then
DownBN = DownBN + 1;
plot1(UpBN, "UP", red);
plot2(DownBN, "Down", red);
2. 두번째 수식
input : p1(5), p2(10);
var : ma1(0), ma2(0), UpI(0), DownI(0), UpBN(0), DownBN(0);
MA1 = ma(C, P1);
MA2 = ma(C, P2);
if CrossUp(MA1, MA2) and UpBN == 0 then
{
UpI = index;
DownBN = 0;
}
if CrossDown(MA1, MA2) and DownBN == 0 then
{
DownI = Index;
UpBN = 0;
}
if MA1 >= MA2 and DownBN == 0 then
UpBN = index - UpI;
else if MA1 < MA2 and UpBN == 0 then
DownBN = index - DownI;
plot1(UpBN, "UP", red);
plot2(DownBN, "Down", red);
위의 식으로 시뮬레이션(기간 20020101부터 30분봉)에 지표을 적용하였습니다.
그런데 첫번째 수식은 봉수의 값이 나타나는 구간이 있고 N/A N/A로 나타나는 구간이 있습니다. 두번째 수식은 N/A N/A로만 표시되고 봉수가 나타나지 않습니다.
무엇이 문제인지 확인 부탁드립니다.
답변 1
예스스탁 예스스탁 답변
2005-08-02 15:56:45
안녕하세요
예스스탁입니다.
올리신 식에 문제는 없습니다.
n/a는 계산할수 없는 구간으로 이평을 기간값을 가지는 지표를 사용한 경우
기간값만큼 차트상 처음에 n/a구간이 나타납나니다.
2번식을 조금 수정했습니다.
input : p1(5), p2(10);
var : ma1(0), ma2(0), UPBN(0), DnBN(0),UpPos(0),DnPos(0);
MA1 = ma(C, P1);
MA2 = ma(C, P2);
if CrossUp(MA1, MA2) then{
UpPos = 1;
DnPos = 0;
}
if CrossDown(MA1, MA2) then{
DnPos = 1;
UpPos = 0;
}
if UPPos == 1 then
UpBn = UpBn +1;
else
UpBn = 0;
if DnPos == 1 then
DnBn = DnBn +1;
else
DnBn = 0;
plot1(UpBN, "UP", red);
plot2(DnBN, "Down", Blue);
즐거운 하루되세요
> CJ_emorning 님이 쓴 글입니다.
> 제목 : 일정조건후부터 봉수 계산에서 오류
> 일정조건(5이평선이 10이평선을 골든크로스발생시) 발생후부터 현재까지 진행된
봉수를 계산하는 수식을 만들었습니다. 반대로 5이평선이 10이평선을 데드발생
부터 현재까지 진행한 봉수를 계산합니다.
1. 첫번째 수식
input : p1(5), p2(10);
var : ma1(0), ma2(0), UPBN(0), DownBN(0);
MA1 = ma(C, P1);
MA2 = ma(C, P2);
if CrossUp(MA1, MA2) then
{
UPBN = 1;
}
if CrossDown(MA1, MA2) then
{
DownBN = 1;
}
if MA1 >= MA2 then
UpBN = UPBN + 1 ;
else if MA1 < MA2 then
DownBN = DownBN + 1;
plot1(UpBN, "UP", red);
plot2(DownBN, "Down", red);
2. 두번째 수식
input : p1(5), p2(10);
var : ma1(0), ma2(0), UpI(0), DownI(0), UpBN(0), DownBN(0);
MA1 = ma(C, P1);
MA2 = ma(C, P2);
if CrossUp(MA1, MA2) and UpBN == 0 then
{
UpI = index;
DownBN = 0;
}
if CrossDown(MA1, MA2) and DownBN == 0 then
{
DownI = Index;
UpBN = 0;
}
if MA1 >= MA2 and DownBN == 0 then
UpBN = index - UpI;
else if MA1 < MA2 and UpBN == 0 then
DownBN = index - DownI;
plot1(UpBN, "UP", red);
plot2(DownBN, "Down", red);
위의 식으로 시뮬레이션(기간 20020101부터 30분봉)에 지표을 적용하였습니다.
그런데 첫번째 수식은 봉수의 값이 나타나는 구간이 있고 N/A N/A로 나타나는 구간이 있습니다. 두번째 수식은 N/A N/A로만 표시되고 봉수가 나타나지 않습니다.
무엇이 문제인지 확인 부탁드립니다.
다음글