커뮤니티

수식문의 드립니다(갭보정)

프로필 이미지
paranstr
2020-08-25 12:25:01
1091
글번호 141756
답변완료
Inputs: FastLen(5), MedLen(20), SlowLen(60); Variables: FastAvg(0), MedAvg(0), SlowAvg(0); FastAvg = MA(Close, FastLen); MedAvg = MA(Close, MedLen); SlowAvg = MA(Close, SlowLen); If (FastAvg[1] < MedAvg[1] OR MedAvg[1] < SlowAvg[1]) AND (FastAvg > MedAvg AND MedAvg > SlowAvg) Then Buy ("MAC3_LE"); If (FastAvg[1] > MedAvg[1] OR MedAvg[1] > SlowAvg[1]) AND (FastAvg < MedAvg AND MedAvg < SlowAvg) Then Sell ("MAC3_SE"); 평범한 MA3 정배열 역배열 함수입니다 이식을 갭보정하고 싶습니다 참고로 3분봉에서 사용하려 합니다 추가로 Macd 베이스라인도 갭보정 부탁드립니다
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2020-08-25 18:54:23

안녕하세요 예스스탁입니다. 1 수식계산상 갭보정은 차트설정의 갭보정과 다릅니다. 차트설정의 갭보정은 당일데이타를 고정한 상태에서 과거로 가면서 보정하지만 랭귀지로는 해당 부분이 구현되지 않습니다. 수식상 갭보정은 과거에서 현재로 오면서 누적된 갭만큼 값을 보정해서 사용하기에 현재봉의 값과 괴리가 클수 있습니다. 이용에 참고하시기 바랍니다. 1-1 Inputs: FastLen(5), MedLen(20), SlowLen(60); Variables: FastAvg(0), MedAvg(0), SlowAvg(0); var : gap(0),sumgap(0),GC(0); if date!=date[1] THen { // 날짜가 변경되는 봉에서(분봉에서 첫번째 봉) gap = Open-Close[1]; // 일간갭 sumGap = sumGap+gap; // 일간갭 누적 } GC = C - sumGap; // 갭보정 종가 FastAvg = MA(GC, FastLen); MedAvg = MA(GC, MedLen); SlowAvg = MA(GC, SlowLen); If (FastAvg[1] < MedAvg[1] OR MedAvg[1] < SlowAvg[1]) AND (FastAvg > MedAvg AND MedAvg > SlowAvg) Then Buy ("MAC3_LE"); If (FastAvg[1] > MedAvg[1] OR MedAvg[1] > SlowAvg[1]) AND (FastAvg < MedAvg AND MedAvg < SlowAvg) Then Sell ("MAC3_SE"); 1-2 갭보정 지표 Inputs: FastLen(5), MedLen(20), SlowLen(60); Variables: FastAvg(0), MedAvg(0), SlowAvg(0); var : gap(0),sumgap(0),GC(0); if date!=date[1] THen { // 날짜가 변경되는 봉에서(분봉에서 첫번째 봉) gap = Open-Close[1]; // 일간갭 sumGap = sumGap+gap; // 일간갭 누적 } GC = C - sumGap; // 갭보정 종가 FastAvg = MA(GC, FastLen); MedAvg = MA(GC, MedLen); SlowAvg = MA(GC, SlowLen); Plot1(FastAvg); Plot2(MedAvg); Plot3(SlowAvg); 3 input : sp(12), lp(26), period(9); var : sumGap(0), gap(0), GC(0); var : MacdVal(0), MacdSig(0),MACDOSC(0); if date!=date[1] then { gap = Open-Close[1]; sumGap = sumGap+gap; } GC = C - sumGap; MacdVal = ema(GC,sP)-ema(GC,lP); //macd 지표 MacdSig = ema(MacdVal, Period); //macd signal 지표 MACDOSC = MacdVal-MacdSig;#MACD 오실레이터 plot1(MACDval, "Macd"); plot2(MACDSig, "Macd시그널"); plot3(MACDOSC, "Macd오실레이터"); plotBaseline1(0, "기준선1"); 즐거운 하루되세요 > paranstr 님이 쓴 글입니다. > 제목 : 수식문의 드립니다(갭보정) > Inputs: FastLen(5), MedLen(20), SlowLen(60); Variables: FastAvg(0), MedAvg(0), SlowAvg(0); FastAvg = MA(Close, FastLen); MedAvg = MA(Close, MedLen); SlowAvg = MA(Close, SlowLen); If (FastAvg[1] < MedAvg[1] OR MedAvg[1] < SlowAvg[1]) AND (FastAvg > MedAvg AND MedAvg > SlowAvg) Then Buy ("MAC3_LE"); If (FastAvg[1] > MedAvg[1] OR MedAvg[1] > SlowAvg[1]) AND (FastAvg < MedAvg AND MedAvg < SlowAvg) Then Sell ("MAC3_SE"); 평범한 MA3 정배열 역배열 함수입니다 이식을 갭보정하고 싶습니다 참고로 3분봉에서 사용하려 합니다 추가로 Macd 베이스라인도 갭보정 부탁드립니다