커뮤니티

문의드립니다.

프로필 이미지
신바바
2010-08-07 17:19:05
842
글번호 31415
답변완료
다음과 같은 내용으로 식을 한번 만들어 보고싶은데 자꾸 막히는 군요. 일단 주간 챠트에서 이동평균과 MACD히스토그램이 상승일때, 일간 챠트에서 이동평균과 MACD히스토그램이 상승일때 매수후 매수신호가 사라지면 매수환매 주간챠트에서 이동평균과 MACD히스토그램이 하락일때, 일간챠트에서 이동평균과 MACD히스토그램이 하락일때 매도후 매도신호가 사라지면 매도환매 이렇게 한번 만들어 보고 싶읍니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2010-08-09 11:43:56

안녕하세요 예스스탁입니다. input : P(20); Input : Period1(12), Period2(26), Period3(9); Var : Ep1(0), EP2(0), EP3(0), JISU1(0), JISU2(0), PreJISU1(0), PreJISU2(0); Var : macdVal(0), preMacdVal(0), macdSig(0),MACDOSC(0),mav1(0),MACDOSC1(0); var : cnt(0),cnt1(0),sum(0),mav(0); array : WeekC[99](0); if DayOfWeek(date) < DayOfWeek(date)[1] then{ for cnt = 1 to 98{ WeekC[cnt] = WeekC[cnt-1][1]; } PreJISU1 = JISU1[1]; PreJISU2 = JISU2[1]; PreMacdVal = macdSig[1]; mav1 = mav[1]; MACDOSC1 = MACDOSC[1]; } WeekC[0] = C; # 주간 이평계산 sum = 0; if weekC[P] > 0 Then{ for cnt1 = 0 to P-1{ sum = sum+weekC[cnt1]; } mav = sum/P; } #주간 MACD오실레이터 계산 Ep1 = 2/(Period1+1); EP2 = 2/(Period2+1); EP3 = 2/(Period3+1); JISU1 = C * Ep1 + PreJISU1 * (1-Ep1); JISU2 = C * Ep2 + PreJISU2 * (1-Ep2); macdVal = JISU1 - JISU2; macdSig = macdVal * Ep3 + PreMacdVal * (1-Ep3); macdOSC = macdval-macdsig; var1 = ma(c,P); var2 = MACD_OSC(Period1,Period2,Period3); Condition1 = mav1 > 0 and mav > mav1 and MACDOsc > MACDOSC1 and var1 > var1[1] and var2 > var2[1]; Condition2 = mav1 > 0 and mav < mav1 and MACDOsc < MACDOSC1 and var1 < var1[1] and var2 < var2[1]; if Condition1 == true Then buy(); if Condition1 == false Then exitlong(); if Condition2 == true Then sell(); if Condition2 == false Then ExitShort(); 즐거운 하루되세요 > 신바바 님이 쓴 글입니다. > 제목 : 문의드립니다. > 다음과 같은 내용으로 식을 한번 만들어 보고싶은데 자꾸 막히는 군요. 일단 주간 챠트에서 이동평균과 MACD히스토그램이 상승일때, 일간 챠트에서 이동평균과 MACD히스토그램이 상승일때 매수후 매수신호가 사라지면 매수환매 주간챠트에서 이동평균과 MACD히스토그램이 하락일때, 일간챠트에서 이동평균과 MACD히스토그램이 하락일때 매도후 매도신호가 사라지면 매도환매 이렇게 한번 만들어 보고 싶읍니다.