커뮤니티

cme 야간장 시간오류

프로필 이미지
목마와숙녀
2017-06-12 07:14:27
157
글번호 110311
답변완료

첨부 이미지

고쳐주신 수식에서 1번과 3번은 cme시간적용이 정확합니다. 그런데 2번째 수식(자정 00시 ~ 새벽 3시45분)에서 오류가 있습니다. 대부분 위 시간대로 거래하는데 반복적으로 월요일과 가끔 다른 날에도 start time이 당겨지는 18시 이후 시간대가 포함되는 거래를 합니다 _ 그림1참조 자정부터 하는 거래이므로 월요일 오후는 거래를 안해야 합니다. 오류일 6월 7일 수요일 5월22일 월요일 5월15일 월요일 5월10일 수요일 5월 8일 수요일 5월 4일 목요일 4월24일 월요일 4월17일 월요일 살펴주세요. **************************** 안녕하세요 예스스탁입니다. 종료시간에 청산되게 추가해 드립니다. 강제청산 당일청산은 사용하시면 안됩니다. 당일청산은 당일 청산후 진입을 막기때문에 새벽에 청산하면 그날 밤 0시까지 진입을 하지 못하게 됩니다. 야간장과 같이 거래에서는 당일청산은 사용하면 안되고 if문으로 시간을 지정해 청산되게 하셔야 합니다. 1. input : 당일최대진입횟수(5),시작시간(180000),종료시간(0); var : C2(0,data1),T1(0,data1),entry(0,data1); var : Tcond(False,data1); if 시작시간 == 0 and date != date[1] Then{ tcond = true; T1 = TotalTrades; } if 시작시간 > 0 and (stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간)) Then{ tcond = true; T1 = TotalTrades; } if 종료시간 == 0 and date != date[1] Then{ tcond = false; if MarketPosition == 1 Then exitlong(); if MarketPosition == -1 Then ExitShort(); } if 종료시간 > 0 and (stime == 종료시간 or (stime > 종료시간 and stime[1] < 종료시간)) Then{ tcond = false; if MarketPosition == 1 Then exitlong(); if MarketPosition == -1 Then ExitShort(); } C2 = data2(C); if MarketPosition == 0 Then entry = TotalTrades-T1; Else entry = TotalTrades-T1+1; if Tcond == true then{ if entry < 당일최대진입횟수 and data2(Bdate == Bdate[1] and HighD(0) > HighD(0)[1] and HighD(0)-LowD(0) >= 0.55) Then{ buy("b"); } if entry < 당일최대진입횟수 and data2(Bdate == Bdate[1] and Lowd(0) < LowD(0)[1] and HighD(0)-LowD(0) >= 0.65) Then{ sell("s"); } } 2 input : 당일최대진입횟수(5),시작시간(0),종료시간(034500); var : C2(0,data1),T1(0,data1),entry(0,data1); var : Tcond(False,data1); if 시작시간 == 0 and date != date[1] Then{ tcond = true; T1 = TotalTrades; } if 시작시간 > 0 and (stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간)) Then{ tcond = true; T1 = TotalTrades; } if 종료시간 == 0 and date != date[1] Then{ tcond = false; if MarketPosition == 1 Then exitlong(); if MarketPosition == -1 Then ExitShort(); } if 종료시간 > 0 and (stime == 종료시간 or (stime > 종료시간 and stime[1] < 종료시간)) Then{ tcond = false; if MarketPosition == 1 Then exitlong(); if MarketPosition == -1 Then ExitShort(); } C2 = data2(C); if MarketPosition == 0 Then entry = TotalTrades-T1; Else entry = TotalTrades-T1+1; if Tcond == true then{ if entry < 당일최대진입횟수 and data2(Bdate == Bdate[1] and HighD(0) > HighD(0)[1] and HighD(0)-LowD(0) >= 0.55) Then{ buy("b"); } if entry < 당일최대진입횟수 and data2(Bdate == Bdate[1] and Lowd(0) < LowD(0)[1] and HighD(0)-LowD(0) >= 0.65) Then{ sell("s"); } } 3 input : 당일최대진입횟수(5),시작시간(180000),종료시간(034500); var : C2(0,data1),T1(0,data1),entry(0,data1); var : Tcond(False,data1); if 시작시간 == 0 and date != date[1] Then{ tcond = true; T1 = TotalTrades; } if 시작시간 > 0 and (stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간)) Then{ tcond = true; T1 = TotalTrades; } if 종료시간 == 0 and date != date[1] Then{ tcond = false; if MarketPosition == 1 Then exitlong(); if MarketPosition == -1 Then ExitShort(); } if 종료시간 > 0 and (stime == 종료시간 or (stime > 종료시간 and stime[1] < 종료시간)) Then{ tcond = false; if MarketPosition == 1 Then exitlong(); if MarketPosition == -1 Then ExitShort(); } C2 = data2(C); if MarketPosition == 0 Then entry = TotalTrades-T1; Else entry = TotalTrades-T1+1; if Tcond == true then{ if entry < 당일최대진입횟수 and data2(Bdate == Bdate[1] and HighD(0) > HighD(0)[1] and HighD(0)-LowD(0) >= 0.55) Then{ buy("b"); } if entry < 당일최대진입횟수 and data2(Bdate == Bdate[1] and Lowd(0) < LowD(0)[1] and HighD(0)-LowD(0) >= 0.65) Then{ sell("s"); } } 즐거운 하루되세요 > 목마와숙녀 님이 쓴 글입니다. > 제목 : 53143건 cme day 트레이딩 오류 > 제가 요청드린 내용은 cme day 트레이딩입니다. 금일 야간 18시00분01초부터 금일 오후 11시59분59초까지 익일 오전 00시00분01초부터 익일 오전 03시44분59초까지 금일 야간 18시00분01초부터 익일 오전 03시44분59초까지 그런데 정리해 주신 수식은 모두 다 오버나잇하면서 리버스를 거래하고 있습니다.(그림1,2,3 참조) 현재 시스템설정창 당일청산 기능으로는 cme 당일 거래가 한계가 있어 시간함수를 세팅하기 위해 요청드린 내용이오니 다시 살펴주시기 바랍니다. 항상 고맙습니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2017-06-12 14:58:32

