커뮤니티
질문드립니다.
2010-09-03 09:42:29
642
글번호 32081
매수 진입 이후 스탑로스나, 스탑프로피트로 청산 한 후 포지션이 없을 때 청산가격 기준 1포인트 하락시 다시 매수하는 식좀 부탁드립니다.
매도 진입 이후 스탑로스나, 스탑프로피트로 청산 한 후 포지션이 없을 때 청산가격 기준 1포인트 상승시 다시 매수하는 식도 부탁드리고요.
IsExitName("StopLoss",1) and MarketPosition(1) == 1 and marketposition == 0
and C >= entryprice+1 then
buy();
IsExitName("StopLoss",1) and MarketPosition(1) == -1 and marketposition == 0
and C <= entryprice-1 then
sell();
이렇게 적용해보았더니 청산 한 후 바로 진입해버리네요.
-------------------------------
그리고 위의 식을 적용시 전일 청산이 스탑로스나, 스탑프로피트로 된 경우 9시 시작하자마자 진입이 되는 것같습니다. 이걸 당일 기준으로만 스탑로스나, 스탑프로피트로 된 청산이 있는지를 판단하는 수식이 있으면 알려주셨으면 합니다.
답변 2
예스스탁 예스스탁 답변
2010-09-03 15:17:17
안녕하세요
예스스탁입니다.
if ExitDate(1) == sdate and MarketPosition == 0 and (IsExitName("StopProfittarget",1) or IsExitName("StopLoss",1)) Then{
if MarketPosition(1) == 1 Then
buy("b",AtStop,ExitPrice(1)-1);
if MarketPosition(1) == -1 Then
sell("s",AtLimit,ExitPrice(1)+1);
}
즐거운 하루되세요
> 화이트호올 님이 쓴 글입니다.
> 제목 : 질문드립니다.
> 매수 진입 이후 스탑로스나, 스탑프로피트로 청산 한 후 포지션이 없을 때 청산가격 기준 1포인트 하락시 다시 매수하는 식좀 부탁드립니다.
매도 진입 이후 스탑로스나, 스탑프로피트로 청산 한 후 포지션이 없을 때 청산가격 기준 1포인트 상승시 다시 매수하는 식도 부탁드리고요.
IsExitName("StopLoss",1) and MarketPosition(1) == 1 and marketposition == 0
and C >= entryprice+1 then
buy();
IsExitName("StopLoss",1) and MarketPosition(1) == -1 and marketposition == 0
and C <= entryprice-1 then
sell();
이렇게 적용해보았더니 청산 한 후 바로 진입해버리네요.
-------------------------------
그리고 위의 식을 적용시 전일 청산이 스탑로스나, 스탑프로피트로 된 경우 9시 시작하자마자 진입이 되는 것같습니다. 이걸 당일 기준으로만 스탑로스나, 스탑프로피트로 된 청산이 있는지를 판단하는 수식이 있으면 알려주셨으면 합니다.
화이트호올
2010-09-07 16:22:29
답변 감사합니다. 답변주신대로 적용해봐도 스탑로스가 나간 후에 바로 진입을 해버리네요. 1포인트의 변화가 없었는대도 말이죠. 다른 해결책은 없을가요?
간단하게 이렇게 적용해봐도 손절이나 청산 후 바로 진입하네요.
if c > dayopen Then
buy("b1",atstop,def,1);
if c < dayopen then
sell("s1",atstop,def,1);
if ExitDate(1) == sdate and MarketPosition == 0 and (IsExitName("StopProfittarget",1) or IsExitName("StopLoss",1)) Then{
if MarketPosition(1) == 1 Then
buy("b",AtStop,ExitPrice(1)-1);
if MarketPosition(1) == -1 Then
sell("s",AtLimit,ExitPrice(1)+1);
}
setstoploss(2,PointStop);
SetStopProfittarget(2,PointStop);
if date==20010308 || date==20010614 || date==20010913 || date==20011213 ||
date==20020314 || date==20020612 || date==20020912 || date==20021212 ||
date==20030313 || date==20030612 || date==20030909 || date==20031211 ||
date==20040311 || date==20040610 || date==20040909 || date==20041209 ||
date==20050310 || date==20050609 || date==20050908 || date==20051208 ||
date==20060309 || date==20060608 || date==20060914 || date==20061214 ||
date==20070308 || date==20070614 || date==20070913 || date==20071213 ||
date==20080313 || date==20080612 || date==20080911 || date==20081211 ||
date==20090312 || date==20090611 || date==20090910 || date==20091210 ||
date==20100311 || date==20100610 || date==20100909 || date==20101209 then
setstopendofday(144500);
else
setstopendofday(150000);
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 질문드립니다.
> 안녕하세요
예스스탁입니다.
if ExitDate(1) == sdate and MarketPosition == 0 and (IsExitName("StopProfittarget",1) or IsExitName("StopLoss",1)) Then{
if MarketPosition(1) == 1 Then
buy("b",AtStop,ExitPrice(1)-1);
if MarketPosition(1) == -1 Then
sell("s",AtLimit,ExitPrice(1)+1);
}
다음글
이전글