커뮤니티
해외선물(크루드오일) 진입 및 청산 관련
2013-06-29 06:17:26
670
글번호 64853
아래 사항처럼 기존 문의한 결과 및 답변의 핵심사항으로
해외선물인 경우 새벽의 특정한 지정시간에 청산을 할수 없다는 것이 아쉽지만
어쩔수가 없네요...
그래서 생각해낸 아이디어인데 방법은 이렇습니다.
크루드오일 연결선물 183분챠트(한국시간)의 2개봉에서만 거래를 합니다.
보고서상 진입되는 표시시간 봉은 0118분봉 과 0421분봉 2개입니다.
: 0615분봉의 첫신호로 종결
경험상 첫신호가 발생(0118분봉-신호1번 으로 표시)하고 4번째 까지는 무의미하여
신호는 발생하되 나타나지 않도록 하고(실 진입 안함)
5번째신호(계속스위칭 됨으로 방향은 신호1번과 동일함)부터
0118분봉에서 실지 진입합니다.
진입후 0118분봉이 완성되기 이전까지 몇번의 진입 청산이 있겠지요
진행봉 기준 진입이기 때문에 진입신호 표시는 장중에만 표시됩니다.
일단 5번째 신호부터는 모두 신호되로 진입(스위칭됨) 합니다.
그후 0118분봉 이 종료되고 난 다음봉 즉
0421분봉이 시작되면 0421분봉이 생기고 난 이후 첫번째 신호로 0118분봉을
종결 합니다.
(즉 0118분봉에서 생긴 마지막 진입신호를 익절이든 손절이든 종결 해야 되기 때문에)
즉 0421분봉의 첫신호는 종결신호로서 살려서 사용한다는 것입니다.
그런데 이때의 첫신호는 스위칭이 되지 않게 해야하는데
즉 0118분봉의 마지막 진입이 매도진입 이었다면
0421분봉의 1번째 신호는 당연히 매수진입 되며 스위칭할것입니다.
이때 스위칭이 아닌 청산이 이루어져야 합니다.
즉 스위칭이 일어나지 않고 0118분봉의 마지막 진입을 그냥 청산합니다.
(이때 청산은 SetStopEndofday 와는 달리 당일청산이 아님)
0421분봉도 0118분봉과 같이 초기 몇개신호는 실제 진입은 안합니다.
0421분봉의 2번째~7번째 신호는 0118분봉의 1번째~4번째 진입신호와 마찬가지로
무의미하여 신호는 발생하되 나타나지 않도록 하고(실 진입 안함)
8번째 신호부터 사용하여 실제 진입합니다.
(계속스위칭 됨으로 0421분봉 8번째 신호의 방향은 2번째 신호의 방향과 동일함)
0421분봉의 다음 분봉인 0615분봉의 첫신호(0615분봉-신호1번 으로 표시)를 이용
(앞의 0421분봉의 첫신호로 0118분봉의 마지막 진입을 종결한것과 같이)
0421분봉에서 마지막 진입된 신호를 청산 합니다.
: 실제 청산은 아니지만 이 신호를 청산신호처럼 사용한다는 의미이고
스위칭신호로 발생하는데 청산으로만 사용하고 진입은 안하게
0615분봉의 1번째신호를 이용 한 이후에는 계속 실제 진입은 안하다가
한국시간 기준 저녁이 되어 0118분봉이 시작되면
앞에 기술된 0118분봉의 진입 기준으로 다시 당일 거래를 시작합니다.
이렇게 하는 방법을 알려주시면 감사하겠습니다.
###########
안녕하세요
예스스탁입니다.
1.
수식에서는 시작(봉의시가)시간으로 봉을 지정해서 작성 하고
리포트 표시도 신호가 발생한 봉의 시가시간으로만 표시가 됩니다.
(표시된 시간에 시작한 봉에 신호가 있었다는 내용입니다.)
실제 진입시간으로 보실수는 없습니다.
예스글로벌은 차트의 표시시간은 해당봉의 끝시간이 표시되고
수식에서도 시작시간을 이용합니다.
아래 지표식 적용해 보시면 해당 봉의 시가시간 확인하실 수 있습니다.
plot1(stime);
2
183분봉에서는 3시 17분으로 시작하는 봉이 없습니다.
1시18분봉 다음 4시21분봉이므로
해당 식이면 4시 21분봉 완성시 청산신호가 발생합니다.
테스트 결과 해당봉에 신호 나오고 있습니다.
수식에서 모든 if문은 봉완성시 입니다.
특정시간으로 청산하기 위해서는 강제청산함수인
SetStopEndofday를 사용해야 하는데 해당 함수는 지정한 시간이후로
진입이 나오지 않게 하므로 당일 밤 12시 까지 진입신호가 발생하지 않습니다
3시 17분에 정확히 청산하실 방법은 없으며
if문으로 시간을 지정해 청산하실 수 밖에 없습니다.
즐거운 하루되세요
> 우후훗 님이 쓴 글입니다.
> 제목 : 해외선물 신호발생시간 과 청산시간이 안맞네요
> 해외선물(크루드오일) 183분봉을 운영하고 있습니다.
====================
그런데 챠트를 한국시간으로 하고
한국시간기준 당일 오후 22시17분 ~ 익일 02시17분까지만 신호발생시키고
매일 03시17분에 진입되어 있는 포지션을 일괄청산하는 식을 아래와 같이 운영하고
있습니다.
그런데 실제 돌려보면 보고서상에는 실제 진입시간은 안뜨고 봉길이에
따른 시간만 표시됩니다.
실제 진입한 시간을 볼수는 없는지요?
예를 들어
2013-06-27 2:15 매수 <----와 같이... 그런데 보고서는 아래와같이
183분봉의 봉을 표시하는 시간 즉 1:18 이나 4:21으로 표시됩니다.
<실제 보고서상의 표시 예>
2013-06-27 1:18 매수 b11 95.02 1
2013-06-27 4:21 매수청산 ExitLong_#5 95.24 0.18
2013-06-27 4:21 매도 s11 95.24 1
2013-06-27 4:21 매도청산 ExitShort_#0 95.3 -0.1
또 문의해서 답변주신대로 청산시간을 아래와같이 넣었습니다.
청산시간이 프로그램과는 별개로 나오는데 실지 코딩은 아래와 같읍니다.
#진입신호 발생시간--->한국: 22:17 ~ 익일 오전 02:17)
if (stime >= 161700 and stime < 235950) or (stime <= 021700) and
<매수,매도 진입조건>
#청산신호 발생시간--->한국 익일 오전 03:17)
if stime == 031700 or (stime > 031700 and stime[1] < 031700)
Then{
ExitLong("매수청산1");
ExitShort("매도청산1"); }
돌려보면 신호발생 시작시간은 저녁 10시 45분인가 시작했는데
(프로그램상 이때 신호가 발생해서...)
오늘 아침 6시 현재에도 청산안되었습니다.
챠트에 한국시간이 설정되어 있고
진입신호 발생시작 시간을 정확하게 표시못한다는 것
(22시17분부터 발생시키고자 함에도 16시17분으로 표시하여야 하는 문제와)
02시17분 까지만 조건만족시 신호발생시키고 이후 1시간후인 03시17분에는
기 최종 진입된 신호를 일괄 청산해야 하는데...
03시17분에 청산되지 않는 이유가 무엇인지?
답변 부탁드립니다. 감사합니다.
답변 1
예스스탁 예스스탁 답변
2013-07-01 10:11:08
안녕하세요
예스스탁입니다.
문의하신 내요은 수식으로 가능하지 않습니다.
하나의 봉에서 신호의 발생갯수는 따로 카운트가 가능하지 않고
자동주문에서 신호가 발생하는데 나타내지 않거나
신호가 발생하는데 주문을 내지 않는 방법도 없습니다.
도움을 드리지 못해 죄송합니다.
즐거운 하루되세요
> 우후훗 님이 쓴 글입니다.
> 제목 : 해외선물(크루드오일) 진입 및 청산 관련
> 아래 사항처럼 기존 문의한 결과 및 답변의 핵심사항으로
해외선물인 경우 새벽의 특정한 지정시간에 청산을 할수 없다는 것이 아쉽지만
어쩔수가 없네요...
그래서 생각해낸 아이디어인데 방법은 이렇습니다.
크루드오일 연결선물 183분챠트(한국시간)의 2개봉에서만 거래를 합니다.
보고서상 진입되는 표시시간 봉은 0118분봉 과 0421분봉 2개입니다.
: 0615분봉의 첫신호로 종결
경험상 첫신호가 발생(0118분봉-신호1번 으로 표시)하고 4번째 까지는 무의미하여
신호는 발생하되 나타나지 않도록 하고(실 진입 안함)
5번째신호(계속스위칭 됨으로 방향은 신호1번과 동일함)부터
0118분봉에서 실지 진입합니다.
진입후 0118분봉이 완성되기 이전까지 몇번의 진입 청산이 있겠지요
진행봉 기준 진입이기 때문에 진입신호 표시는 장중에만 표시됩니다.
일단 5번째 신호부터는 모두 신호되로 진입(스위칭됨) 합니다.
그후 0118분봉 이 종료되고 난 다음봉 즉
0421분봉이 시작되면 0421분봉이 생기고 난 이후 첫번째 신호로 0118분봉을
종결 합니다.
(즉 0118분봉에서 생긴 마지막 진입신호를 익절이든 손절이든 종결 해야 되기 때문에)
즉 0421분봉의 첫신호는 종결신호로서 살려서 사용한다는 것입니다.
그런데 이때의 첫신호는 스위칭이 되지 않게 해야하는데
즉 0118분봉의 마지막 진입이 매도진입 이었다면
0421분봉의 1번째 신호는 당연히 매수진입 되며 스위칭할것입니다.
이때 스위칭이 아닌 청산이 이루어져야 합니다.
즉 스위칭이 일어나지 않고 0118분봉의 마지막 진입을 그냥 청산합니다.
(이때 청산은 SetStopEndofday 와는 달리 당일청산이 아님)
0421분봉도 0118분봉과 같이 초기 몇개신호는 실제 진입은 안합니다.
0421분봉의 2번째~7번째 신호는 0118분봉의 1번째~4번째 진입신호와 마찬가지로
무의미하여 신호는 발생하되 나타나지 않도록 하고(실 진입 안함)
8번째 신호부터 사용하여 실제 진입합니다.
(계속스위칭 됨으로 0421분봉 8번째 신호의 방향은 2번째 신호의 방향과 동일함)
0421분봉의 다음 분봉인 0615분봉의 첫신호(0615분봉-신호1번 으로 표시)를 이용
(앞의 0421분봉의 첫신호로 0118분봉의 마지막 진입을 종결한것과 같이)
0421분봉에서 마지막 진입된 신호를 청산 합니다.
: 실제 청산은 아니지만 이 신호를 청산신호처럼 사용한다는 의미이고
스위칭신호로 발생하는데 청산으로만 사용하고 진입은 안하게
0615분봉의 1번째신호를 이용 한 이후에는 계속 실제 진입은 안하다가
한국시간 기준 저녁이 되어 0118분봉이 시작되면
앞에 기술된 0118분봉의 진입 기준으로 다시 당일 거래를 시작합니다.
이렇게 하는 방법을 알려주시면 감사하겠습니다.
###########
안녕하세요
예스스탁입니다.
1.
수식에서는 시작(봉의시가)시간으로 봉을 지정해서 작성 하고
리포트 표시도 신호가 발생한 봉의 시가시간으로만 표시가 됩니다.
(표시된 시간에 시작한 봉에 신호가 있었다는 내용입니다.)
실제 진입시간으로 보실수는 없습니다.
예스글로벌은 차트의 표시시간은 해당봉의 끝시간이 표시되고
수식에서도 시작시간을 이용합니다.
아래 지표식 적용해 보시면 해당 봉의 시가시간 확인하실 수 있습니다.
plot1(stime);
2
183분봉에서는 3시 17분으로 시작하는 봉이 없습니다.
1시18분봉 다음 4시21분봉이므로
해당 식이면 4시 21분봉 완성시 청산신호가 발생합니다.
테스트 결과 해당봉에 신호 나오고 있습니다.
수식에서 모든 if문은 봉완성시 입니다.
특정시간으로 청산하기 위해서는 강제청산함수인
SetStopEndofday를 사용해야 하는데 해당 함수는 지정한 시간이후로
진입이 나오지 않게 하므로 당일 밤 12시 까지 진입신호가 발생하지 않습니다
3시 17분에 정확히 청산하실 방법은 없으며
if문으로 시간을 지정해 청산하실 수 밖에 없습니다.
즐거운 하루되세요
> 우후훗 님이 쓴 글입니다.
> 제목 : 해외선물 신호발생시간 과 청산시간이 안맞네요
> 해외선물(크루드오일) 183분봉을 운영하고 있습니다.
====================
그런데 챠트를 한국시간으로 하고
한국시간기준 당일 오후 22시17분 ~ 익일 02시17분까지만 신호발생시키고
매일 03시17분에 진입되어 있는 포지션을 일괄청산하는 식을 아래와 같이 운영하고
있습니다.
그런데 실제 돌려보면 보고서상에는 실제 진입시간은 안뜨고 봉길이에
따른 시간만 표시됩니다.
실제 진입한 시간을 볼수는 없는지요?
예를 들어
2013-06-27 2:15 매수 <----와 같이... 그런데 보고서는 아래와같이
183분봉의 봉을 표시하는 시간 즉 1:18 이나 4:21으로 표시됩니다.
<실제 보고서상의 표시 예>
2013-06-27 1:18 매수 b11 95.02 1
2013-06-27 4:21 매수청산 ExitLong_#5 95.24 0.18
2013-06-27 4:21 매도 s11 95.24 1
2013-06-27 4:21 매도청산 ExitShort_#0 95.3 -0.1
또 문의해서 답변주신대로 청산시간을 아래와같이 넣었습니다.
청산시간이 프로그램과는 별개로 나오는데 실지 코딩은 아래와 같읍니다.
#진입신호 발생시간--->한국: 22:17 ~ 익일 오전 02:17)
if (stime >= 161700 and stime < 235950) or (stime <= 021700) and
<매수,매도 진입조건>
#청산신호 발생시간--->한국 익일 오전 03:17)
if stime == 031700 or (stime > 031700 and stime[1] < 031700)
Then{
ExitLong("매수청산1");
ExitShort("매도청산1"); }
돌려보면 신호발생 시작시간은 저녁 10시 45분인가 시작했는데
(프로그램상 이때 신호가 발생해서...)
오늘 아침 6시 현재에도 청산안되었습니다.
챠트에 한국시간이 설정되어 있고
진입신호 발생시작 시간을 정확하게 표시못한다는 것
(22시17분부터 발생시키고자 함에도 16시17분으로 표시하여야 하는 문제와)
02시17분 까지만 조건만족시 신호발생시키고 이후 1시간후인 03시17분에는
기 최종 진입된 신호를 일괄 청산해야 하는데...
03시17분에 청산되지 않는 이유가 무엇인지?
답변 부탁드립니다. 감사합니다.