커뮤니티

kingtrader로 다시매매를 시작합니다

프로필 이미지
CSI300
2018-11-28 22:00:19
224
글번호 123979
답변완료
중국상품선물 cu,rb 야간장잇는종목입니다 전일 오전장 시작후 야간장 마감까지 "하루"로 보고 전"하루"시고저종 ,변동폭,을 산출하여 당일 오전9시~오후15시사이에 매매하는로직입니다 1:전"하루"시고저종 ,전전"하루"시고저종 2;당일 9시~15시 사이 총거래회수제한하는식 당일 첫진입,두번째진입,세번째진입 을 지정하는식 3;당일 9시~15시 사이 봉개수 지정하는식 4;당일청산식; 야간장없는종목은 highd(1) ,entriestoday,dayindex,setstopendofday함수로 코딩해서매매를하는데 야간장종목은 시스템 신호가 자꾸이상한위치서 나와서 위에식들코딩 부탁드립니다 60175,60177 답변으로 코딩해보앗는데 잘 안됩니다 감사합니다
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2018-11-29 13:40:45

안녕하세요 예스스탁입니다. 중국상품선물거래소의 영업일 변경기준시각은 21시 기준입니다. plot1(Bdate); 위 지표를 그려보시면 각 상품의 영엽일 변경기준시각을 확인하실수 있습니다. dayopen/dayhigh/daylow/dayclose/dayvolume 수식에서 제공되는 일간 시/고/저/종/거래량 함수도 모두 해당 시간을 기준으로 초기화되어 제공됩니다. 거래소의 영업일 변경시간을 기준으로 식을 작성하시면 위 함수를 사용하시면 되지만 9시 기준으로 작성하시면 모두 수식에서 계산해 사용하셔야 합니다. 1-1 9시 기준으로 다음날 9시전 까지를 하루로 var : cnt(0); Array : DO[100](0),DH[100](0),DL[100](0),DC[100](0); if (sdate != sdate[1] and stime >= 90000) or (sdate == sdate[1] and stime >= 90000 and stime[1] < 90000) Then { DO[0] = O; DH[0] = H; DL[0] = L; for cnt = 1 to 99 { DO[cnt] = DO[cnt-1][1]; DH[cnt] = DH[cnt-1][1]; DL[cnt] = DL[cnt-1][1]; DC[cnt] = DC[cnt-1][1]; } } if H > DH[0] Then DH[0] = H; if L < DL[0] Then DL[0] = L; DC[0] = C; if DO[0] > 0 then { plot1(DO[0],"당일시가"); plot2(DH[0],"당일고가"); plot3(DL[0],"당일저가"); plot4(DC[0],"당일종가"); } if DO[1] > 0 then { plot5(DO[1],"전일시가"); plot6(DH[1],"전일고가"); plot7(DL[1],"전일저가"); plot8(DC[1],"전일종가"); } if DO[2] > 0 then { plot9(DO[2],"전전일시가"); plot10(DH[2],"전전일고가"); plot11(DL[2],"전전일저가"); plot12(DC[2],"전전일종가"); } 1-2 9시~15시 사이 기준 var : cnt(0); Array : DO[100](0),DH[100](0),DL[100](0),DC[100](0); if (sdate != sdate[1] and stime >= 90000) or (sdate == sdate[1] and stime >= 90000 and stime[1] < 90000) Then { DO[0] = O; DH[0] = H; DL[0] = L; for cnt = 1 to 99 { DO[cnt] = DO[cnt-1][1]; DH[cnt] = DH[cnt-1][1]; DL[cnt] = DL[cnt-1][1]; DC[cnt] = DC[cnt-1][1]; } } if stime >= 90000 and stime < 150000 then { if H > DH[0] Then DH[0] = H; if L < DL[0] Then DL[0] = L; DC[0] = C; } if DO[0] > 0 then { plot1(DO[0],"당일시가"); plot2(DH[0],"당일고가"); plot3(DL[0],"당일저가"); plot4(DC[0],"당일종가"); } if DO[1] > 0 then { plot5(DO[1],"전일시가"); plot6(DH[1],"전일고가"); plot7(DL[1],"전일저가"); plot8(DC[1],"전일종가"); } if DO[2] > 0 then { plot9(DO[2],"전전일시가"); plot10(DH[2],"전전일고가"); plot11(DL[2],"전전일저가"); plot12(DC[2],"전전일종가"); } 2. entriestoday 기존의 사용하시는 entriestoday 함수는 아마 날짜변경(sdate != sdate[1])이 기준이었을 것 같습니다. 9시와 같이 특정시간을 지정하는 경우에는 아래식을 var : T1(0),entriestoday(0); if (sdate != sdate[1] and stime >= 90000) or (sdate == sdate[1] and stime >= 90000 and stime[1] < 90000) Then { T1 = TotalTrades; } if MarketPosition == 0 Then Entriestoday = TotalTrades-t1; Else Entriestoday = TotalTrades-t1+1; if stime >= 90000 and stime < 150000 and Entriestoday < 3 then { 진입청산수식 } 거래소 영업일 변경시간을 기준으로 하는 경우에는 아래와 같이 작성해 사용하시면 됩니다. var : T1(0),entriestoday(0); if bdate != bdate[1] Then { T1 = TotalTrades; } if MarketPosition == 0 Then Entriestoday = TotalTrades-t1; Else Entriestoday = TotalTrades-t1+1; 3 기본으로 제공되는 dayindex는 날짜변경(sdate != sdate[1])기준입니다. 9시와 같이 특정시간을 지정하는 경우에는 아래식을 var : idx(0); if (sdate != sdate[1] and stime >= 90000) or (sdate == sdate[1] and stime >= 90000 and stime[1] < 90000) Then { idx = 0; } Else { idx = idx+1; } 거래소 영업일 변경시간을 기준으로 하는 경우에는 아래와 같이 작성해 사용하시면 됩니다. var : idx(0); if bdate != bdate[1] Then { idx = 0; } Else { idx = idx+1; } 4 당일청산 시간이 진입일과 같으면 기존함수로 시간지정하시면 됩니다. 진입일과 청산일이 다른경우(다음날 새벽에 청산)에는 아래와 같이 지정하시면 됩니다. 이는 해외선물 국내 주간야간복합장에서 모두 동일한 내용입니다. #지정시간이 되면 당일청산해제 if (sdate != sdate[1] and stime >= 90000) or (sdate == sdate[1] and stime >= 90000 and stime[1] < 90000) Then { SetStopEndofday(0); } #날짜가 변경되면 새벽시간으로 당일청산시간 지정 if sdate != sdate[1] Then SetStopEndofday(013000); 즐거운 하루되세요 > CSI300 님이 쓴 글입니다. > 제목 : kingtrader로 다시매매를 시작합니다 > 중국상품선물 cu,rb 야간장잇는종목입니다 전일 오전장 시작후 야간장 마감까지 "하루"로 보고 전"하루"시고저종 ,변동폭,을 산출하여 당일 오전9시~오후15시사이에 매매하는로직입니다 1:전"하루"시고저종 ,전전"하루"시고저종 2;당일 9시~15시 사이 총거래회수제한하는식 당일 첫진입,두번째진입,세번째진입 을 지정하는식 3;당일 9시~15시 사이 봉개수 지정하는식 4;당일청산식; 야간장없는종목은 highd(1) ,entriestoday,dayindex,setstopendofday함수로 코딩해서매매를하는데 야간장종목은 시스템 신호가 자꾸이상한위치서 나와서 위에식들코딩 부탁드립니다 60175,60177 답변으로 코딩해보앗는데 잘 안됩니다 감사합니다