커뮤니티

산식 검토요

프로필 이미지
티끌
2012-09-18 01:44:21
417
글번호 54805
답변완료

첨부 이미지

그림을 보시면 신호식과 시스템식을 구현한 것이 보일겁니다 분명히 신호식으로 진입식과 청산식을 구현했는데 시스템식에서 진입식은 정확히 작동하고 청산식은 이상하게 작동이 않됩니다 청산이 하도 않돼서 이리저리 만져본게 청산1식과 청산2식입니다 어디가 잘못된건지 분석좀 부탁드립니다 #신호식 Array : SDv[5](0),SDi[5](0),SDm[5](0); Array : SUv[5](0),SUi[5](0),SUm[5](0); var:Id1(0),Id2(0),Iu1(0),Iu2(0); if SD00[2]<SD00[1] and SD00[1]>SD00[0] Then{ #^ SDv[0] = SD00[1]; SDi[0] = Index[1]; SDm[0] = Ma05[1]; for j = 1 to 4 { SDv[J] = SDv[J-1][1]; SDi[J] = SDi[J-1][1]; SDm[J] = SDm[J-1][1]; } } if SD00[2]>SD00[1] and SD00[1]<SD00[0] Then{ #v SUv[0] = SD00[1]; SUi[0] = Index[1]; SUm[0] = Ma05[1]; for j = 1 to 4 { SUv[J] = SUv[J-1][1]; SUi[J] = SUi[J-1][1]; SUm[J] = SUm[J-1][1]; } } If SUi[1]<SDi[1] and SDi[1]<SUi[0] and SUi[0]<SDi[0] Then { Id1=SDi[0]-SUi[0]; Id2=SUi[0]-SDi[1]; } If SDi[1]<SUi[1] and SUi[1]<SDi[0] and SDi[0]<SUi[0] Then { Iu1=SUi[0]-SDi[0]; Iu2=SDi[0]-SUi[1]; } var12=0; If iD1[1]>(SDi[0]-SDi[1]) and (SDv[1]<SDv[0]) and SDv[0]-SDv[1]<=16 and SUV[1]<50 and SDi[0]-SDi[1]<=15 Then var12=-1; ₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩ #시스템식의 청산부분 -상동- 청산1식 If marketposition == 1 and iD1[1]>(SDi[0]-SDi[1]) and (SDv[1]<SDv[0]) and SDv[0]-SDv[1]<=16 and SUV[1]<50 and SDi[0]-SDi[1]<=15 Then ExitLong("청산8",AtMarket); 청산2식 If iD1[1]>(SDi[0]-SDi[1]) and (SDv[1]<SDv[0]) and SDv[0]-SDv[1]<=16 and SUV[1]<50 and SDi[0]-SDi[1]<=15 Then var2=-1; If marketposition == 1 and var2==-1 Then ExitLong("청산8",AtMarket);//
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2012-09-18 13:33:31

안녕하세요 예스스탁입니다. 올려주신 식에 특별한 문제가 없어 보입니다. if문에 사용된 변수값들이 어떤값들인지 몰라 조건만족여부가 파악이 안됩니다. 메세지로그를 이용해서서 아래 조건이 true값을 발생하는지 확인하시고 iD1[1]>(SDi[0]-SDi[1]) and (SDv[1]<SDv[0]) and SDv[0]-SDv[1]<=16 and SUV[1]<50 and SDi[0]-SDi[1]<=15 조건만족시 -1을 저장받는 변수와 청산식의 if문에서 사용되는 변수가 같은지 확인하시기 바랍니다. 아래 1번과 2번,3번 형식으로 식 적용해 본결과 모두 같은 봉에서 청산이 발생합니다. 1번 if dayindex == 0 Then buy(); var2 = 0; If CrossDown(c,ma(c,20)) Then var2=-1; If marketposition == 1 and var2==-1 Then ExitLong("청산8",AtMarket);// 2번 if dayindex == 0 Then buy(); If CrossDown(c,ma(c,20)) Then var2=-1; Else var2 = 0; If marketposition == 1 and var2==-1 Then ExitLong("청산8",AtMarket);// 3번 if dayindex == 0 Then buy(); If marketposition == 1 and CrossDown(c,ma(c,20)) Then ExitLong("청산8",AtMarket);// 즐거운 하루되세요 > 티끌 님이 쓴 글입니다. > 제목 : 산식 검토요 > 그림을 보시면 신호식과 시스템식을 구현한 것이 보일겁니다 분명히 신호식으로 진입식과 청산식을 구현했는데 시스템식에서 진입식은 정확히 작동하고 청산식은 이상하게 작동이 않됩니다 청산이 하도 않돼서 이리저리 만져본게 청산1식과 청산2식입니다 어디가 잘못된건지 분석좀 부탁드립니다 #신호식 Array : SDv[5](0),SDi[5](0),SDm[5](0); Array : SUv[5](0),SUi[5](0),SUm[5](0); var:Id1(0),Id2(0),Iu1(0),Iu2(0); if SD00[2]<SD00[1] and SD00[1]>SD00[0] Then{ #^ SDv[0] = SD00[1]; SDi[0] = Index[1]; SDm[0] = Ma05[1]; for j = 1 to 4 { SDv[J] = SDv[J-1][1]; SDi[J] = SDi[J-1][1]; SDm[J] = SDm[J-1][1]; } } if SD00[2]>SD00[1] and SD00[1]<SD00[0] Then{ #v SUv[0] = SD00[1]; SUi[0] = Index[1]; SUm[0] = Ma05[1]; for j = 1 to 4 { SUv[J] = SUv[J-1][1]; SUi[J] = SUi[J-1][1]; SUm[J] = SUm[J-1][1]; } } If SUi[1]<SDi[1] and SDi[1]<SUi[0] and SUi[0]<SDi[0] Then { Id1=SDi[0]-SUi[0]; Id2=SUi[0]-SDi[1]; } If SDi[1]<SUi[1] and SUi[1]<SDi[0] and SDi[0]<SUi[0] Then { Iu1=SUi[0]-SDi[0]; Iu2=SDi[0]-SUi[1]; } var12=0; If iD1[1]>(SDi[0]-SDi[1]) and (SDv[1]<SDv[0]) and SDv[0]-SDv[1]<=16 and SUV[1]<50 and SDi[0]-SDi[1]<=15 Then var12=-1; ₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩ #시스템식의 청산부분 -상동- 청산1식 If marketposition == 1 and iD1[1]>(SDi[0]-SDi[1]) and (SDv[1]<SDv[0]) and SDv[0]-SDv[1]<=16 and SUV[1]<50 and SDi[0]-SDi[1]<=15 Then ExitLong("청산8",AtMarket); 청산2식 If iD1[1]>(SDi[0]-SDi[1]) and (SDv[1]<SDv[0]) and SDv[0]-SDv[1]<=16 and SUV[1]<50 and SDi[0]-SDi[1]<=15 Then var2=-1; If marketposition == 1 and var2==-1 Then ExitLong("청산8",AtMarket);//