커뮤니티
테스트 중인데 도움이 필요합니다.
2019-09-09 10:02:53
130
글번호 131835
저는 개별 주식에 아래와 같이 전략을 시험 운용중에 있습니다.
if MarketPosition <= 0 and dayhigh > dayopen+(dayhigh(1)-daylow(1))*0.5 and NextBarSdate == sdate Then
buy("b",AtStop,dayopen+(dayhigh(1)-daylow(1))*0.5);
if MarketPosition == 1 Then{
if NextBarSdate > sdate Then
exitlong("bx2",AtMarket);
}
당일 실행하면 시스템 시험적용 (날짜, 17:00) 매수신호유지라고 나오는데
당일 매수하였다고 시스템 모니터에 나와있어도 다음날 로그인해보면 전날 매수 내역이 남아 있지 않아 청산도 안되는 것 같아요. 산식이 틀린 건지? 실제로 실행하면 청산이 되는건지? 모르겠네요. 원인이 무언지 알려주세요
답변 1
예스스탁 예스스탁 답변
2019-09-09 16:19:10
안녕하세요
예스스탁입니다.
1
시스템은 차트의 데이타로 조건을 파악해 진입/청산시호를 발생합니다.
실제 잔고의 내역을 인지하지 않습니다.
차트에서 신호가 발생하고 자동주문으로 설정되어 있으면 주문 동시에 집행하고
시험적용이면 주문을 내지 않습니다.
2
해당 수식은 아침시초가에 청산신호가 발생하게 되어 있습니다.
전일 시뮬레이션으로 진입신호가 발생하면 오늘 시초가 수신시에
청산신호가 발생하는데 매도주문이 발생하게 됩니다.
차트의 데이타로 신호를 발생하므로
오늘 차트를 여실때 전일데이타가 모두 조회되지 않으면
전일 진입신호가 없게 되므로 전일데이타가 모두 나올수 있게 충분히 봉갯수 지정하고
차트를 생성해 사용하셔야 합니다.
즐거운 하루되세요
> pdy2280 님이 쓴 글입니다.
> 제목 : 테스트 중인데 도움이 필요합니다.
> 저는 개별 주식에 아래와 같이 전략을 시험 운용중에 있습니다.
if MarketPosition <= 0 and dayhigh > dayopen+(dayhigh(1)-daylow(1))*0.5 and NextBarSdate == sdate Then
buy("b",AtStop,dayopen+(dayhigh(1)-daylow(1))*0.5);
if MarketPosition == 1 Then{
if NextBarSdate > sdate Then
exitlong("bx2",AtMarket);
}
당일 실행하면 시스템 시험적용 (날짜, 17:00) 매수신호유지라고 나오는데
당일 매수하였다고 시스템 모니터에 나와있어도 다음날 로그인해보면 전날 매수 내역이 남아 있지 않아 청산도 안되는 것 같아요. 산식이 틀린 건지? 실제로 실행하면 청산이 되는건지? 모르겠네요. 원인이 무언지 알려주세요