커뮤니티
시스템식 부탁드립니다.
2012-06-25 03:35:14
285
글번호 52318
3분봉에서 일봉의 볼린져밴드(실시간)를 이용하고 싶습니다.
매수SetUp
1. 최근 전일/전전일의 볼린져밴드(12,2)의 폭이 5% 이내이어야 함
2. 일봉의 5이평과 20이평이 5%내에 수렴되어 있어야 함
3. 전일/전전일의 주가 등락폭이 5%이내여야 함
4. 전일/전전일의 종가가 일봉상의 전일/전전일 볼린져밴드 내에 존재해야 함
매수
전일 거래량의 200%를 넘어서면서 일봉의 볼린져밴드 상단이 전일보다 증가하며
현재 3분봉의 종가가 일봉의 볼린져밴드를 돌파하면 매수
매도
일봉의 RSI(14)가 과열권 이탈시 매수청산
답변 1
예스스탁 예스스탁 답변
2012-06-25 10:18:45
안녕하세요
예스스탁입니다.
# 분봉에서 일봉 볼린져밴드 계산 시작
input : dayPeriod(12),dayDv(2);
var : daysum(0),daycnt(0),dayma(0),daySumSqrt(0),dayStdv(0);
var : dayBBup(0),dayBBdn(0),dayCounter(0),dayBBup1(0),dayBBup2(0),dayBBdn1(0),dayBBdn2(0);
Inputs: Period(14);
Variables: Counter(0), DownAmt(0), UpAmt(0), UpSum(0), DownSum(0), UpAvg(0), DownAvg(0), RSIv(0);
var : Dindex(0), PreUpAvg(0), preDownAvg(0);
input : P1(5),P2(20);
var : sumV1(0),maV1(0),count(0),sumV2(0), maV2(0);
input : Bper(200);
if date != date[1] Then{
dayBBup1 = dayBBup[1];
dayBBup2 = dayBBup1[1];
dayBBdn1 = dayBBdn[1];
dayBBdn2 = dayBBdn1[1];
}
daysum = 0;
for daycnt = 0 to dayPeriod-1{
daysum = daysum + DayClose(daycnt);
}
dayma = daysum/dayPeriod;
If DayClose(dayPeriod) != 0 Then {
daySumSqrt = 0;
For dayCounter = 0 To dayPeriod - 1 {
daySumSqrt = daySumSqrt + (DayClose(dayCounter) - dayma) * (DayClose(dayCounter) - dayma);
}
dayStdv = SquareRoot(daySumSqrt / dayPeriod);
}
Else
dayStdv = 0;
dayBBup = dayma + (dayDv * dayStdv);
dayBBdn = dayma - (dayDv * dayStdv);
if date <> date[1] then {
Dindex = dindex + 1;
PreUpAvg = UpAvg[1];
preDownAvg = DownAvg[1];
}
If CurrentBar > 1 AND Period > 0 Then {
UpAmt = dayClose(0)-dayClose(1);
If UpAmt >= 0 Then
DownAmt = 0;
Else {
DownAmt = -UpAmt;
UpAmt = 0;
}
if Dindex <=1 Then {
UpAvg = 1;
DownAvg = 1;
}
Else {
UpAvg = (PreUpAvg * (Period - 1) + UpAmt) / Period;
DownAvg = (preDownAvg * (Period - 1) + DownAmt) / Period;
}
}
If UpAvg + DownAvg <> 0 Then
RSIv = 100 * UpAvg / (UpAvg + DownAvg);
Else
RSIv = 0;
sumV1 = 0;
sumV2 = 0;
for count = 0 to P2{
if count < P1 Then
sumV1 = sumV1+CloseD(count);
if count < P2 Then
sumV2 = sumV2+CloseD(count);
}
maV1 = sumV1 / P1;
maV2 = sumV2 / P2;
if dayBBup2 > 0 and
dayBBup1 < dayBBdn*1.05 and dayBBup2 < dayBBdn2*1.05 and
max(mav1,mav2) <= min(mav1,mav2)*1.05 and
dayhigh(2) < daylow(2)*1.05 and dayhigh(1) <= daylow(1)*1.05 and
dayBBup2 > DayClose(2) and DayClose(2) > dayBBdn2 and
dayBBup1 > DayClose(1) and DayClose(1) > dayBBdn1 and
DayVolume > DayVolume(1)*(1+Bper/100) and
crossup(c,dayBBup1) and dayBBup1 > dayBBup2 Then
buy();
if CrossDown(RSIV,70) Then
exitlong();
즐거운 하루되세요
> 엠제이 님이 쓴 글입니다.
> 제목 : 시스템식 부탁드립니다.
> 3분봉에서 일봉의 볼린져밴드(실시간)를 이용하고 싶습니다.
매수SetUp
1. 최근 전일/전전일의 볼린져밴드(12,2)의 폭이 5% 이내이어야 함
2. 일봉의 5이평과 20이평이 5%내에 수렴되어 있어야 함
3. 전일/전전일의 주가 등락폭이 5%이내여야 함
4. 전일/전전일의 종가가 일봉상의 전일/전전일 볼린져밴드 내에 존재해야 함
매수
전일 거래량의 200%를 넘어서면서 일봉의 볼린져밴드 상단이 전일보다 증가하며
현재 3분봉의 종가가 일봉의 볼린져밴드를 돌파하면 매수
매도
일봉의 RSI(14)가 과열권 이탈시 매수청산
다음글
이전글