커뮤니티
산식수정요망
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);
다음글
이전글