커뮤니티

산식수정요망

프로필 이미지
티끌
2011-05-06 00:38:07
613
글번호 38333
답변완료
작성해주신 산식으로 작업하다 보니..... if part01 != 0 and part01[1] == 0 Then{ var50합계=0; var51합계=0; idx = 0;#봉갯수 } 이렇게 정의된 부분이 있어서 part01 != 0일때의 var50,var51합계가 0으로 나타나더군요 제가 만든 지표의 속성상 통상 이부분에서 var51,52의 신호가 많이 떨어지는데... 애초 아래와 같이 index를 정의 한 이유는 if Padong[2]==Padong[1] and Padong[1]<Padong[0] and Padong[1]==-5 Then PadongI01=index[1]; if Padong[2]>Padong[1] and Padong[1]==Padong[0] and Padong[1]==-5 Then PadongI02=index[1]; if CrossUp(Padong,0) Then PadongI03=index; if Crossdown(Padong,0) Then PadongI04=index; 제가 원하는 구간을 인덱스만 가지고 통제하기 위해서였읍니다만 능력부족으로 ... part01 != 0일때부터 합계가 시작되게 하려면 어떻게 해야 하는지요? 부탁드립니다 var : TX20(0),TX40(0),TX60(0),TX80(0),TX100(0); var : TR20(0),TR40(0),TR60(0),TR80(0),TR100(0); TX40 = ema(TRIX(20),18); TR20 = TRIX(20); TX40 = ema(TRIX(40),32); TR40 = TRIX(40); TX60 = ema(TRIX(60),48); TR60 = TRIX(60); TX80 = ema(TRIX(80),64); TR80 = TRIX(80); TX100 = ema(TRIX(100),80); TR100= TRIX(100); var : Padong(0),Part01(0); Padong=iff(TR20>TX20,1,-1)+iff(TR40>TX40,1,-1)+iff(TR60>TX60,1,-1) +iff(TR80>TX80,1,-1)+iff(TR100>TX100,1,-1); var: PadongI01(0),PadongI02(0),PadongI03(0),PadongI04(0),PadongI05(0),PadongI06(0),PadongI07(0); if Padong[2]==Padong[1] and Padong[1]<Padong[0] and Padong[1]==-5 Then PadongI01=index[1]; if Padong[2]>Padong[1] and Padong[1]==Padong[0] and Padong[1]==-5 Then PadongI02=index[1]; if CrossUp(Padong,0) Then PadongI03=index; if Crossdown(Padong,0) Then PadongI04=index; ####################### # 구간신호 # ####################### //var : part01(0); var52=0; var: 상황01(False); If Padong>Padong[1] and Padong[1]==-5 Then { 상황01=true; part01=5; } If CrossUp(Padong,0) or (상황01==True and Padong<Padong[1] and Padong==-5) Then { // 상황01= False; part01=0; } var50=iff(part01==5 and C>C[1] and C>ma(c,5),1,0); var51=iff(part01==5 and C>O and C>ma(c,5),1,0); If part01[1]==5 and part01==0 and Padong[1]<0 and Padong>0 Then var52=10; var:var50합계(0),var51합계(0),idx(0); if part01 != 0 and part01[1] == 0 Then{ var50합계=0; var51합계=0; idx = 0;#봉갯수 } if part01 > 0 Then{ idx = idx+1; var50합계 = var50합계+var50; var51합계 = var51합계+var51; } Plot10(var50합계/idx); Plot11(var51합계/idx);
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2011-05-06 13:48:47

안녕하세요 예스스탁입니다. 현재 식이 part01 != 0일때부터 합계가 시작됩니다. 현재 작성되어 있는 식은 part01이 전봉에 0이었다가 0이 아닌 봉에 각 값을 초기화하고 part01이 0이 아닐때(part01 != 0) 각 값을 누적합니다. 초기화부분을 아래와 같이 변경하시면 0일때는 각 값이 모두 0이고 0이 아니면 값을 누적합니다. if part01 ==0 Then{ var50합계=0; var51합계=0; idx = 0;#봉갯수 } if part01 != 0 Then{ idx = idx+1; var50합계 = var50합계+var50; var51합계 = var51합계+var51; } Plot10(part01); 즐거운 하루되세요 > 티끌 님이 쓴 글입니다. > 제목 : 산식수정요망 > 작성해주신 산식으로 작업하다 보니..... if part01 != 0 and part01[1] == 0 Then{ var50합계=0; var51합계=0; idx = 0;#봉갯수 } 이렇게 정의된 부분이 있어서 part01 != 0일때의 var50,var51합계가 0으로 나타나더군요 제가 만든 지표의 속성상 통상 이부분에서 var51,52의 신호가 많이 떨어지는데... 애초 아래와 같이 index를 정의 한 이유는 if Padong[2]==Padong[1] and Padong[1]<Padong[0] and Padong[1]==-5 Then PadongI01=index[1]; if Padong[2]>Padong[1] and Padong[1]==Padong[0] and Padong[1]==-5 Then PadongI02=index[1]; if CrossUp(Padong,0) Then PadongI03=index; if Crossdown(Padong,0) Then PadongI04=index; 제가 원하는 구간을 인덱스만 가지고 통제하기 위해서였읍니다만 능력부족으로 ... part01 != 0일때부터 합계가 시작되게 하려면 어떻게 해야 하는지요? 부탁드립니다 var : TX20(0),TX40(0),TX60(0),TX80(0),TX100(0); var : TR20(0),TR40(0),TR60(0),TR80(0),TR100(0); TX40 = ema(TRIX(20),18); TR20 = TRIX(20); TX40 = ema(TRIX(40),32); TR40 = TRIX(40); TX60 = ema(TRIX(60),48); TR60 = TRIX(60); TX80 = ema(TRIX(80),64); TR80 = TRIX(80); TX100 = ema(TRIX(100),80); TR100= TRIX(100); var : Padong(0),Part01(0); Padong=iff(TR20>TX20,1,-1)+iff(TR40>TX40,1,-1)+iff(TR60>TX60,1,-1) +iff(TR80>TX80,1,-1)+iff(TR100>TX100,1,-1); var: PadongI01(0),PadongI02(0),PadongI03(0),PadongI04(0),PadongI05(0),PadongI06(0),PadongI07(0); if Padong[2]==Padong[1] and Padong[1]<Padong[0] and Padong[1]==-5 Then PadongI01=index[1]; if Padong[2]>Padong[1] and Padong[1]==Padong[0] and Padong[1]==-5 Then PadongI02=index[1]; if CrossUp(Padong,0) Then PadongI03=index; if Crossdown(Padong,0) Then PadongI04=index; ####################### # 구간신호 # ####################### //var : part01(0); var52=0; var: 상황01(False); If Padong>Padong[1] and Padong[1]==-5 Then { 상황01=true; part01=5; } If CrossUp(Padong,0) or (상황01==True and Padong<Padong[1] and Padong==-5) Then { // 상황01= False; part01=0; } var50=iff(part01==5 and C>C[1] and C>ma(c,5),1,0); var51=iff(part01==5 and C>O and C>ma(c,5),1,0); If part01[1]==5 and part01==0 and Padong[1]<0 and Padong>0 Then var52=10; var:var50합계(0),var51합계(0),idx(0); if part01 != 0 and part01[1] == 0 Then{ var50합계=0; var51합계=0; idx = 0;#봉갯수 } if part01 > 0 Then{ idx = idx+1; var50합계 = var50합계+var50; var51합계 = var51합계+var51; } Plot10(var50합계/idx); Plot11(var51합계/idx);