다시 질문드립니다.
증거금은 부족하지 않고, 주문 시작 신호는 모든 신호입니다.
저도 백테스팅을 하면 차트에는 청산과 함께 포지션 변경이 되는데 실제로는 그렇지 않습니다.
답변에서 말씀해준대로 청산 수식을 제외한다면
포지션 0 -> 매수 신호 발생 -> 매수 포지션 -> 매도 신호 발생 -> 포지션 0
이렇게 되지 않나요?
같은 계약수만큼 진입을 하니까요.
그래서 청산 수식을 넣었습니다.
혹시 포지션이 바뀌지 않는 다른 원인이 있을까요..?
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 문의드립니다.
> 안녕하세요
예스스탁입니다.
1
수식에 문제가 없습니다.
첨부된 그림과 같이 조건만족하면 진입과 청산신호가 동시에 뜨고 있습니다.
2
진입신호함수는 반대포지션에서 자동으로 반대포지션 청산신호를 발생하므로
청산함수는 제외하셔도 됩니다.
var1 = ma(C,5);
var2 = ma(c,20);
If crossup(var1,var2) then
{
Buy();
}
If CrossDown(var1,var2) then
{
Sell();
}
3
문의하신 내용이 차트에서는 동시신호가 발생하는데
실제 주문이 되지 않는 부분이시면
증거금등의 이유로 주문거부되지 않았는지 확인하셔야 합니다.
랭귀지는 신호만 발생하기 때문에 주문이후 거부등은 체크하지 않습니다.
혹은 시스템 적용시에
시스템 트레이딩 설정창의 주문시작신호가 진입신호로 되지 있는지 확인하시기 바랍니다.
주문시작신호가 진입신호이면
시스템을 차트에 적용한 후에 첫번쨰 진입부터 주문이 집행되므로
청산과 동시에 진입신호 발생하게 되면 청산신호는 차트에 표시되지만 주문은 집행하지 않습니다.
즐거운 하루되세요
> 파랭 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 단기 이평선이 장기 이평선을 상향 돌파하면 매수하고
단기 이평선이 장기 이평선을 하향 돌파하면 매도하는 시스템에서
If 단기 이평선 상향 돌파 then
{
Exitshort();
Buy();
}
If 단기 이평선 하향 돌파 then
{
Exitlong();
Sell();
}
같이 청산 후 포지션 진입하도록 작성했는데,
확인해보니 청산만 되고 새로 진입을 안합니다..
다른 청산이나 진입 설정은 없고요.
혹시 이렇게 작성했을 때 문제가 있나요?
답변 1
예스스탁
예스스탁 답변
2020-05-20 14:30:11
안녕하세요
예스스탁입니다.
1
If 단기 이평선 상향 돌파 then
{
Exitshort();
Buy();
}
If 단기 이평선 하향 돌파 then
{
Exitlong();
Sell();
}
올려주신 위와 같은 수식에 청산함수는 없어도 되는 부분입니다.
진입함수 자체가 반대포지션 상태에서 발생하면 해당청산함수가 자동으로 발동합니다.
수식에서 해당 함수 사용여부가 신호나 주문등에 영향을 주지 않습니다.
2
자동매매시에 시스템과 차트의 포지션이 안맞는 경우는
체결여부와 이전에 답변드린 주문시작신호 설정문제 입니다.
수식이 스위칭이 되는 내용이므로
자동매매를 처음시작할떄는 시작신호를 진입신호 부터로 지정하셔야 하고
진입이 한번 발생한 이후부터 모든신호로 변경하셔야 합니다.
모든신호 상태에서 첫신호가 스위칭신호이면 청산과 진입이 동시발생하고
주문도 모두 발생하게 딥니다.
실제 계좌는 무포지션인데 모두 주문을 집행하면 처음부터 매수나 매도 2계약을 가지게 됩니다.
모든신호 : 첫신호(매수스위칭) 매수2계약(실제잔고 매수2)--> 다음매도신호 --> 매도2계약(실제잔고 0)
진입신호 : 첫신호(매수스위칭) 매수1계약(실제잔고 매수1)--> 다음매도신호 --> 매도2계약(실제잔고 매도1)
체결여부는 사용자분이 주문내역등을 이용해 확인하셔야 합니다.
증거금부족등의 사유로 주문이 거부가 된 부분인지 혹은
주문이 정상접수되었지만 미체결되어 발생하는지 확인하셔야 합니다.
즐거운 하루되세요
> 파랭 님이 쓴 글입니다.
> 제목 : 문의드립니다.
>
다시 질문드립니다.
증거금은 부족하지 않고, 주문 시작 신호는 모든 신호입니다.
저도 백테스팅을 하면 차트에는 청산과 함께 포지션 변경이 되는데 실제로는 그렇지 않습니다.
답변에서 말씀해준대로 청산 수식을 제외한다면
포지션 0 -> 매수 신호 발생 -> 매수 포지션 -> 매도 신호 발생 -> 포지션 0
이렇게 되지 않나요?
같은 계약수만큼 진입을 하니까요.
그래서 청산 수식을 넣었습니다.
혹시 포지션이 바뀌지 않는 다른 원인이 있을까요..?
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 문의드립니다.
> 안녕하세요
예스스탁입니다.
1
수식에 문제가 없습니다.
첨부된 그림과 같이 조건만족하면 진입과 청산신호가 동시에 뜨고 있습니다.
2
진입신호함수는 반대포지션에서 자동으로 반대포지션 청산신호를 발생하므로
청산함수는 제외하셔도 됩니다.
var1 = ma(C,5);
var2 = ma(c,20);
If crossup(var1,var2) then
{
Buy();
}
If CrossDown(var1,var2) then
{
Sell();
}
3
문의하신 내용이 차트에서는 동시신호가 발생하는데
실제 주문이 되지 않는 부분이시면
증거금등의 이유로 주문거부되지 않았는지 확인하셔야 합니다.
랭귀지는 신호만 발생하기 때문에 주문이후 거부등은 체크하지 않습니다.
혹은 시스템 적용시에
시스템 트레이딩 설정창의 주문시작신호가 진입신호로 되지 있는지 확인하시기 바랍니다.
주문시작신호가 진입신호이면
시스템을 차트에 적용한 후에 첫번쨰 진입부터 주문이 집행되므로
청산과 동시에 진입신호 발생하게 되면 청산신호는 차트에 표시되지만 주문은 집행하지 않습니다.
즐거운 하루되세요
> 파랭 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 단기 이평선이 장기 이평선을 상향 돌파하면 매수하고
단기 이평선이 장기 이평선을 하향 돌파하면 매도하는 시스템에서
If 단기 이평선 상향 돌파 then
{
Exitshort();
Buy();
}
If 단기 이평선 하향 돌파 then
{
Exitlong();
Sell();
}
같이 청산 후 포지션 진입하도록 작성했는데,
확인해보니 청산만 되고 새로 진입을 안합니다..
다른 청산이나 진입 설정은 없고요.
혹시 이렇게 작성했을 때 문제가 있나요?