답변중에서
2
아래는 분봉차트에서 타분봉볼밴을 그리는 식입니다.
기본차트를 이용해 다른주기의 지표는
기본차트 주기기준으로 배수로 큰주기만 계산이 가능합니다.
(추가 질의)주기 기준으로 배수로 큰 주기의 뜻이
예를 들어,,1분봉에 15분은 가능, 1분봉에 2배수, 3배수, 4배수, 등등
1분봉은 모두 가능함,,
그러나, 2분봉에 5분봉은 불가함(배수가 아니므로, ) 2분봉에 4분봉, 8분봉은 가능함
제가 이해하고 있는게 맞나요?
그리고,
지난 번에 주신 수식은 1분봉에 15분봉을 표기하는 거였는데,,
이것을 다른 주기로 바꾸려면,,
아래 수식에서 "타주기분(15)" 변수 값을 바꿔주면 되나요,,
예를 들어 12분이면 타주기분(3)
맞나요?
input : 타주기분(15),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);
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(BBmd);
plot2(BBup);
plot3(BBdn);
}
}
답변 1
예스스탁
예스스탁 답변
2022-01-14 16:29:05
안녕하세요
예스스탁입니다.
1
예 맞습니다.
2
12분이면 타주기분(12)로 지정하시면 됩니다.
구하고자하는 다른주기분을 지정하시면 됩니다.
즐거운 하루되세요
> 끼야98 님이 쓴 글입니다.
> 제목 : 75404 답변에 대한 추가 질의입니다.
>
답변중에서
2
아래는 분봉차트에서 타분봉볼밴을 그리는 식입니다.
기본차트를 이용해 다른주기의 지표는
기본차트 주기기준으로 배수로 큰주기만 계산이 가능합니다.
(추가 질의)주기 기준으로 배수로 큰 주기의 뜻이
예를 들어,,1분봉에 15분은 가능, 1분봉에 2배수, 3배수, 4배수, 등등
1분봉은 모두 가능함,,
그러나, 2분봉에 5분봉은 불가함(배수가 아니므로, ) 2분봉에 4분봉, 8분봉은 가능함
제가 이해하고 있는게 맞나요?
그리고,
지난 번에 주신 수식은 1분봉에 15분봉을 표기하는 거였는데,,
이것을 다른 주기로 바꾸려면,,
아래 수식에서 "타주기분(15)" 변수 값을 바꿔주면 되나요,,
예를 들어 12분이면 타주기분(3)
맞나요?
input : 타주기분(15),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);
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(BBmd);
plot2(BBup);
plot3(BBdn);
}
}