커뮤니티
시스템신호 2번재 매매신호부터 시작_ 재질의
2016-10-04 16:32:34
96
글번호 102471
항상 감사드립니다
아래 시스템식을 보면서 시간검증및 추가질의 합니다
1_시간설정 질의(아래설정이 맞는지?)
뉴욕시간
#17시~익일 03시 사이
(stime >= 170000 or stime < 030000)
#익일03시~익일14시30분 사이
(stime >= 030000 and stime < 143000
2_#17시~익일03시 사이에는 두번째신호부터 신호가 발생하는데
17시~익일03시 시간대에
첫번째 가상신호가 발생하고 (이떼 시스템에서는 신호발생없음)
익일 03시~14시30분 시간으로 넘어가면
17시~익일03시에서발생한 가상신호의 연장선상에서 첫번째신호가 발생합니다
이를 보정하는 방법은
=> 첫번재 가상신호가 발생하지 않았으면 03시~14:30시간에서 첫번째 신호부터 발생
첫번째 가상신호가 발생하고 청산되었으면 03시~14:30시간에서 첫번째 신호부터 발생
첫번째 가상신호가 발생하고 청산되지않았으면 가상신호가 청산된후 03시~14:30시간
첫번째 신호부터 발생이 가능한지..
감사합니다
#####################################################
##### A_17:00 ~ 03:00_ 2번째신호부터 매매 #####
##### B_03:00 ~ 14:30_ 1번째신호부터 매매 #####
####################################################
var :entrycnt(0) ,T(0),count(0);
#17시나 03시가 되면 0으로 초기화
if (stime == 170000 or (stime > 170000 and stime[1] < 170000)) or
(stime == 030000 or (stime > 030000 and stime[1] < 030000)) Then{
Entrycnt = 0;
T = 0;
count = 0;
}
# 현지시간_뉴욕 17:00 장시작~익일 03:00 #
## 동일방향 재진입금지/전일 마지막신호와 무관하게 진입 ###
if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then
Entrycnt = Entrycnt+1;
/******************************************************************************/
#매수조건이면 T는 1, 카운트 1증가
if T <= 0 and c>o and c>var77 and C>var51 and stok>stod and (xx+yy)>=-0 and c>var90 and c>var60 and c>피봇1차지지 then {
T = 1;
count = count+1;
#17시~03시 사이
if (stime >= 170000 or stime < 030000) Then{
#카운트가 2 이상이고 나머지 포지션 조건 만족할때 진입
if count >= 2 and ((entrycnt == 0) or (entrycnt >= 1 and MarketPosition == 0 and MarketPosition(1) != 1) or (MarketPosition == -1)) Then #동일방향 재진입금지#
BUY("B1_윗꼬리_51");
}
#03시~14시30분 사이
if (stime >= 030000 and stime < 143000) Then{
#카운트가 2 이상이고 나머지 포지션 조건 만족할때 진입
if count >= 1 and ((entrycnt == 0) or (entrycnt >= 1 and MarketPosition == 0 and MarketPosition(1) != 1) or (MarketPosition == -1)) Then #동일방향 재진입금지#
BUY("BB1_윗꼬리_51");
}
}
#매도조건이면 T는 -1, 카운트 1증가
if T >= 0 and c<o and c<var77 and c<var51 and stok<stod and (xx+yy)<=0 and c<var90 and c<var60 and c<피봇1차저항 Then{
T = -1;
count = count+1;
#17시~03시 사이
if (stime >= 170000 or stime < 030000) Then{
#카운트가 2 이상이고 나미저 포지션 조건 만족할때 진입
if count >= 2 and ((entrycnt == 0) or (entrycnt >= 1 and MarketPosition == 0 and MarketPosition(1) != -1) or (MarketPosition == 1)) then #동일방향 재진입금지#
Sell("S1_윗꼬리_51");
}
#03시~14시30분 사이
if (stime >= 030000 and stime < 143000) Then{
#카운트가 2 이상이고 나미저 포지션 조건 만족할때 진입
if count >= 1 and ((entrycnt == 0) or (entrycnt >= 1 and MarketPosition == 0 and MarketPosition(1) != -1) or (MarketPosition == 1)) then #동일방향 재진입금지#
Sell("SS1_윗꼬리_51");
}
}
답변 1
예스스탁 예스스탁 답변
2016-10-05 11:11:51
안녕하세요
예스스탁입니다.
1
시간설정은 정상적으로 처리되어 있습니다,'
2
문의하신 내용 고민해 보았지만 수식을 수정할 방법을 모르겠습니다.
해당 식에서 카운트 되는 내용은 진입조건의 만족여부입니다.
해당 수식에서 가상진입의 청산여부를 알수가 없습니다.
수식을 시간대별로 변수를 따로 설정해 드립니다.
문의하신 내용은 사용자분이 값 확인하면서 처리해 보셔야 할것 같습니
var : entrycnt1(0),T1(0),count1(0),entrycnt2(0),T2(0),count2(0),Tcond1(false),Tcond2(false);
#17시 초기화
if (stime == 170000 or (stime > 170000 and stime[1] < 170000)) Then{
Tcond1 = true;
Entrycnt1 = 0;
T1 = 0;
count1 = 0;
}
#3시 최기화
if (stime == 030000 or (stime > 030000 and stime[1] < 030000)) Then{
Tcond1 = true;
Entrycnt2 = 0;
count2= 0;
T2= 0;
}
/******************************************************************************/
#17시~03시 사이
if Tcond == true and (stime >= 170000 or stime < 030000) then{
if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then
Entrycnt1 = Entrycnt1+1;
if T1 <= 0 and c>o and c>var77 and C>var51 and stok>stod and (xx+yy)>=-0 and c>var90 and c>var60 and c>피봇1차지지 then {
T1 = 1;
count1 = count1+1;
if count1 >= 2 and ((entrycnt1 == 0) or (entrycnt1 >= 1 and MarketPosition == 0 and MarketPosition(1) != 1) or (MarketPosition == -1)) Then #동일방향 재진입금지#
BUY("B1_윗꼬리_51");
}
if T1 >= 0 and c<o and c<var77 and c<var51 and stok<stod and (xx+yy)<=0 and c<var90 and c<var60 and c<피봇1차저항 Then{
T1 = -1;
count = count+1;
if count1 >= 2 and ((entrycnt1 == 0) or (entrycnt1 >= 1 and MarketPosition == 0 and MarketPosition(1) != -1) or (MarketPosition == 1)) then #동일방향 재진입금지#
Sell("S1_윗꼬리_51");
}
}
#03시~14시30분 사이
if Tcond2 == true and (stime >= 030000 and stime < 143000) Then{
if T2 <= 0 and c>o and c>var77 and C>var51 and stok>stod and (xx+yy)>=-0 and c>var90 and c>var60 and c>피봇1차지지 then {
T2 = 1;
count2 = count2+1;
if count2 >= 1 and ((entrycnt2 == 0) or (entrycnt2 >= 1 and MarketPosition == 0 and MarketPosition(1) != 1) or (MarketPosition == -1)) Then #동일방향 재진입금지#
BUY("BB1_윗꼬리_51");
}
if T2 >= 0 and c<o and c<var77 and c<var51 and stok<stod and (xx+yy)<=0 and c<var90 and c<var60 and c<피봇1차저항 Then{
T2 = -1;
count2 = count2+1;
if count2 >= 1 and ((entrycnt2 == 0) or (entrycnt2 >= 1 and MarketPosition == 0 and MarketPosition(1) != -1) or (MarketPosition == 1)) then #동일방향 재진입금지#
Sell("SS1_윗꼬리_51");
}
}
즐거운 하루되세요
> 조민철 님이 쓴 글입니다.
> 제목 : 시스템신호 2번재 매매신호부터 시작_ 재질의
> 항상 감사드립니다
아래 시스템식을 보면서 시간검증및 추가질의 합니다
1_시간설정 질의(아래설정이 맞는지?)
뉴욕시간
#17시~익일 03시 사이
(stime >= 170000 or stime < 030000)
#익일03시~익일14시30분 사이
(stime >= 030000 and stime < 143000
2_#17시~익일03시 사이에는 두번째신호부터 신호가 발생하는데
17시~익일03시 시간대에
첫번째 가상신호가 발생하고 (이떼 시스템에서는 신호발생없음)
익일 03시~14시30분 시간으로 넘어가면
17시~익일03시에서발생한 가상신호의 연장선상에서 첫번째신호가 발생합니다
이를 보정하는 방법은
=> 첫번재 가상신호가 발생하지 않았으면 03시~14:30시간에서 첫번째 신호부터 발생
첫번째 가상신호가 발생하고 청산되었으면 03시~14:30시간에서 첫번째 신호부터 발생
첫번째 가상신호가 발생하고 청산되지않았으면 가상신호가 청산된후 03시~14:30시간
첫번째 신호부터 발생이 가능한지..
감사합니다
#####################################################
##### A_17:00 ~ 03:00_ 2번째신호부터 매매 #####
##### B_03:00 ~ 14:30_ 1번째신호부터 매매 #####
####################################################
var :entrycnt(0) ,T(0),count(0);
#17시나 03시가 되면 0으로 초기화
if (stime == 170000 or (stime > 170000 and stime[1] < 170000)) or
(stime == 030000 or (stime > 030000 and stime[1] < 030000)) Then{
Entrycnt = 0;
T = 0;
count = 0;
}
# 현지시간_뉴욕 17:00 장시작~익일 03:00 #
## 동일방향 재진입금지/전일 마지막신호와 무관하게 진입 ###
if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then
Entrycnt = Entrycnt+1;
/******************************************************************************/
#매수조건이면 T는 1, 카운트 1증가
if T <= 0 and c>o and c>var77 and C>var51 and stok>stod and (xx+yy)>=-0 and c>var90 and c>var60 and c>피봇1차지지 then {
T = 1;
count = count+1;
#17시~03시 사이
if (stime >= 170000 or stime < 030000) Then{
#카운트가 2 이상이고 나머지 포지션 조건 만족할때 진입
if count >= 2 and ((entrycnt == 0) or (entrycnt >= 1 and MarketPosition == 0 and MarketPosition(1) != 1) or (MarketPosition == -1)) Then #동일방향 재진입금지#
BUY("B1_윗꼬리_51");
}
#03시~14시30분 사이
if (stime >= 030000 and stime < 143000) Then{
#카운트가 2 이상이고 나머지 포지션 조건 만족할때 진입
if count >= 1 and ((entrycnt == 0) or (entrycnt >= 1 and MarketPosition == 0 and MarketPosition(1) != 1) or (MarketPosition == -1)) Then #동일방향 재진입금지#
BUY("BB1_윗꼬리_51");
}
}
#매도조건이면 T는 -1, 카운트 1증가
if T >= 0 and c<o and c<var77 and c<var51 and stok<stod and (xx+yy)<=0 and c<var90 and c<var60 and c<피봇1차저항 Then{
T = -1;
count = count+1;
#17시~03시 사이
if (stime >= 170000 or stime < 030000) Then{
#카운트가 2 이상이고 나미저 포지션 조건 만족할때 진입
if count >= 2 and ((entrycnt == 0) or (entrycnt >= 1 and MarketPosition == 0 and MarketPosition(1) != -1) or (MarketPosition == 1)) then #동일방향 재진입금지#
Sell("S1_윗꼬리_51");
}
#03시~14시30분 사이
if (stime >= 030000 and stime < 143000) Then{
#카운트가 2 이상이고 나미저 포지션 조건 만족할때 진입
if count >= 1 and ((entrycnt == 0) or (entrycnt >= 1 and MarketPosition == 0 and MarketPosition(1) != -1) or (MarketPosition == 1)) then #동일방향 재진입금지#
Sell("SS1_윗꼬리_51");
}
}
이전글