1분봉 기준으로 주식 차트를 보면,
3시 17분봉, 18분봉, 19분봉, 20분봉 -> 동시호가 -> 31분봉(확정된 종가)
이렇게 나타납니다
Data1 : 해당 종목의 1분봉 차트
Data2 : 해당 종목의 일봉 차트 (전일부터 20일간 고가를 판단하기 위함)
if MarketPosition==0 and stime >= 151000 Then
{
Buy("진입", AtStop, Data2(highest(C,20)), 수량 );
}
이렇게 식을 짰을때,
20분봉까지는 실시간 현재가가 Data2(highest(C,20))를 넘지못하다가,
31분봉째 확정된 종가가 Data2(highest(C,20))를 넘어섰다면
1. 다음날 아침 9시 이후(9시? 9시1분?)에 buy 주문이 들어가는지요?
2. 주문이 안들어간다면, 주문이 들어가게 하려면 어떻게 식을 만들어야할까요?
: 분봉차트에서 마지막 확정된 종가(31분봉)가 Data2(highest(C,20))를 넘어섰을때,
다음날 개장할때쯤(9시나 9시1분) buy주문이 되도록 하고 싶습니다.
답변 1
예스스탁
예스스탁 답변
2023-04-19 18:02:53
안녕하세요
예스스탁입니다.
1
올려주신 내용이면 15시10분 이후에
전일기준 20일 최고가를 넘는 시세가 있으면 매수신호가 발생합니다.
다음날 9시 이후에 신호와 주문이 집행되는 내용이 아닙니다.
또한 참조데이타는 완성봉값을 기준으로 계산합니다
일봉차트이면 장중에 전일까지만 포함됩니다.
하지만 차트 마지막봉은 일봉과 같이 완성되므로
마지막봉이 완성(다음날 시가수신)이 되면 당일포함 20일간 최고가가 됩니다.
2
아래와 같이 작성하시면
당일마지막봉 종가가 전일기준 20일간 최고가보다 크면
다음날 시초가에 매수신호가 발생합니다.
분봉이하의 차트에는 기본차트 종목의 일봉데이타는 내장되어 제공됩니다.
해당 데이타를 이용해 계산하시면 됩니다.
input : 수량(1);
var : hc(0),cnt(0);
hc = 0;
For cnt = 1 to 20
{
if hc == 0 or (hc > 0 and DayClose(cnt) > hc) Then
hc = DayClose(cnt);
}
if MarketPosition==0 and NextBarSdate != sDate Then
{
if C > hc Then
Buy("진입",AtMarket,Def,수량);
}
즐거운 하루되세요
> 루라라라 님이 쓴 글입니다.
> 제목 : 문의드립니다
> 1분봉 기준으로 주식 차트를 보면,
3시 17분봉, 18분봉, 19분봉, 20분봉 -> 동시호가 -> 31분봉(확정된 종가)
이렇게 나타납니다
Data1 : 해당 종목의 1분봉 차트
Data2 : 해당 종목의 일봉 차트 (전일부터 20일간 고가를 판단하기 위함)
if MarketPosition==0 and stime >= 151000 Then
{
Buy("진입", AtStop, Data2(highest(C,20)), 수량 );
}
이렇게 식을 짰을때,
20분봉까지는 실시간 현재가가 Data2(highest(C,20))를 넘지못하다가,
31분봉째 확정된 종가가 Data2(highest(C,20))를 넘어섰다면
1. 다음날 아침 9시 이후(9시? 9시1분?)에 buy 주문이 들어가는지요?
2. 주문이 안들어간다면, 주문이 들어가게 하려면 어떻게 식을 만들어야할까요?
: 분봉차트에서 마지막 확정된 종가(31분봉)가 Data2(highest(C,20))를 넘어섰을때,
다음날 개장할때쯤(9시나 9시1분) buy주문이 되도록 하고 싶습니다.