커뮤니티

시스템식 문의드립니다.

프로필 이미지
새마귀
2012-11-29 11:36:56
384
글번호 56919
답변완료
안녕하세요? 시스템식 문의드립니다. 저는 일봉과 5분봉 두가지를 적용하여 작성하고자 합니다. 실행시점은 5분봉 완성시점으로 하고 있습니다 따라서 아래와 같이 질의합니다 1. 일봉기준 볼린져밴드(20,2) 상한선이 3일연속 상승추세이고 5분봉기준 볼린져밴드(20,2) 상한선(실행 시점)이 3봉연속 상승추세일때 buy 진입 2. 일봉기준 5일 이동평균선이 3일연속 상승추세이고 5분봉기준 5일 이동평균선이 3봉연속 상승추세일때 buy 진입 3. 일봉기준 3일전 볼린져밴드(20,2) 하한선이 3일전 종가 보다 클때 buy진입 제외 4. 1~3봉전 종가(5분봉 실행시점)가 daycloes(1) 일때 buy 진입 금지 5. 5분봉(실행시점) 20일 이동평균선(실행시점)을 상향 돌파할때 Exitlong 감사합니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2012-11-29 18:46:35

안녕하세요 예스스탁입니다. # 분봉에서 일봉 볼린져밴드 계산 시작 input : dayPeriod(20),dayDv(2),P1(5),P2(20); var : daycnt(0),dayCounter(0),cnt(0); var : daysum1(0),dayma1(0),daySumSqrt1(0),dayStdv1(0),dayBBup1(0),dayBBdn1(0); var : daysum2(0),dayma2(0),daySumSqrt2(0),dayStdv2(0),dayBBup2(0),dayBBdn2(0); var : daysum3(0),dayma3(0),daySumSqrt3(0),dayStdv3(0),dayBBup3(0),dayBBdn3(0); var : daysum4(0),dayma4(0),daySumSqrt4(0),dayStdv4(0),dayBBup4(0),dayBBdn4(0); var : sum11(0),sum21(0),mav11(0),mav21(0); var : sum12(0),sum22(0),mav12(0),mav22(0); var : sum13(0),sum23(0),mav13(0),mav23(0); var : sum14(0),sum24(0),mav14(0),mav24(0); #일봉 볼밴 계산 daysum1 = 0; daysum2 = 0; daysum3 = 0; daysum4 = 0; for daycnt = 0 to dayPeriod-1{ daysum1 = daysum1 + DayClose(daycnt); daysum2 = daysum2 + DayClose(daycnt+1); daysum3 = daysum3 + DayClose(daycnt+2); daysum4 = daysum4 + DayClose(daycnt+3); } dayma1 = daysum1/dayPeriod; dayma2 = daysum2/dayPeriod; dayma3 = daysum3/dayPeriod; dayma4 = daysum4/dayPeriod; daySumSqrt1 = 0; daySumSqrt2 = 0; daySumSqrt3 = 0; daySumSqrt4 = 0; For dayCounter = 0 To dayPeriod - 1 { daySumSqrt1 = daySumSqrt1 + (DayClose(dayCounter) - dayma1) * (DayClose(dayCounter) - dayma1); daySumSqrt2 = daySumSqrt2 + (DayClose(dayCounter) - dayma2) * (DayClose(dayCounter) - dayma2); daySumSqrt3 = daySumSqrt3 + (DayClose(dayCounter) - dayma3) * (DayClose(dayCounter) - dayma3); daySumSqrt4 = daySumSqrt4 + (DayClose(dayCounter) - dayma4) * (DayClose(dayCounter) - dayma4); } dayStdv1 = SquareRoot(daySumSqrt1 / dayPeriod); dayStdv2 = SquareRoot(daySumSqrt2 / dayPeriod); dayStdv3 = SquareRoot(daySumSqrt3 / dayPeriod); dayStdv4 = SquareRoot(daySumSqrt4 / dayPeriod); #당일 일봉 볼밴 dayBBup1 = dayma1 + (dayDv * dayStdv1); dayBBdn1 = dayma1 - (dayDv * dayStdv1); #1일전 일봉 볼밴 dayBBup2 = dayma2 + (dayDv * dayStdv2); dayBBdn2 = dayma2 - (dayDv * dayStdv2); #2일전 일봉 볼밴 dayBBup3 = dayma3 + (dayDv * dayStdv3); dayBBdn3 = dayma3 - (dayDv * dayStdv3); #3일전 일봉 볼밴 dayBBup4 = dayma4 + (dayDv * dayStdv4); dayBBdn4 = dayma4 - (dayDv * dayStdv4); #일봉 5이평계산 sum11 = 0; sum12 = 0; sum13 = 0; sum14 = 0; for cnt = 0 to P1-1{ sum11 = sum11+DayClose(cnt); sum12 = sum12+DayClose(cnt+1); sum13 = sum13+DayClose(cnt+2); sum14 = sum14+DayClose(cnt+3); } mav11 = sum11/P1;#당일 일봉 5이평 mav12 = sum12/P1;#1일전 일봉 5이평 mav13 = sum13/P1;#2일전 일봉 5이평 mav14 = sum14/P1;#3일전 일봉 5이평 var1 = BollBandUp(20,2); if DayClose(3) > dayBBdn4 and C[1] != DayClose(1) and C[2] != DayClose(1) and C[3] != DayClose(1) and dayBBup1 > dayBBup2 and dayBBup2 > dayBBup3 and dayBBup3 > dayBBup4 and countif(var1 > var1[1],3) == 3 Then buy(); if DayClose(3) > dayBBdn4 and C[1] != DayClose(1) and C[2] != DayClose(1) and C[3] != DayClose(1) and mav11 > mav12 and mav12 > mav13 and mav13 > mav14 and countif(var1 > var1[1],3) == 3 Then buy(); if crossup(c,dayma1) Then exitlong(); 즐거운 하루되세요 > 새마귀 님이 쓴 글입니다. > 제목 : 시스템식 문의드립니다. > 안녕하세요? 시스템식 문의드립니다. 저는 일봉과 5분봉 두가지를 적용하여 작성하고자 합니다. 실행시점은 5분봉 완성시점으로 하고 있습니다 따라서 아래와 같이 질의합니다 1. 일봉기준 볼린져밴드(20,2) 상한선이 3일연속 상승추세이고 5분봉기준 볼린져밴드(20,2) 상한선(실행 시점)이 3봉연속 상승추세일때 buy 진입 2. 일봉기준 5일 이동평균선이 3일연속 상승추세이고 5분봉기준 5일 이동평균선이 3봉연속 상승추세일때 buy 진입 3. 일봉기준 3일전 볼린져밴드(20,2) 하한선이 3일전 종가 보다 클때 buy진입 제외 4. 1~3봉전 종가(5분봉 실행시점)가 daycloes(1) 일때 buy 진입 금지 5. 5분봉(실행시점) 20일 이동평균선(실행시점)을 상향 돌파할때 Exitlong 감사합니다.