커뮤니티

수식 검토 요청드립니다

프로필 이미지
mildred
2021-05-31 14:59:42
1146
글번호 149470
답변완료
안녕하세요, 일봉기준으로 아래와 같은 전략을 구현하고 하는데, 수식이 맞는지 검토 요청 드립니다. (청산 시그널이 좀 이상하게 나와서요) 매수: 오늘의 저가 < 어제의 저가 AND 오늘의 고가 < 어제의 고가이고 포지션이 없으면 오늘의 종가로 매수 매도: 포지션이 있으면(오늘 종가로 매수하면) 내일 시가로 청산 If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", OnClose); } If (MarketPosition <> 0)Then { ExitLong ("매수청산", AtMarket); } 위의 로직을 이렇게 작성해서 돌려봤는데, 문제가 시그널은 전반적으로 잘 나오는거 같은데 문제가 오늘 종가로 매수진입하면 내일 시가 청산이 아니라 모래시가로 청산되어서요. 검토 부탁 드리겠습니다. 감사합니다.
시스템
답변 5
프로필 이미지

예스스탁 예스스탁 답변

2021-05-31 15:21:32

안녕하세요 예스스탁입니다. MarketPosition은 신호가 발생하고 1개봉이 완성되어야 리턴됩니다. if문은 봉완성시가 기준이고 봉완성시은 다음봉 시가 수신될때 입니다. 그 다음봉이 완성되어야 MarketPosition이 1이 되므로 작성하신 수식에서는 진입신호표시봉기준 다다음봉의 시가에 청산됩니다. 아래와 같이 변경하시면 됩니다. If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", OnClose); } ExitLong ("매수청산", AtMarket); 즐거운 하루되세요 > mildred 님이 쓴 글입니다. > 제목 : 수식 검토 요청드립니다 > 안녕하세요, 일봉기준으로 아래와 같은 전략을 구현하고 하는데, 수식이 맞는지 검토 요청 드립니다. (청산 시그널이 좀 이상하게 나와서요) 매수: 오늘의 저가 < 어제의 저가 AND 오늘의 고가 < 어제의 고가이고 포지션이 없으면 오늘의 종가로 매수 매도: 포지션이 있으면(오늘 종가로 매수하면) 내일 시가로 청산 If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", OnClose); } If (MarketPosition <> 0)Then { ExitLong ("매수청산", AtMarket); } 위의 로직을 이렇게 작성해서 돌려봤는데, 문제가 시그널은 전반적으로 잘 나오는거 같은데 문제가 오늘 종가로 매수진입하면 내일 시가 청산이 아니라 모래시가로 청산되어서요. 검토 부탁 드리겠습니다. 감사합니다.
프로필 이미지

mildred

2021-05-31 16:10:20

친절한 답변 감사드립니다. 죄송하지만 똑같은 조건이 만족했을때 그날의 종가가 아니라 다음날 시가에 매수 진입해서 포지션 들어간 다음날 종가에 매수포지션을 청산하는 신호는 어떻게 작성해야하나요? 무한 감사드립니다! > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 수식 검토 요청드립니다 > 안녕하세요 예스스탁입니다. MarketPosition은 신호가 발생하고 1개봉이 완성되어야 리턴됩니다. if문은 봉완성시가 기준이고 봉완성시은 다음봉 시가 수신될때 입니다. 그 다음봉이 완성되어야 MarketPosition이 1이 되므로 작성하신 수식에서는 진입신호표시봉기준 다다음봉의 시가에 청산됩니다. 아래와 같이 변경하시면 됩니다. If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", OnClose); } ExitLong ("매수청산", AtMarket); 즐거운 하루되세요 > mildred 님이 쓴 글입니다. > 제목 : 수식 검토 요청드립니다 > 안녕하세요, 일봉기준으로 아래와 같은 전략을 구현하고 하는데, 수식이 맞는지 검토 요청 드립니다. (청산 시그널이 좀 이상하게 나와서요) 매수: 오늘의 저가 < 어제의 저가 AND 오늘의 고가 < 어제의 고가이고 포지션이 없으면 오늘의 종가로 매수 매도: 포지션이 있으면(오늘 종가로 매수하면) 내일 시가로 청산 If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", OnClose); } If (MarketPosition <> 0)Then { ExitLong ("매수청산", AtMarket); } 위의 로직을 이렇게 작성해서 돌려봤는데, 문제가 시그널은 전반적으로 잘 나오는거 같은데 문제가 오늘 종가로 매수진입하면 내일 시가 청산이 아니라 모래시가로 청산되어서요. 검토 부탁 드리겠습니다. 감사합니다.
프로필 이미지

