커뮤니티
문의드립니다.
2013-12-20 11:46:11
149
글번호 70695
늘 감사드립니다.
미결그래프를 하나의 차트로 봤을때,
1. 주봉미결그래프에 대한 볼린져밴드를 분봉에서 볼수 있게
2. 일봉미결그래프에 대한 볼린져밴드를 분봉에서 볼수 있게
3. 시봉미결그래프에 대한 볼린져밴드를 분봉에서 볼수 있게
해주시면 감사하겠습니다.
답변 1
예스스탁 예스스탁 답변
2013-12-20 13:49:28
안녕하세요
예스스탁입니다.
1 분봉에서 주봉
분봉 차트에는 수식에서 계산할수 있을만큼 주봉데이터가 모두 있어야 계산됩니다.
아래식은 기간값이 20이므로 20주간의 데이터가 있어야 합니다.
차트 최대 조회봉수는 5000개 봉이므로 짧은 주기의 분봉에서는
지표가 나오지 않습니다.
input : weekPeriod(20),weekDv(2);
var : weekcnt(0),weekcount(0),weeksum(0),weekmav(0),weekBBup(0),weekBBdn(0),weekSumSqrt(0),weekCounter(0),weekStdv(0);
Array : weekC[120](0);
if dayofweek(date) < dayofweek(date[1]) Then{
for weekcnt = 1 to weekPeriod+1{
weekC[weekcnt] = weekC[weekcnt-1][1];
}
}
weekC[0] = OI;
If weekC[weekPeriod] != 0 Then {
weeksum = 0;
for weekcount = 0 to weekPeriod-1{
weeksum = weeksum+weekC[weekcount];
}
weekmav = weeksum/weekPeriod;
weekSumSqrt = 0;
For weekCounter = 0 To weekPeriod - 1 {
weekSumSqrt = weekSumSqrt + (weekC[weekCounter] - weekmav) * (weekC[weekCounter] - weekmav);
}
weekStdv = SquareRoot(weekSumSqrt / weekPeriod);
weekBBup = weekmav + (weekDv * weekStdv);
weekBBdn = weekmav - (weekDv * weekStdv);
plot1(weekBBup);
plot2(weekmav );
plot3(weekBBdn);
}
2. 분봉에서 일봉
input : dayPeriod(20),dayDv(2);
var : daysum(0),daycnt(0),dayma(0),daySumSqrt(0),dayStdv(0);
var : dayBBup(0),dayBBdn(0),dayCounter(0);
#일봉 이동평균 계산
daysum = 0;
for daycnt = 0 to dayPeriod-1{
daysum = daysum + DayOi(daycnt);
}
dayma = daysum/dayPeriod;
#표준편차 계산
If DayOi(dayPeriod) != 0 Then {
daySumSqrt = 0;
For dayCounter = 0 To dayPeriod - 1 {
daySumSqrt = daySumSqrt + (DayOi(dayCounter) - dayma)^2;
}
dayStdv = SquareRoot(daySumSqrt / dayPeriod);
}
Else
dayStdv = 0;
# 일봉 볼린져밴드 계산
dayBBup = dayma + (dayDv * dayStdv);
dayBBdn = dayma - (dayDv * dayStdv);
plot1(dayBBup ,"상단");
plot2(dayma,"중단");
plot3(dayBBdn,"하단");₩
3 분봉에서 시봉(60분봉)
input : Ntime(60),P(20),Dv(2);
var : cnt(0),count(0),sum(0),Avgv(0),FF(0),FT(0);
var : MiBBup(0),MiBBdn(0),SumSqrt(0),Counter(0),Stdv(0);
Array : CC[120](0);
if date != date[1] Then
FF = TimeToMinutes(stime);
FT = (TimeToMinutes(stime)-FF)%Ntime;
if dayindex() == 0 or (FT < FT[1] and stime > stime[1]) Then{
for cnt = 1 to 119{
CC[cnt] = CC[cnt-1][1];
}
}
CC[0] = OI;
if CC[P] > 0 Then{
sum = 0;
for count = 0 to P-1{
sum = sum+CC[count];
}
Avgv = sum/P;
SumSqrt = 0;
For Counter = 0 To P - 1 {
SumSqrt = SumSqrt + (CC[Counter] - Avgv) * (CC[Counter] - Avgv);
}
Stdv = SquareRoot(SumSqrt / P);
MiBBup = Avgv + (Dv * Stdv);
MiBBdn = Avgv - (Dv * Stdv);
}
plot1(MiBBup);
plot2(Avgv);
plot3(MiBBdn);
즐거운 하루되세요
> 예스매니아 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 늘 감사드립니다.
미결그래프를 하나의 차트로 봤을때,
1. 주봉미결그래프에 대한 볼린져밴드를 분봉에서 볼수 있게
2. 일봉미결그래프에 대한 볼린져밴드를 분봉에서 볼수 있게
3. 시봉미결그래프에 대한 볼린져밴드를 분봉에서 볼수 있게
해주시면 감사하겠습니다.
다음글
이전글