첨부 이미지
그림1
안녕하세요!
첨부된 그림 파일은
1분봉에 60분봉 지표를 나타낸 것입니다.
문제는
가운데 보시면 수평선으로 일직선으로 나오는게 있는데,
실제 60분봉 지표의 흐름과는 다른 것 같습니다.
문제를 해결할 방법이 없을까요?
볼린저 밴드와 유사한 지표입니다.
답변 1
예스스탁
예스스탁 답변
2024-04-18 16:26:24
안녕하세요
예스스탁입니다.
올려주신 그림만으로는 내용 파악이 어렵습니다.
첨부한 1번그림은
data2를 기본종목과 동일종목으로 60분으로 추가한 후
아래 1번지표를 적용한 차트입니다.
2번그림은
기본종목 1분봉 자체로 60분봉의 볼밴값을 계산해서 그린 지표입니다.
아래 2번 지표입니다.
2가지 모두 첨부하신 그림과 같이 수평으로 나타나는 구간이 없습니다.
수식 내용등을 살펴보셔야 할것 같습니다.
수식에 지표 계산에 시간제한이 있거나
혹은 계산 할수 없는 구간이 있는것 같습니다.
참고로 지표는 기본차트봉을 기준으로 그려지게 됩니다.
data2를 이용한 수식이더라도
기본차트는 봉이 없는 시간대에 data2의 봉이 있어도 그려지지 않습니다.
data1봉을 기준으로 최근 data2의 완성봉의 값이 그려지게 됩니다.
즉 data2와 같은 참조데이터는 data1을 분석하기 위한 보조 데이터입니다.
data1이 기준이 됩니다.
1번 지표
Plot1(Data2(BollBandUp(20,2)));
Plot2(Data2(ma(C,20)));
Plot3(Data2(BollBandDown(20,2)));
2번 지표
input : 타주기분(60),P(20),Dv(2);
var : S1(0),D1(0),TM(0),TF(0);
var : cnt(0),SumSqrt(0),Stdv(0);
var : sum(0),BBmd(0),Bbup(0),BBdn(0),BandB(0);
Array : CC[100](0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF = TM%타주기분;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and 타주기분 > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and 타주기분 > 1 and TM >= TM[1]+타주기분) or
(Bdate == Bdate[1] and 타주기분 == 1 and TM > TM[1]) Then
{
for cnt = 1 to 99
{
CC[cnt] = CC[cnt-1][1];
}
}
CC[0] = C;
if CC[P] > 0 then
{
sum = 0;
for cnt = 0 to P-1{
sum = sum + CC[cnt];
}
BBmd = sum/P;
SumSqrt = 0;
For cnt = 0 To P - 1 {
SumSqrt = SumSqrt + (CC[cnt] - BBmd)^2;
}
Stdv = SquareRoot(SumSqrt / P);
BBup = BBmd + (Dv * Stdv);
BBdn = BBmd - (Dv * Stdv);
Plot1(bbup);
Plot2(bbmd);
Plot3(bbdn);
}
}
즐거운 하루되세요
> 끼야98 님이 쓴 글입니다.
> 제목 : 타주기 지표 표시 문제
> 안녕하세요!
첨부된 그림 파일은
1분봉에 60분봉 지표를 나타낸 것입니다.
문제는
가운데 보시면 수평선으로 일직선으로 나오는게 있는데,
실제 60분봉 지표의 흐름과는 다른 것 같습니다.
문제를 해결할 방법이 없을까요?
볼린저 밴드와 유사한 지표입니다.