예스스탁 예스스탁 답변

2021-05-31 16:55:58

안녕하세요 예스스탁입니다. 1 다음날시가 진입,진입일 종가 청산은 아래와 같습니다. If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", AtMarket); } ExitLong ("매수청산", OnClose); 2 다음날시가 진입, 진입일 다음날 종가 청산은 아래와 같습니다. If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", AtMarket); } if MarketPosition == 1 and BarsSinceEntry == 1 then ExitLong ("매수청산", OnClose); 즐거운 하루되세요 > mildred 님이 쓴 글입니다. > 제목 : Re : Re : 수식 검토 요청드립니다 > 친절한 답변 감사드립니다. 죄송하지만 똑같은 조건이 만족했을때 그날의 종가가 아니라 다음날 시가에 매수 진입해서 포지션 들어간 다음날 종가에 매수포지션을 청산하는 신호는 어떻게 작성해야하나요? 무한 감사드립니다! > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 수식 검토 요청드립니다 > 안녕하세요 예스스탁입니다. MarketPosition은 신호가 발생하고 1개봉이 완성되어야 리턴됩니다. if문은 봉완성시가 기준이고 봉완성시은 다음봉 시가 수신될때 입니다. 그 다음봉이 완성되어야 MarketPosition이 1이 되므로 작성하신 수식에서는 진입신호표시봉기준 다다음봉의 시가에 청산됩니다. 아래와 같이 변경하시면 됩니다. If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", OnClose); } ExitLong ("매수청산", AtMarket); 즐거운 하루되세요 > mildred 님이 쓴 글입니다. > 제목 : 수식 검토 요청드립니다 > 안녕하세요, 일봉기준으로 아래와 같은 전략을 구현하고 하는데, 수식이 맞는지 검토 요청 드립니다. (청산 시그널이 좀 이상하게 나와서요) 매수: 오늘의 저가 < 어제의 저가 AND 오늘의 고가 < 어제의 고가이고 포지션이 없으면 오늘의 종가로 매수 매도: 포지션이 있으면(오늘 종가로 매수하면) 내일 시가로 청산 If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", OnClose); } If (MarketPosition <> 0)Then { ExitLong ("매수청산", AtMarket); } 위의 로직을 이렇게 작성해서 돌려봤는데, 문제가 시그널은 전반적으로 잘 나오는거 같은데 문제가 오늘 종가로 매수진입하면 내일 시가 청산이 아니라 모래시가로 청산되어서요. 검토 부탁 드리겠습니다. 감사합니다.
프로필 이미지

mildred

2021-05-31 17:10:32

답변 감사드립니다. 다음날 시가 진입, 그다음날 종가 청산에 MarketPosition == 1 조건을 추가해 주셨는데, 만약 제가 어떤 종목을 진입할때 1주이상 들어가는 경우에도 MarketPosition == 1을 써도 되는지요? 아니면 MarketPosition <> 0으로 해야할까요? 다시한번 감사드립니다. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : Re : Re : 수식 검토 요청드립니다 > 안녕하세요 예스스탁입니다. 1 다음날시가 진입,진입일 종가 청산은 아래와 같습니다. If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", AtMarket); } ExitLong ("매수청산", OnClose); 2 다음날시가 진입, 진입일 다음날 종가 청산은 아래와 같습니다. If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", AtMarket); } if MarketPosition == 1 and BarsSinceEntry == 1 then ExitLong ("매수청산", OnClose); 즐거운 하루되세요 > mildred 님이 쓴 글입니다. > 제목 : Re : Re : 수식 검토 요청드립니다 > 친절한 답변 감사드립니다. 죄송하지만 똑같은 조건이 만족했을때 그날의 종가가 아니라 다음날 시가에 매수 진입해서 포지션 들어간 다음날 종가에 매수포지션을 청산하는 신호는 어떻게 작성해야하나요? 무한 감사드립니다! > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 수식 검토 요청드립니다 > 안녕하세요 예스스탁입니다. MarketPosition은 신호가 발생하고 1개봉이 완성되어야 리턴됩니다. if문은 봉완성시가 기준이고 봉완성시은 다음봉 시가 수신될때 입니다. 그 다음봉이 완성되어야 MarketPosition이 1이 되므로 작성하신 수식에서는 진입신호표시봉기준 다다음봉의 시가에 청산됩니다. 아래와 같이 변경하시면 됩니다. If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", OnClose); } ExitLong ("매수청산", AtMarket); 즐거운 하루되세요 > mildred 님이 쓴 글입니다. > 제목 : 수식 검토 요청드립니다 > 안녕하세요, 일봉기준으로 아래와 같은 전략을 구현하고 하는데, 수식이 맞는지 검토 요청 드립니다. (청산 시그널이 좀 이상하게 나와서요) 매수: 오늘의 저가 < 어제의 저가 AND 오늘의 고가 < 어제의 고가이고 포지션이 없으면 오늘의 종가로 매수 매도: 포지션이 있으면(오늘 종가로 매수하면) 내일 시가로 청산 If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", OnClose); } If (MarketPosition <> 0)Then { ExitLong ("매수청산", AtMarket); } 위의 로직을 이렇게 작성해서 돌려봤는데, 문제가 시그널은 전반적으로 잘 나오는거 같은데 문제가 오늘 종가로 매수진입하면 내일 시가 청산이 아니라 모래시가로 청산되어서요. 검토 부탁 드리겠습니다. 감사합니다.
프로필 이미지

