커뮤니티
죄송해요.
2011-01-26 01:07:00
804
글번호 35289
죄송합니다만, 한개 더 부탁드려요
일봉시스템을 사용하는데,
주봉볼린져밴드하단선(주봉볼하(0))을 기간5,승수2로 나타내려면,
다음이 맞는지 부탁드려요
-------------------------------------
BollBandDown = ma(C, Period) - (D * std(C, Period));
이니까...
------------------------------------
array : 주봉O[100](0),주봉H[100](0),주봉L[100](0),주봉C[100](0);
var : k(0),주봉볼하(0),m(0);
if date[1]<date and dayofweek(date[1])>=dayofweek(date) then {
for k = 98 downto 0 {
주봉O[k+1] = 주봉O[k];
주봉H[k+1] = 주봉H[k];
주봉L[k+1] = 주봉L[k];
주봉C[k+1] = 주봉C[k];
}
주봉O[0] = O;
주봉H[0] = H;
주봉L[0] = L;
주봉C[0] = C;
}
주봉C[0] = C;
if H > 주봉H[0] Then
주봉H[0] = H;
if L < 주봉L[0] Then
주봉L[0] = L;
m=(주봉C[0]+주봉C[1]+주봉C[2]+주봉C[3]+주봉C[4])/5 ;
주봉볼하= m - 2*SquareRoot( ( (주봉C[0]-m)^2+...+(주봉C[4]-m)^2 )/5 ) ;
이렇게 하면 맞나요?
=======================================
답변 1
예스스탁 예스스탁 답변
2011-01-26 13:58:12
안녕하세요
예스스탁입니다.
작성하신 내용으로 하셔도 됩니다.
다만 기간값이 변경되면 추가로 수식에 나열해 써야하므로
아래와 같이 기간값을 외부변수로 가능하게 작성하시면 됩니다.
# 분봉에서 주봉 볼린져밴드 계산 시작
input : weekPeriod(20),weekDv(2);
var : weekcnt(0),weekcount(0),weeksum(0),weekmav(0),weekBBup(0),weekBBdn(0),weekAvgv(0),weekSumSqrt(0),weekCounter(0),weekStdv(0);
Array : 주봉C[120](0);
if dayofweek(date) < dayofweek(date[1]) and date > date[1] Then{
주봉C[1] = C[1];
for weekcnt = 2 to weekPeriod+1{
주봉C[weekcnt] = 주봉C[weekcnt-1][1];
}
}
주봉C[0] = C;
weeksum = 0;
for weekcount = 0 to weekPeriod-1{
weeksum = weeksum+주봉C[weekcount];
}
weekmav = weeksum/weekPeriod;
If 주봉C[weekPeriod] != 0 Then Begin
weekAvgv = weekmav;
weekSumSqrt = 0;
For weekCounter = 0 To weekPeriod - 1 Begin
weekSumSqrt = weekSumSqrt + (주봉C[weekCounter] - weekAvgv) * (주봉C[weekCounter] - weekAvgv);
End;
weekStdv = SquareRoot(weekSumSqrt / weekPeriod);
End
Else
weekStdv = 0;
weekBBup = weekmav + (weekDv * weekStdv);
weekBBdn = weekmav - (weekDv * weekStdv);
# 분봉에서 주봉 볼린져밴드 계산 끝
plot1(weekBBup);
plot2(weekmav );
plot3(weekBBdn);
즐거운 하루되세요
> 스테디어드밴서 님이 쓴 글입니다.
> 제목 : 죄송해요.
> 죄송합니다만, 한개 더 부탁드려요
일봉시스템을 사용하는데,
주봉볼린져밴드하단선(주봉볼하(0))을 기간5,승수2로 나타내려면,
다음이 맞는지 부탁드려요
-------------------------------------
BollBandDown = ma(C, Period) - (D * std(C, Period));
이니까...
------------------------------------
array : 주봉O[100](0),주봉H[100](0),주봉L[100](0),주봉C[100](0);
var : k(0),주봉볼하(0),m(0);
if date[1]<date and dayofweek(date[1])>=dayofweek(date) then {
for k = 98 downto 0 {
주봉O[k+1] = 주봉O[k];
주봉H[k+1] = 주봉H[k];
주봉L[k+1] = 주봉L[k];
주봉C[k+1] = 주봉C[k];
}
주봉O[0] = O;
주봉H[0] = H;
주봉L[0] = L;
주봉C[0] = C;
}
주봉C[0] = C;
if H > 주봉H[0] Then
주봉H[0] = H;
if L < 주봉L[0] Then
주봉L[0] = L;
m=(주봉C[0]+주봉C[1]+주봉C[2]+주봉C[3]+주봉C[4])/5 ;
주봉볼하= m - 2*SquareRoot( ( (주봉C[0]-m)^2+...+(주봉C[4]-m)^2 )/5 ) ;
이렇게 하면 맞나요?
=======================================