커뮤니티
산식검토
2013-09-05 11:08:03
155
글번호 67211
29726번의 신호의 연기에 대한 답변을 이용해서
아래와 같이 작성하였습니다
그런데 파란선에서 발생해야할 신호가 엉뚱한 곳에서 신호가 발생합니다
검토 부탁드립니다
(그림을 올린후 확인이 않됩니다 ....)
---원 안---
B1=0;
Count01=CountIF((Side==-10 or Side==-07 or Side==-05) ,D2UDi4-D2UDi3+1);
Count02=CountIF(D12UPup<50 ,D2UDi4-D2UDi3);
If Count01==0 and D2UDi4-D2UDi3>=3 and Count02>0
and D2UDi4[1]!=D2UDi4[0] Then //
B1=10;
plot1(B1);
plot2(Side);
---수 정---
B1=0;
Count01=CountIF((Side==-10 or Side==-07 or Side==-05) ,D2UDi4-D2UDi3+1);
Count02=CountIF(D12UPup<50 ,D2UDi4-D2UDi3);
var : Delay1(False);
If Count01==0 and D2UDi4-D2UDi3>=3 and Count02>0
and D2UDi4[1]!=D2UDi4[0] Then {//
Ent1i=index;
if (SK05>SD05) Then {//and (SK05[1]<SK05[0] and SK05[0]>SD05[0])
Delay1=False;
B1=10;
}
If (SK05<SD05) Then {
Delay1=True;
}
}
If Delay1==True and CrossUp(Sk05,SD05) and Index<Ent1i+15 Then{
B1=15;
Delay1=False;
}
plot1(B1);
plot2(Side);
- 1. 신호연기질문.xlsx (0.03 MB)
- 2. 이미지1_201309051106.jpg (0.23 MB)
답변 1
예스스탁 예스스탁 답변
2013-09-05 15:20:33
안녕하세요
예스스탁입니다.
수식안에 변수에 값이 할당되고 초기화 되는 부분이 없습니다.
식을 조금 간단히 작성해 봤습니다.
Ent1i 값이 날짜가 변경이 되면 -1로 초기화 되고
if조건만족하고 동시에 SK05 > SD05 조건이 만족하면 -1를 유지하고
만약 SK05 < SD05이면 해당봉의 봉번호가 저장이 됩니다.
Ent1i에 -1이 아닌 값(봉번호)가 저장이 되면
해당 봉번호이후 15봉 안에 SK05 > SD05 조건이 성립되면 b1에 값이 15가 저장이 되고
Ent1i은 -1로 됩니다.
if date != date[1] then
Ent1i = -1;
B1=0;
Count01=CountIF((Side==-10 or Side==-07 or Side==-05) ,D2UDi4-D2UDi3+1);
Count02=CountIF(D12UPup<50 ,D2UDi4-D2UDi3);
If Count01==0 and D2UDi4-D2UDi3>=3 and Count02>0 and D2UDi4[1]!=D2UDi4[0] Then{
if SK05 > SD05 Then{
B1 = 10;
Ent1i = -1;
}
else{
Ent1i = index;
}
}
if Ent1i > -1 and index >= Ent1i and index < Ent1i+15 and SK05 > SD05 Then{
B1 = 15;
Ent1i = -1;
}
plot1(B1);
시스템식안이시면 포지션함수등이 있으므로 아래와 같이 초기화 하면 됩니다.
#당일 첫봉이거나 매수진입하면 -1로 초기화
if date != date[1] or MarketPosition == 1 then
Ent1i = -1;
B1=0;
Count01=CountIF((Side==-10 or Side==-07 or Side==-05) ,D2UDi4-D2UDi3+1);
Count02=CountIF(D12UPup<50 ,D2UDi4-D2UDi3);
If Count01==0 and D2UDi4-D2UDi3>=3 and Count02>0 and D2UDi4[1]!=D2UDi4[0] Then{
if SK05 > SD05 Then{
buy();
Ent1i = -1;
}
else{
Ent1i = index;
}
}
if Ent1i > -1 and index >= Ent1i and index < Ent1i+15 and SK05 > SD05 Then
buy();
즐거운 하루되세요
> 티끌 님이 쓴 글입니다.
> 제목 : 산식검토
> 29726번의 신호의 연기에 대한 답변을 이용해서
아래와 같이 작성하였습니다
그런데 파란선에서 발생해야할 신호가 엉뚱한 곳에서 신호가 발생합니다
검토 부탁드립니다
(그림을 올린후 확인이 않됩니다 ....)
---원 안---
B1=0;
Count01=CountIF((Side==-10 or Side==-07 or Side==-05) ,D2UDi4-D2UDi3+1);
Count02=CountIF(D12UPup<50 ,D2UDi4-D2UDi3);
If Count01==0 and D2UDi4-D2UDi3>=3 and Count02>0
and D2UDi4[1]!=D2UDi4[0] Then //
B1=10;
plot1(B1);
plot2(Side);
---수 정---
B1=0;
Count01=CountIF((Side==-10 or Side==-07 or Side==-05) ,D2UDi4-D2UDi3+1);
Count02=CountIF(D12UPup<50 ,D2UDi4-D2UDi3);
var : Delay1(False);
If Count01==0 and D2UDi4-D2UDi3>=3 and Count02>0
and D2UDi4[1]!=D2UDi4[0] Then {//
Ent1i=index;
if (SK05>SD05) Then {//and (SK05[1]<SK05[0] and SK05[0]>SD05[0])
Delay1=False;
B1=10;
}
If (SK05<SD05) Then {
Delay1=True;
}
}
If Delay1==True and CrossUp(Sk05,SD05) and Index<Ent1i+15 Then{
B1=15;
Delay1=False;
}
plot1(B1);
plot2(Side);