커뮤니티

말씀해주신 구문으로도 안됩니다...

프로필 이미지
중박주식
2016-10-19 20:54:43
123
글번호 103107
답변완료
자주 반복하여 질문해서 정말 죄송합니다,, 근데 뭐가 잘못된지 도저히 모르겠습니다. 1) 알려주신 수식을 이용해서 아래와 같이 실험을 해봤습니다. if data1(sdate) == data2(date) Then buy("b", AtMarket); ExitLong("Ex1", onclose); 위의 식대로라면 다우가 전날 장이 없을때만 거래가 안되어야 하는데, 코스피 전날 장이 없을때도 거래가 안됩니다.... 2) 그리고 아래와 같이.. 제가 질문했던 수식도 그대로 실험해봤는데... if data1(sdate) == data2(date) Then{ if data2(CloseD(0) > CloseD(1)) Then buy("b", AtMarket); ExitLong("ex", OnClose); } 전일 다우가 올른 다음날 아침 우리장에서 매수 진입이 되어야 하는데, 결과를 보면 그렇지가 않습니다. 혹시나 하여, 그 다음봉에 매수 신호가 들어가나 확인해보았더니.. 그렇지도 않습니다. 규칙을 모를정도로 랜덤으로 매수 신호가 나옵니다.... 간단하게 답변이 가능하시면 남겨주심 감사하겠고, 어려우시면 제가 내일 전화를 드리던지 하겠습니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2016-10-20 10:57:08

안녕하세요 예스스탁입니다. var : T(0,data1); if data1(DayOfWeek(sdate)) == 1 and data2(DayOfWeek(date)) == 6 Then T = 1; else if data1(DayOfWeek(sdate)) >= 2 and data1(DayOfWeek(sdate)) == data2(DayOfWeek(date)) Then T = 1; Else T = 0; plot1(T); 위 지표는 미국장이 휴장이 아니었으면 1을 휴장이었으면 0을 리턴합니다. 월요일은 미국장 종료가 지난 토요일, 화요일부터는 data1의 날짜와 같으면 휴장이 아닌것으로 판단합니다. 위 지표를 이용해 아래 시스템으로 적용하면 (미국장휴장이 아니면 첫봉에 매일매수, 15시 청산) var : T(0,data1); if data1(DayOfWeek(sdate)) == 1 and data2(DayOfWeek(date)) == 6 Then T = 1; else if data1(DayOfWeek(sdate)) >= 2 and data1(DayOfWeek(sdate)) == data2(DayOfWeek(date)) Then T = 1; Else T = 0; if T == 1 and data1(dayindex == 0) Then buy(); SetStopEndofday(150000); 첨부된 test1 그림과 같이 9월 6일과 같이 전일미국장휴장인 날에만 신호가 발생하지 않는 것을 확인하실수 있습니다.' 아래는 종가상승 조건을 추가한 내용입니다. test2그림과 같이 신호가 걸러지게 됩니다. var : T(0,data1); if data1(DayOfWeek(sdate)) == 1 and data2(DayOfWeek(date)) == 6 Then T = 1; else if data1(DayOfWeek(sdate)) >= 2 and data1(DayOfWeek(sdate)) == data2(DayOfWeek(date)) Then T = 1; Else T = 0; if T == 1 and data1(dayindex == 0) and data2(closeD(0) > CloseD(1)) Then buy(); SetStopEndofday(150000); 의도와 다르시면 02-3453-1060으로 전화주시기 바랍니다. 즐거운 하루되세요 > 중박주식 님이 쓴 글입니다. > 제목 : 말씀해주신 구문으로도 안됩니다... > 자주 반복하여 질문해서 정말 죄송합니다,, 근데 뭐가 잘못된지 도저히 모르겠습니다. 1) 알려주신 수식을 이용해서 아래와 같이 실험을 해봤습니다. if data1(sdate) == data2(date) Then buy("b", AtMarket); ExitLong("Ex1", onclose); 위의 식대로라면 다우가 전날 장이 없을때만 거래가 안되어야 하는데, 코스피 전날 장이 없을때도 거래가 안됩니다.... 2) 그리고 아래와 같이.. 제가 질문했던 수식도 그대로 실험해봤는데... if data1(sdate) == data2(date) Then{ if data2(CloseD(0) > CloseD(1)) Then buy("b", AtMarket); ExitLong("ex", OnClose); } 전일 다우가 올른 다음날 아침 우리장에서 매수 진입이 되어야 하는데, 결과를 보면 그렇지가 않습니다. 혹시나 하여, 그 다음봉에 매수 신호가 들어가나 확인해보았더니.. 그렇지도 않습니다. 규칙을 모를정도로 랜덤으로 매수 신호가 나옵니다.... 간단하게 답변이 가능하시면 남겨주심 감사하겠고, 어려우시면 제가 내일 전화를 드리던지 하겠습니다.