그러면,이것도 안되나요?
틱차트를 기본차트로 하고
1.분당 틱봉20일선을 구하고, 1분전 틱봉20일선을 구하라
2.분당 틱봉갯수를 구하라
감사합니다
답변 1
예스스탁
예스스탁 답변
2023-02-15 14:09:15
안녕하세요
예스스탁입니다.
분당 틱봉20일선이 어떤 의미이신지 정확치 않습니다.
틱봉에서 분봉의 20선을 구하는 내용이시면
틱봉에서 분봉의 지표값은 정확한 계산이 불가능합니다.
수식은 봉의 시고저종만 이용할 수 있습니다.
분봉의 시간경계가 봉의 중간에 있는 경우가 많은데
하나의 봉에서 봉중간의 특정시간의 값을 알지 못합니다.
타주기 지표는 기본차트에서 봉을 몇개씩 묶어 계산하는 것만 가능합니다.
즉 기본차트 기준 N배 높은 주기만 가능하며
배수로 떨어지지 않거나 기본차트보다 낮은 주기는 가능하지 않습니다.
아래와 같이 작성하시면 근사값으로만 계산이 됩니다.
틱봉에서 지정한 시간주기를 넘기는 첫봉을 기준으로 계산하게 됩니다.
1
input : ntime1(1),P1(20);
var : S1(0),D1(0),TM(0),TF(0),cnt(0);
var : sum1(0),mav1(0);
var : sum2(0),mav2(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%ntime1;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and ntime1 > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and ntime1 > 1 and TM >= TM[1]+ntime1) or
(Bdate == Bdate[1] and ntime1 == 1 and TM > TM[1]) Then
{
for cnt = 99 downto 1
{
CC[cnt] = CC[cnt-1];
}
}
CC[0] = C;
if CC[P1] > 0 then
{
sum1 = 0;
sum2 = 0;
for cnt = 0 to P1-1
{
sum1 = sum1+CC[cnt];
sum2 = sum2+CC[cnt+1];
}
mav1 = sum1/P1;
mav2 = sum2/P1;
plot1(mav1,"이평");
plot2(mav2,"1봉전이평");
}
}
2
input : ntime1(1);
var : S1(0),D1(0),TM(0),TF(0),idx(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%ntime1;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and ntime1 > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and ntime1 > 1 and TM >= TM[1]+ntime1) or
(Bdate == Bdate[1] and ntime1 == 1 and TM > TM[1]) Then
{
idx = 0;
}
idx = idx+1;
Plot1(idx);
}
즐거운 하루되세요
> 하늘거지 님이 쓴 글입니다.
> 제목 : 수식부탁합니다
>
그러면,이것도 안되나요?
틱차트를 기본차트로 하고
1.분당 틱봉20일선을 구하고, 1분전 틱봉20일선을 구하라
2.분당 틱봉갯수를 구하라
감사합니다