안녕하세요 예스스탁입니다. 3개 수식의 시간제어 내용을 아래 내용으로 모두 변경하시면 됩니다. if 시작시간 == 0 and date != date[1] and bdate == bdate[1] Then{ tcond = true; T1 = TotalTrades; } if 시작시간 > 0 and (stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간)) Then{ tcond = true; T1 = TotalTrades; } if 종료시간 == 0 and date != date[1] and bdate == bdate[1] Then{ tcond = false; if MarketPosition == 1 Then exitlong(); if MarketPosition == -1 Then ExitShort(); } if 종료시간 > 0 and (stime == 종료시간 or (stime > 종료시간 and stime[1] < 종료시간)) Then{ tcond = false; if MarketPosition == 1 Then exitlong(); if MarketPosition == -1 Then ExitShort(); } 즐거운 하루되세요 > 목마와숙녀 님이 쓴 글입니다. > 제목 : cme 야간장 시간오류 > 고쳐주신 수식에서 1번과 3번은 cme시간적용이 정확합니다. 그런데 2번째 수식(자정 00시 ~ 새벽 3시45분)에서 오류가 있습니다. 대부분 위 시간대로 거래하는데 반복적으로 월요일과 가끔 다른 날에도 start time이 당겨지는 18시 이후 시간대가 포함되는 거래를 합니다 _ 그림1참조 자정부터 하는 거래이므로 월요일 오후는 거래를 안해야 합니다. 오류일 6월 7일 수요일 5월22일 월요일 5월15일 월요일 5월10일 수요일 5월 8일 수요일 5월 4일 목요일 4월24일 월요일 4월17일 월요일 살펴주세요. **************************** 안녕하세요 예스스탁입니다. 종료시간에 청산되게 추가해 드립니다. 강제청산 당일청산은 사용하시면 안됩니다. 당일청산은 당일 청산후 진입을 막기때문에 새벽에 청산하면 그날 밤 0시까지 진입을 하지 못하게 됩니다. 야간장과 같이 거래에서는 당일청산은 사용하면 안되고 if문으로 시간을 지정해 청산되게 하셔야 합니다. 1. input : 당일최대진입횟수(5),시작시간(180000),종료시간(0); var : C2(0,data1),T1(0,data1),entry(0,data1); var : Tcond(False,data1); if 시작시간 == 0 and date != date[1] Then{ tcond = true; T1 = TotalTrades; } if 시작시간 > 0 and (stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간)) Then{ tcond = true; T1 = TotalTrades; } if 종료시간 == 0 and date != date[1] Then{ tcond = false; if MarketPosition == 1 Then exitlong(); if MarketPosition == -1 Then ExitShort(); } if 종료시간 > 0 and (stime == 종료시간 or (stime > 종료시간 and stime[1] < 종료시간)) Then{ tcond = false; if MarketPosition == 1 Then exitlong(); if MarketPosition == -1 Then ExitShort(); } C2 = data2(C); if MarketPosition == 0 Then entry = TotalTrades-T1; Else entry = TotalTrades-T1+1; if Tcond == true then{ if entry < 당일최대진입횟수 and data2(Bdate == Bdate[1] and HighD(0) > HighD(0)[1] and HighD(0)-LowD(0) >= 0.55) Then{ buy("b"); } if entry < 당일최대진입횟수 and data2(Bdate == Bdate[1] and Lowd(0) < LowD(0)[1] and HighD(0)-LowD(0) >= 0.65) Then{ sell("s"); } } 2 input : 당일최대진입횟수(5),시작시간(0),종료시간(034500); var : C2(0,data1),T1(0,data1),entry(0,data1); var : Tcond(False,data1); if 시작시간 == 0 and date != date[1] Then{ tcond = true; T1 = TotalTrades; } if 시작시간 > 0 and (stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간)) Then{ tcond = true; T1 = TotalTrades; } if 종료시간 == 0 and date != date[1] Then{ tcond = false; if MarketPosition == 1 Then exitlong(); if MarketPosition == -1 Then ExitShort(); } if 종료시간 > 0 and (stime == 종료시간 or (stime > 종료시간 and stime[1] < 종료시간)) Then{ tcond = false; if MarketPosition == 1 Then exitlong(); if MarketPosition == -1 Then ExitShort(); } C2 = data2(C); if MarketPosition == 0 Then entry = TotalTrades-T1; Else entry = TotalTrades-T1+1; if Tcond == true then{ if entry < 당일최대진입횟수 and data2(Bdate == Bdate[1] and HighD(0) > HighD(0)[1] and HighD(0)-LowD(0) >= 0.55) Then{ buy("b"); } if entry < 당일최대진입횟수 and data2(Bdate == Bdate[1] and Lowd(0) < LowD(0)[1] and HighD(0)-LowD(0) >= 0.65) Then{ sell("s"); } } 3 input : 당일최대진입횟수(5),시작시간(180000),종료시간(034500); var : C2(0,data1),T1(0,data1),entry(0,data1); var : Tcond(False,data1); if 시작시간 == 0 and date != date[1] Then{ tcond = true; T1 = TotalTrades; } if 시작시간 > 0 and (stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간)) Then{ tcond = true; T1 = TotalTrades; } if 종료시간 == 0 and date != date[1] Then{ tcond = false; if MarketPosition == 1 Then exitlong(); if MarketPosition == -1 Then ExitShort(); } if 종료시간 > 0 and (stime == 종료시간 or (stime > 종료시간 and stime[1] < 종료시간)) Then{ tcond = false; if MarketPosition == 1 Then exitlong(); if MarketPosition == -1 Then ExitShort(); } C2 = data2(C); if MarketPosition == 0 Then entry = TotalTrades-T1; Else entry = TotalTrades-T1+1; if Tcond == true then{ if entry < 당일최대진입횟수 and data2(Bdate == Bdate[1] and HighD(0) > HighD(0)[1] and HighD(0)-LowD(0) >= 0.55) Then{ buy("b"); } if entry < 당일최대진입횟수 and data2(Bdate == Bdate[1] and Lowd(0) < LowD(0)[1] and HighD(0)-LowD(0) >= 0.65) Then{ sell("s"); } } 즐거운 하루되세요 > 목마와숙녀 님이 쓴 글입니다. > 제목 : 53143건 cme day 트레이딩 오류 > 제가 요청드린 내용은 cme day 트레이딩입니다. 금일 야간 18시00분01초부터 금일 오후 11시59분59초까지 익일 오전 00시00분01초부터 익일 오전 03시44분59초까지 금일 야간 18시00분01초부터 익일 오전 03시44분59초까지 그런데 정리해 주신 수식은 모두 다 오버나잇하면서 리버스를 거래하고 있습니다.(그림1,2,3 참조) 현재 시스템설정창 당일청산 기능으로는 cme 당일 거래가 한계가 있어 시간함수를 세팅하기 위해 요청드린 내용이오니 다시 살펴주시기 바랍니다. 항상 고맙습니다.