커뮤니티
부탁드립니다
2015-12-28 16:24:37
91
글번호 93826
1.
다른 신호 진입을 허용하는 경우에
예를 들어 "b2"와 "s2"는 하루 1번만, "b3"와 "s3"는 하루 3번만 신호가 나오게 하려면 어떻게 해야 하나요.
2.
2계약 이상 진입되어 있는 경우에
예를 들어 b1이 먼저 진입되었고 b3가 후에 진입된 경우에
(1) b3진입분만 1포인트 익절
(2) b3진입가격에서 모두 1포인트 익절
이것을 어떻게 표현해야 하나요.
부탁드립니다.
답변 1
예스스탁 예스스탁 답변
2015-12-28 17:21:38
안녕하세요
예스스탁입니다.
1.
피라미딩이 되는 경우이므로
LatestEntryName으로 각각 발생시마다 카운트를 하셔야 합니다.
var : B2cnt(0),S2cnt(0),B3cnt(0),S3cnt(0);
if date != date[1] Then{
B2cnt = 0;
S2cnt = 0;
B3cnt = 0;
S3cnt = 0;
}
if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "b2" Then
B2cnt = B2cnt+1;
if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "s2" Then
S2cnt = S2cnt+1;
if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "b3" Then
B3cnt = B3cnt+1;
if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "S3" Then
S3cnt = S3cnt+1;
if B2cnt < 2 and b2매수조건 Then
buy("b2");
if S2cnt < 2 and s2매도조건 Then
Sell("s2");
if B3cnt < 2 and b3매수조건 Then
buy("b3");
if S3cnt < 2 and s3매도조건 Then
Sell("s3");
2.
#매수포지션이고 진입이 2회이면
#마지막진입가격에서 1포인트 상승시 b1만 청산
if MarketPosition == 1 and MaxEntries == 2 Then
exitlong("bx1",Atlimit,LatestEntryPrice(0)+1,"b1");
#매수포지션이고 진입이 2회이면
#마지막진입가격에서 1포인트 상승시 전량청산
if MarketPosition == 1 and MaxEntries == 2 Then
exitlong("bx2",Atlimit,LatestEntryPrice(0)+1);
즐거운 하루되세요
> 묘선낭자 님이 쓴 글입니다.
> 제목 : 부탁드립니다
> 1.
다른 신호 진입을 허용하는 경우에
예를 들어 "b2"와 "s2"는 하루 1번만, "b3"와 "s3"는 하루 3번만 신호가 나오게 하려면 어떻게 해야 하나요.
2.
2계약 이상 진입되어 있는 경우에
예를 들어 b1이 먼저 진입되었고 b3가 후에 진입된 경우에
(1) b3진입분만 1포인트 익절
(2) b3진입가격에서 모두 1포인트 익절
이것을 어떻게 표현해야 하나요.
부탁드립니다.
다음글
이전글