예스스탁 예스스탁 답변

2021-06-01 08:47:08

안녕하세요 예스스탁입니다. 1 MarketPosition은 수량을 리턴하는 함수가 아닙니다. 차트상 진입상태를 나타냅니다. 매수진입신호가 발생한 상태면 1, 매도진입신호가 발생한 상태면 -1, 무포지션이면 0이므로 해당식에서 MarketPosition == 1은 그대로 사용하셔야 합니다. 2 시스템의 청산은 별도로 청산함수에 수량을 지정하지 않으면 진입신호에서 발생한 수량전량을 청산합니다. 즐거운 하루되세요 > mildred 님이 쓴 글입니다. > 제목 : Re : Re : Re : Re : 수식 검토 요청드립니다 > 답변 감사드립니다. 다음날 시가 진입, 그다음날 종가 청산에 MarketPosition == 1 조건을 추가해 주셨는데, 만약 제가 어떤 종목을 진입할때 1주이상 들어가는 경우에도 MarketPosition == 1을 써도 되는지요? 아니면 MarketPosition <> 0으로 해야할까요? 다시한번 감사드립니다. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : Re : Re : 수식 검토 요청드립니다 > 안녕하세요 예스스탁입니다. 1 다음날시가 진입,진입일 종가 청산은 아래와 같습니다. If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", AtMarket); } ExitLong ("매수청산", OnClose); 2 다음날시가 진입, 진입일 다음날 종가 청산은 아래와 같습니다. If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", AtMarket); } if MarketPosition == 1 and BarsSinceEntry == 1 then ExitLong ("매수청산", OnClose); 즐거운 하루되세요 > mildred 님이 쓴 글입니다. > 제목 : Re : Re : 수식 검토 요청드립니다 > 친절한 답변 감사드립니다. 죄송하지만 똑같은 조건이 만족했을때 그날의 종가가 아니라 다음날 시가에 매수 진입해서 포지션 들어간 다음날 종가에 매수포지션을 청산하는 신호는 어떻게 작성해야하나요? 무한 감사드립니다! > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 수식 검토 요청드립니다 > 안녕하세요 예스스탁입니다. MarketPosition은 신호가 발생하고 1개봉이 완성되어야 리턴됩니다. if문은 봉완성시가 기준이고 봉완성시은 다음봉 시가 수신될때 입니다. 그 다음봉이 완성되어야 MarketPosition이 1이 되므로 작성하신 수식에서는 진입신호표시봉기준 다다음봉의 시가에 청산됩니다. 아래와 같이 변경하시면 됩니다. If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", OnClose); } ExitLong ("매수청산", AtMarket); 즐거운 하루되세요 > mildred 님이 쓴 글입니다. > 제목 : 수식 검토 요청드립니다 > 안녕하세요, 일봉기준으로 아래와 같은 전략을 구현하고 하는데, 수식이 맞는지 검토 요청 드립니다. (청산 시그널이 좀 이상하게 나와서요) 매수: 오늘의 저가 < 어제의 저가 AND 오늘의 고가 < 어제의 고가이고 포지션이 없으면 오늘의 종가로 매수 매도: 포지션이 있으면(오늘 종가로 매수하면) 내일 시가로 청산 If (L < L[1] And H < H[1]) And (MarketPosition == 0) Then { Buy ("매수", OnClose); } If (MarketPosition <> 0)Then { ExitLong ("매수청산", AtMarket); } 위의 로직을 이렇게 작성해서 돌려봤는데, 문제가 시그널은 전반적으로 잘 나오는거 같은데 문제가 오늘 종가로 매수진입하면 내일 시가 청산이 아니라 모래시가로 청산되어서요. 검토 부탁 드리겠습니다. 감사합니다.