예스스탁
예스스탁 답변
2021-07-23 11:38:46
안녕하세요
예스스탁입니다.
검색식으로 작성해 차트에 적용하시면 됩니다.
조건만족봉에 고가나 저가에 점으로 표시합니다.
1
# 분봉에서 일봉 볼린져밴드 계산 시작
input : Period(20),Dv(2);
var : sum(0),cnt(0),mav(0),SumSqrt(0),Stdv(0);
var : BBup(0),BBdn(0),Counter(0);
If DayClose(Period) > 0 Then {
#일봉 이동평균 계산
sum = 0;
for cnt = 0 to Period-1{
sum = sum + DayClose(cnt);
}
mav = sum/Period;
#표준편차 계산
SumSqrt = 0;
For Counter = 0 To Period - 1 {
SumSqrt = SumSqrt + (DayClose(Counter) - mav)^2;
}
Stdv = SquareRoot(SumSqrt / Period);
# 일봉 볼린져밴드 계산
BBup = mav + (Dv * Stdv);
BBdn = mav - (Dv * Stdv);
if C > BBup Then
Plot1(H,"검색1",MAGENTA);
if C < BBdn Then
Plot2(L,"검색2",CYAN);
}
2
input : Period(20),Dv(2);
var : cnt(0),sum(0),mav(0),BBup(0),BBdn(0),SumSqrt(0),Counter(0),Stdv(0);
Array : WeekC[100](0);
if dayofweek(bdate) < dayofweek(bdate[1]) Then
{
for cnt = 1 to 99
{
WeekC[cnt] = WeekC[cnt-1][1];
}
}
WeekC[0] = C;
If WeekC[Period] != 0 Then
{
sum = 0;
for cnt = 0 to Period-1
{
sum = sum+WeekC[cnt];
}
mav = sum/Period;
SumSqrt = 0;
For cnt = 0 To Period - 1
{
SumSqrt = SumSqrt + (WeekC[cnt] - mav) * (WeekC[cnt] - mav);
}
Stdv = SquareRoot(SumSqrt / Period);
BBup = mav + (Dv * Stdv);
BBdn = mav - (Dv * Stdv);
if C > BBup Then
Plot1(H,"검색1",MAGENTA);
if C < BBdn Then
Plot2(L,"검색2",CYAN);
}
즐거운 하루되세요
> 느림보 님이 쓴 글입니다.
> 제목 : 타주기참조식
> - 일봉의 볼린저밴드 상단보다크거나 하단보다 작을 경우에 이를 60분봉 챠트에 나타나게 하는 지표를 구합니다, 크고 작은것의 색깔을 구분하여 표시되게 해주세요
- 추가로 주봉의 볼린저밴드 상단보다크거나 하단보다 작을 경우에 이를 일봉 챠트에 나타나게 하는 지표를 구합니다, 크고 작은것의 색깔을 구분하여 표시되게 해주세요
무더위 조심하시고 건강하세요
감사합니다