커뮤니티
시스템식 수정
2013-03-25 16:17:52
224
글번호 61190
항상감사드립니다
아래 시스템식으로 유로선물에 사용하고 있습니다
시스템 매매는 30틱봉으로 적용하고 있는데
이시스템식에
청산식을 1분봉의 삼각가중 200 이평선을 사용하여 수정하고 싶습니다
## 시스템식1_ 30틱봉 ##
var11=DayHigh()-DayLow();
var14=var11*0.5;
var18=(DayLow()+var14);
value1 = (DayLow(1)+(DayHigh(1)-DayLow(1))*0.5); ;
# 매수 #
if MarketPosition <= 0 and var18 > var18[1] Then
buy();
# 매도 #
if MarketPosition >= 0 and var18 < var18[1] Then
sell();
질문A.
위시스템식에 청산식을
1분봉챠트에서
현재포지션이 매수면 삼각가중 200 이평 하향돌파시 매수청산
현재포지션이 매도면 삼각가중 200 이평 상향돌파시 매도청산
추가하고 싶습니다..
시스템셋팅시 보조챠트를 사용하는것 같던데 자세한 설명도 부탁드립니다.
질문 B.
시스템식을 30틱봉으로 하다보니 하루이상의 자료가 없습니다
당일발생한 신호는 문제가 없는데
전일매수신호가 발생하여 진행하다 챠트가 사라지면서 매수신호가 없어지고
아침7시에 매수신호조건이면 다시 매수신호가 발생합니다(실포지션은 전일부터 매수보유중입니다)
실포지션을 확인후 신호발생할수 있는지 궁금합니다.
아니면
전일매수조건일때 아침7시 장시작후 같은매수조건이면 신호발생금지
전일매수조건일때 아침7시 장시작후 청산/매도조건이면 청산/매도신호발생
전일매도조건일때 아침7시 장시작후 같은매도조건이면 신호발생금지
전일매도조건일때 아침7시 장시작후 청산/매수조건이면 청산/매수신호발생
질문C.
a-1.시스템식1에서 장종료시간을 매일 새벽 5시30분으로 설정하여 모든포지션을 청산
(매일 1번 강제종료및 강제청산)
a-2.5시30분에 강제청산후 7시에 장시작시 첫신호는 진입신호만 그이후는
청산/진입가 능
b.시스템식1에서 장종료시간을 매주 토요일 새벽 5시30분에 모든포지션 청산
(1주일에 1번 강제종료및 강제청산)
시스템설정으로 하면 신호가 다르게 나와서 질문드립니다
항상감사드립니다..
답변 1
예스스탁 예스스탁 답변
2013-03-25 17:15:05
안녕하세요
예스스탁입니다.
1,
해당 내용 수식으로 구현해 사용하시기 어렵습니다.
예스글로벌의 경우 틱차트에 참조데이터가 추가되지 않아
1분봉 차트를 참조데이터로 사용할수 없고
수식에서 1분봉의 삼각가중이평을 구하는 부분도
틱봉은 시간의 경계가 하나의 봉에 포함되어 정확히 1분단위로
봉을 나눌수도 없어 식상에서 구현한 값은 실제 1분봉에서 보시는
값과 차이가 발생합니다.
또한 1분봉으로 200개 이므로 차트상 약 200봉 가량이 지난 시점부터
값이 계산이 되니 유의하시기 바랍니다.
Input : Length(200);
Var : TLen(0,data2),TRIma(0,data2);
var : cnt(0),count(0),sum1(0),mav1(0),TF(0),sum2(0),TMav(0);
Array : CC[200](0),MAV[200](0);
TF = TimeToMinutes(stime);
if dayindex() == 0 or (TF < TF[1] and stime > stime[1]) Then{
for cnt = 1 to 199{
CC[cnt] = CC[cnt-1][1];
Mav[cnt] = Mav[cnt-1][1];
}
}
CC[0] = C;
sum1 = 0;
if CC[Tlen] > 0 Then{
for count = 0 to TLen-1{
sum1 = sum1+CC[count];
}
mav[0] = sum1/TLen;
}
sum2 = 0;
if mav[Tlen] > 0 Then{
for count = 0 to TLen-1{
sum2 = sum2+Mav[count];
}
Tmav = sum2/TLen;
}
var11=DayHigh()-DayLow();
var14=var11*0.5;
var18=(DayLow()+var14);
value1 = (DayLow(1)+(DayHigh(1)-DayLow(1))*0.5); ;
# 매수 #
if MarketPosition <= 0 and var18 > var18[1] Then
buy();
# 매도 #
if MarketPosition >= 0 and var18 < var18[1] Then
sell();
if MarketPosition == 1 and CrossDown(c,Tmav) and Tmav > 0 Then
exitlong();
if MarketPosition == 1 and CrossUp(c,Tmav) and Tmav > 0 Then
ExitShort();
2.
시스템은 차트에서만 신호와 포지션이 확인이 가능하므로
차트에 없는 날짜의 거래내역은 알수가 없어
문의하신 부분은 따로 해결할 방법이 없습니다.
3. 매일 5시 30분에 청산
Input : Length(200);
Var : TLen(0,data2),TRIma(0,data2);
var : cnt(0),count(0),sum1(0),mav1(0),TF(0),sum2(0),TMav(0);
Array : CC[200](0),MAV[200](0);
TF = TimeToMinutes(stime);
if dayindex() == 0 or (TF < TF[1] and stime > stime[1]) Then{
for cnt = 1 to 199{
CC[cnt] = CC[cnt-1][1];
Mav[cnt] = Mav[cnt-1][1];
}
}
CC[0] = C;
sum1 = 0;
if CC[Tlen] > 0 Then{
for count = 0 to TLen-1{
sum1 = sum1+CC[count];
}
mav[0] = sum1/TLen;
}
sum2 = 0;
if mav[Tlen] > 0 Then{
for count = 0 to TLen-1{
sum2 = sum2+Mav[count];
}
Tmav = sum2/TLen;
}
var11=DayHigh()-DayLow();
var14=var11*0.5;
var18=(DayLow()+var14);
value1 = (DayLow(1)+(DayHigh(1)-DayLow(1))*0.5); ;
if stime >= 70000 or stime < 053000 Then{
# 매수 #
if MarketPosition <= 0 and var18 > var18[1] Then
buy();
# 매도 #
if MarketPosition >= 0 and var18 < var18[1] Then
sell();
if MarketPosition == 1 and CrossDown(c,Tmav) and Tmav > 0 Then
exitlong();
if MarketPosition == 1 and CrossUp(c,Tmav) and Tmav > 0 Then
ExitShort();
}
if stime == 053000 or (stime > 053000 and stime[1] < 053000) Then{
exitlong();
ExitShort();
}
4. 토요일 5시30분에 청산
Input : Length(200);
Var : TLen(0,data2),TRIma(0,data2);
var : cnt(0),count(0),sum1(0),mav1(0),TF(0),sum2(0),TMav(0);
Array : CC[200](0),MAV[200](0);
TF = TimeToMinutes(stime);
if dayindex() == 0 or (TF < TF[1] and stime > stime[1]) Then{
for cnt = 1 to 199{
CC[cnt] = CC[cnt-1][1];
Mav[cnt] = Mav[cnt-1][1];
}
}
CC[0] = C;
sum1 = 0;
if CC[Tlen] > 0 Then{
for count = 0 to TLen-1{
sum1 = sum1+CC[count];
}
mav[0] = sum1/TLen;
}
sum2 = 0;
if mav[Tlen] > 0 Then{
for count = 0 to TLen-1{
sum2 = sum2+Mav[count];
}
Tmav = sum2/TLen;
}
var11=DayHigh()-DayLow();
var14=var11*0.5;
var18=(DayLow()+var14);
value1 = (DayLow(1)+(DayHigh(1)-DayLow(1))*0.5); ;
if (DayOfWeek(sdate) >= 1 and DayOfWeek(sdate) <=5) or (DayOfWeek(sdate) == 6 and stime < 053000) Then{
# 매수 #
if MarketPosition <= 0 and var18 > var18[1] Then
buy();
# 매도 #
if MarketPosition >= 0 and var18 < var18[1] Then
sell();
if MarketPosition == 1 and CrossDown(c,Tmav) and Tmav > 0 Then
exitlong();
if MarketPosition == 1 and CrossUp(c,Tmav) and Tmav > 0 Then
ExitShort();
}
if DayOfWeek(sdate) == 6 and (stime == 053000 or (stime > 053000 and stime[1] < 053000)) Then{
exitlong();
ExitShort();
}
즐거운 하루되세요
> 조민철 님이 쓴 글입니다.
> 제목 : 시스템식 수정
> 항상감사드립니다
아래 시스템식으로 유로선물에 사용하고 있습니다
시스템 매매는 30틱봉으로 적용하고 있는데
이시스템식에
청산식을 1분봉의 삼각가중 200 이평선을 사용하여 수정하고 싶습니다
## 시스템식1_ 30틱봉 ##
var11=DayHigh()-DayLow();
var14=var11*0.5;
var18=(DayLow()+var14);
value1 = (DayLow(1)+(DayHigh(1)-DayLow(1))*0.5); ;
# 매수 #
if MarketPosition <= 0 and var18 > var18[1] Then
buy();
# 매도 #
if MarketPosition >= 0 and var18 < var18[1] Then
sell();
질문A.
위시스템식에 청산식을
1분봉챠트에서
현재포지션이 매수면 삼각가중 200 이평 하향돌파시 매수청산
현재포지션이 매도면 삼각가중 200 이평 상향돌파시 매도청산
추가하고 싶습니다..
시스템셋팅시 보조챠트를 사용하는것 같던데 자세한 설명도 부탁드립니다.
질문 B.
시스템식을 30틱봉으로 하다보니 하루이상의 자료가 없습니다
당일발생한 신호는 문제가 없는데
전일매수신호가 발생하여 진행하다 챠트가 사라지면서 매수신호가 없어지고
아침7시에 매수신호조건이면 다시 매수신호가 발생합니다(실포지션은 전일부터 매수보유중입니다)
실포지션을 확인후 신호발생할수 있는지 궁금합니다.
아니면
전일매수조건일때 아침7시 장시작후 같은매수조건이면 신호발생금지
전일매수조건일때 아침7시 장시작후 청산/매도조건이면 청산/매도신호발생
전일매도조건일때 아침7시 장시작후 같은매도조건이면 신호발생금지
전일매도조건일때 아침7시 장시작후 청산/매수조건이면 청산/매수신호발생
질문C.
a-1.시스템식1에서 장종료시간을 매일 새벽 5시30분으로 설정하여 모든포지션을 청산
(매일 1번 강제종료및 강제청산)
a-2.5시30분에 강제청산후 7시에 장시작시 첫신호는 진입신호만 그이후는
청산/진입가 능
b.시스템식1에서 장종료시간을 매주 토요일 새벽 5시30분에 모든포지션 청산
(1주일에 1번 강제종료및 강제청산)
시스템설정으로 하면 신호가 다르게 나와서 질문드립니다
항상감사드립니다..