커뮤니티

시스템식 부탁드립니다.

프로필 이미지
양치기
2019-12-19 22:02:56
240
글번호 134550
답변완료
항상 도움 주셔서 감사합니다. 지난번 질문내용입니다. 종목 : 해선 차트 : 10분봉 매매타임 : 밤 10시부터 익일 02사이 매매 매매횟수 : 하루에 1회 장시작은 아침 8시에 시작 되지만 매매는 밤 10시부터 새벽 2시까지 사이에만 포지션 진입을 합니다. (청산은 별도로 시간을 정해서 청산 예정) 매수식 : 매매는 10분봉에서 하지만 밤 10시부터 당일 일봉의 몸통(고가-저가) 크기와 일봉의 윗꼬리 크기를 측정하여 일봉의 윗꼬리가 일봉의 고가-저가 크기의 10% 이내일때 매수하는 시스템식 부탁드립니다. 매도식 : 매매는 10분봉에서 하지만 밤 10시부터 당일 일봉의 몸통(고가-저가) 크기와 일봉의 아래꼬리 크기를 측정하여 일봉의 아래꼬리가 일봉의 고가-저가 크기의 10% 이내일때 매도하는 시스템식 부탁드립니다. 위 조건에 맞는 시스템식 부탁드립니다. 재질문 사유 : 제가 부탁드린 내용은 22시부터 02시 사이에만 포지션을 진입하는 조건이며, 청산은 제가 따로 시간을 정해서 청산 하고자 합니다. 즉 일봉의 진입 조건이 맞으면 22시랑 02시 사이에 매수든, 매도든 한번만 포지션 진입을 하고 청산은 별도의 시간을 정해서 청산하고자 합니다. 작성해 주신 코딩 내용을 실행해보니 새벽 02시에 무조건 청산이 되는것 같습니다. 수정 부탁드립니다. 그리고 아래 수식중 이해가 안되는 부분이 있습니다. 죄송하지만 주석으로 설명 좀 부탁드립니다. 1) if sdate != sdate[1] Then 2) if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then 3) if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then ========================================================= input : starttime(220000),endtime(020000); var : Tcond(false),entry(0),t(0); if sdate != sdate[1] Then SetStopEndofday(endtime); if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; } if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { SetStopEndofday(0); Tcond = true; entry = 0; } if tcond == true then { if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry+1; if entry < 1 then { t = 0; if t == 0 and DayHigh-max(C,DayOpen) <= (DayHigh-DayLow)*0.10 Then { t = 1; buy(); } if t == 0 and min(C,dayopen)-daylow <= (DayHigh-DayLow)*0.10 Then { t = 1; sell(); } } } =================================================== 시스템식 요청 2) 종목 : 해선 차트 : 10분봉 매매타임 : 새벽 02시에 무조건 포지션 진입 매매횟수 : 하루 1회 매매청산 : 새벽 05시 청산 진입조건식 : 새벽 02시에 현재가가 새벽 02시까지의 하루 일봉 중에서 고가 - 저가 크기의 고가의 20% 이내일 경우 매수하고 (현재가가 기준으로 윗꼬리가 당일 고가-저가의 20% 이내일 경우 매수) 또는 새벽 02시에 현재가가 새벽 02시까지의 하루 일봉 중에서 고가 - 저가 크기의 저가의 20% 이내일 경우 매도하는 (현재가가 기준으로 아래꼬리가 당일 고가-저가의 20% 이내일 경우 매도) 시스템식 부탁드립니다. 즉 현재가가 캔들의 고가권의 20% 이내에서 머무를 경우 매수 현재가가 캔들의 저가권의 20% 이내에서 머무를 경우 매도하는 시스템식 부탁드립니다. 감사합니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2019-12-20 10:21:53

