커뮤니티

추세선

프로필 이미지
회원
2014-12-25 01:04:11
220
글번호 81655
답변완료
자동추세선 수식 부탁드립니다 수고하십시요
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2014-12-26 10:39:14

안녕하세요 예스스탁입니다. 보조도구에서 제공되는 자동추세선을 랭귀지로 그대로 구현하기는 어렵습니다. 현재 발생된 고점이나 저점보다 높거나 낮은 가장 가까운 고점/저점을 차트 전체에서 찾아 그리는데 수식에서는 갯수를 지정해야 하므로 아래식에서는 최근 50개의 고점/저점만 기준으로 합니다. 50개 안에 현재고점보다 큰 고점이 없으면 직전고점과 저점을 연결합니다. 이용에 참고하시기 바랍니다. input : P(3); var : cnt(0),i1(0),i2(0),TL1(0),TL2(0); Array : SHV[50](0),SHD[50](0),SHT[50](0); Array : SLV[50](0),SLD[50](0),SLT[50](0); if SwingHigh(1,h,P,P,P*2+1) != -1 Then{ SHV[0] = H[P]; SHD[0] = sdate[P]; SHT[0] = stime[P]; for cnt = 1 to 49{ SHV[cnt] = SHV[cnt-1][1]; SHD[cnt] = SHD[cnt-1][1]; SHT[cnt] = SHT[cnt-1][1]; } i1 = 1; for cnt = 1 to 49{ if SHV[cnt] > SHV[0] Then{ i1 = cnt; cnt = 1000; } } if i1 > 0 Then{ TL_Delete(TL1); TL1 = TL_New(SHD[i1],SHT[i1],SHV[i1],SHD[0],SHT[0],SHV[0]); TL_SetExtRight(TL1,true); TL_SetColor(TL1,RED); } } if SwingLow(1,L,P,P,P*2+1) != -1 Then{ SLV[0] = L[P]; SLD[0] = sdate[P]; SLT[0] = stime[P]; for cnt = 1 to 49{ SLV[cnt] = SLV[cnt-1][1]; SLD[cnt] = SLD[cnt-1][1]; SLT[cnt] = SLT[cnt-1][1]; } i2 = 1; for cnt = 1 to 49{ if SLV[cnt] < SLV[0] Then{ i2 = cnt; cnt = 1000; } } if i2 > 0 Then{ TL_Delete(TL2); TL2 = TL_New(SLD[i2],SLT[i2],SLV[i2],SLD[0],SLT[0],SLV[0]); TL_SetExtRight(TL2,true); TL_SetColor(TL2,blue); } } 즐거운 하루되세요 > YG_kj**** 님이 쓴 글입니다. > 제목 : 추세선 > 자동추세선 수식 부탁드립니다 수고하십시요