커뮤니티
문의드립니다..
2015-08-15 14:22:13
170
글번호 89507
먼저 감사드립니다.
첫번째로는,
10분, 5분, 1분차트에서 5이평, 20이평선이 모두 골든크로스일어날때 매수하고, 3개분차트중 2개가 데드클로스가 나면 청산
10분, 5분, 1분차트에서 5이평, 20이평선이 모두 데드크로스일어날때 매도하고, 3개분차트중 2개가 골드클로스가 나면 청산
이고 두번째는 여기에 진입은 3개분차트중 2개골든클로스시에 먼저 1개 진입하고, 나머지는 3개다 골든크로스일때 진입, 청산은 3개분차트중 1개가 데드클로스나면 청산, 나머지 1개는 3개분차트중 2개가 데드크로스나면 청산
반대로도 마찬가지 개념입니다.
더운 여름철에 초보자의 문의를 받아주셔서 다시한번 감사드립니다.
답변 1
예스스탁 예스스탁 답변
2015-08-17 16:50:14
안녕하세요
예스스탁입니다.
문의하신 내용 참조데이터를 이용하셔야 합니다.
1분봉 차트에 5분데이터와 10분데이터를 참조데이터로 추가하시고 아래식 적용하시면 됩니다.
참조데이터는 차트왼쪽 상단의 종목선택버튼(돋보기아이콘) 중 오른쪽 버튼을 클릭하시면
선택해서 차트에 추가할수 있습니다.
차트 기본종목과 같은종목으로 주기를 다르게 해서 추가가 가능합니다.
1.
input : p1(5),P2(20);
var : mav11(0,data1),mav12(0,data1);
var : mav21(0,data2),mav22(0,data2);
var : mav31(0,data3),mav32(0,data3);
var : Bcond(false,data1),Scond(false,data1);
var : up1(0,data1),up2(0,data2),up3(0,data3);
var : dn1(0,data1),dn2(0,data2),dn3(0,data3);
mav11 = data1(ma(C,P1));
mav12 = data1(ma(C,P2));
mav21 = data2(ma(C,P1));
mav22 = data2(ma(C,P2));
mav31 = data3(ma(C,P1));
mav32 = data3(ma(C,P2));
if mav11 > mav12 Then
up1 = 1;
Else
up1 = 0;
if mav11 < mav12 Then
dn1 = 1;
Else
dn1 = 0;
if mav21 > mav22 Then
up2 = 1;
Else
up2 = 0;
if mav21 < mav22 Then
dn2 = 1;
Else
dn2 = 0;
if mav31 > mav32 Then
up3 = 1;
Else
up3 = 0;
if mav31 < mav32 Then
dn3 = 1;
Else
dn3 = 0;
Bcond = up1 == 1 and up2 == 1 and up3 == 1;
Scond = dn1 == 1 and dn2 == 1 and dn3 == 1;
if Bcond == true and Bcond[1] == false Then
buy();
if MarketPosition == 1 and dn1+dn2+dn3 >= 2 Then
exitlong();
if Scond == true and Scond[1] == false Then
sell();
if MarketPosition == -1 and up1+up2+up3 >= 2 Then
ExitShort();
2.
input : p1(5),P2(20);
var : mav11(0,data1),mav12(0,data1);
var : mav21(0,data2),mav22(0,data2);
var : mav31(0,data3),mav32(0,data3);
var : Bcond1(false,data1),Scond1(false,data1);
var : up1(0,data1),up2(0,data2),up3(0,data3);
var : dn1(0,data1),dn2(0,data2),dn3(0,data3);
mav11 = data1(ma(C,P1));
mav12 = data1(ma(C,P2));
mav21 = data2(ma(C,P1));
mav22 = data2(ma(C,P2));
mav31 = data3(ma(C,P1));
mav32 = data3(ma(C,P2));
if mav11 > mav12 Then
up1 = 1;
Else
up1 = 0;
if mav11 < mav12 Then
dn1 = 1;
Else
dn1 = 0;
if mav21 > mav22 Then
up2 = 1;
Else
up2 = 0;
if mav21 < mav22 Then
dn2 = 1;
Else
dn2 = 0;
if mav31 > mav32 Then
up3 = 1;
Else
up3 = 0;
if mav31 < mav32 Then
dn3 = 1;
Else
dn3 = 0;
Bcond1 = up1+up2+up3 >= 2;
Scond1 = dn1+dn2+dn3 >= 2;
if MarketPosition <= 0 and Bcond1 == true and Bcond1[1] == false Then{
if up1+up2+up3 == 2 Then
buy("b1",OnClose,def,1);
if up1+up2+up3 == 3 Then
buy("b11",OnClose,def,2);
}
if MarketPosition == 1 Then{
if MaxEntries == 1 and MaxContracts == 1 and up1+up2+up3 == 3 Then
buy("b2",OnClose,def,1);
if CurrentContracts == MaxContracts and Dn1+dn2+dn3 == 1 Then
exitlong("bx1",OnClose,def,"",1,1);
if Dn1+dn2+dn3 >= 2 Then
exitlong("bx2",OnClose,def,"",1,1);
}
if MarketPosition >= 0 and Scond1 == true and Scond1[1] == false Then{
if dn1+dn2+dn3 == 2 Then
sell("s1",OnClose,def,1);
if dn1+dn2+dn3 == 3 Then
sell("s11",OnClose,def,2);
}
if MarketPosition == 1 Then{
if MaxEntries == 1 and MaxContracts == 1 and dn1+dn2+dn3 == 3 Then
sell("s2",OnClose,def,1);
if CurrentContracts == MaxContracts and up1+up2+up3 == 1 Then
ExitShort("sx1",OnClose,def,"",1,1);
if up1+up2+up3 >= 2 Then
ExitShort("sx2",OnClose,def,"",1,1);
}
즐거운 하루되세요
> 카르마다 님이 쓴 글입니다.
> 제목 : 문의드립니다..
> 먼저 감사드립니다.
첫번째로는,
10분, 5분, 1분차트에서 5이평, 20이평선이 모두 골든크로스일어날때 매수하고, 3개분차트중 2개가 데드클로스가 나면 청산
10분, 5분, 1분차트에서 5이평, 20이평선이 모두 데드크로스일어날때 매도하고, 3개분차트중 2개가 골드클로스가 나면 청산
이고 두번째는 여기에 진입은 3개분차트중 2개골든클로스시에 먼저 1개 진입하고, 나머지는 3개다 골든크로스일때 진입, 청산은 3개분차트중 1개가 데드클로스나면 청산, 나머지 1개는 3개분차트중 2개가 데드크로스나면 청산
반대로도 마찬가지 개념입니다.
더운 여름철에 초보자의 문의를 받아주셔서 다시한번 감사드립니다.
다음글
이전글