안녕하세요 예스스탁입니다. 1) 0시 기준 첫봉입니다. 날짜변경을 의미합니다. if sdate != sdate[1] Then 2) 현재는 포지션이 0이 아니고 전봉과 현재봉의 포지션이 다르다라는 내용으로 매수나 매도로 진입이 발생했다는 것을 의미합니다. if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then 3) 현재봉과 전봉의 날짜가 다른데(날짜변경이후 첫봉) 현재봉 시간이 endtime이후이거나 현재봉과 전봉의 날짜가 같은데 현재시간은 endtime이후이고 전봉은 이전이라는 의미입니다. 0시이후에 endtime으로 지정한 시간 이후의 첫봉을 지칭하는 표현입니다. if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then 1 당일 청산을 제외했습니다. input : starttime(220000),endtime(020000); var : Tcond(false),entry(0),t(0); if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; } if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Tcond = true; entry = 0; } if tcond == true then { if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry+1; if entry < 1 then { t = 0; if t == 0 and DayHigh-max(C,DayOpen) <= (DayHigh-DayLow)*0.10 Then { t = 1; buy(); } if t == 0 and min(C,dayopen)-daylow <= (DayHigh-DayLow)*0.10 Then { t = 1; sell(); } } } 2 input : ntime(020000); var : Tcond(false),entry(0),t(0); if (sdate != sdate[1] and stime >= ntime) or (sdate == sdate[1] and stime >= ntime and stime[1] < ntime) then { if C >= DayHigh-(dayhigh-daylow)*0.2 Then buy(); if C <= DayLow+(dayhigh-daylow)*0.2 Then sell(); } SetStopEndofday(050000); 즐거운 하루되세요 > 양치기 님이 쓴 글입니다. > 제목 : 시스템식 부탁드립니다. > 항상 도움 주셔서 감사합니다. 지난번 질문내용입니다. 종목 : 해선 차트 : 10분봉 매매타임 : 밤 10시부터 익일 02사이 매매 매매횟수 : 하루에 1회 장시작은 아침 8시에 시작 되지만 매매는 밤 10시부터 새벽 2시까지 사이에만 포지션 진입을 합니다. (청산은 별도로 시간을 정해서 청산 예정) 매수식 : 매매는 10분봉에서 하지만 밤 10시부터 당일 일봉의 몸통(고가-저가) 크기와 일봉의 윗꼬리 크기를 측정하여 일봉의 윗꼬리가 일봉의 고가-저가 크기의 10% 이내일때 매수하는 시스템식 부탁드립니다. 매도식 : 매매는 10분봉에서 하지만 밤 10시부터 당일 일봉의 몸통(고가-저가) 크기와 일봉의 아래꼬리 크기를 측정하여 일봉의 아래꼬리가 일봉의 고가-저가 크기의 10% 이내일때 매도하는 시스템식 부탁드립니다. 위 조건에 맞는 시스템식 부탁드립니다. 재질문 사유 : 제가 부탁드린 내용은 22시부터 02시 사이에만 포지션을 진입하는 조건이며, 청산은 제가 따로 시간을 정해서 청산 하고자 합니다. 즉 일봉의 진입 조건이 맞으면 22시랑 02시 사이에 매수든, 매도든 한번만 포지션 진입을 하고 청산은 별도의 시간을 정해서 청산하고자 합니다. 작성해 주신 코딩 내용을 실행해보니 새벽 02시에 무조건 청산이 되는것 같습니다. 수정 부탁드립니다. 그리고 아래 수식중 이해가 안되는 부분이 있습니다. 죄송하지만 주석으로 설명 좀 부탁드립니다. 1) if sdate != sdate[1] Then 2) if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then 3) if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then ========================================================= input : starttime(220000),endtime(020000); var : Tcond(false),entry(0),t(0); if sdate != sdate[1] Then SetStopEndofday(endtime); if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; } if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { SetStopEndofday(0); Tcond = true; entry = 0; } if tcond == true then { if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry+1; if entry < 1 then { t = 0; if t == 0 and DayHigh-max(C,DayOpen) <= (DayHigh-DayLow)*0.10 Then { t = 1; buy(); } if t == 0 and min(C,dayopen)-daylow <= (DayHigh-DayLow)*0.10 Then { t = 1; sell(); } } } =================================================== 시스템식 요청 2) 종목 : 해선 차트 : 10분봉 매매타임 : 새벽 02시에 무조건 포지션 진입 매매횟수 : 하루 1회 매매청산 : 새벽 05시 청산 진입조건식 : 새벽 02시에 현재가가 새벽 02시까지의 하루 일봉 중에서 고가 - 저가 크기의 고가의 20% 이내일 경우 매수하고 (현재가가 기준으로 윗꼬리가 당일 고가-저가의 20% 이내일 경우 매수) 또는 새벽 02시에 현재가가 새벽 02시까지의 하루 일봉 중에서 고가 - 저가 크기의 저가의 20% 이내일 경우 매도하는 (현재가가 기준으로 아래꼬리가 당일 고가-저가의 20% 이내일 경우 매도) 시스템식 부탁드립니다. 즉 현재가가 캔들의 고가권의 20% 이내에서 머무를 경우 매수 현재가가 캔들의 저가권의 20% 이내에서 머무를 경우 매도하는 시스템식 부탁드립니다. 감사합니다.