항상 감사합니다
아래시스템식 검증 부탁드립니다.
input : 시작시간(090000),끝시간(113000);
var : Start(false),entrycnt(0),Bcond(false),Bcond1(false),Scond(false),Scond1(false),idx(0);
var : NP(0),PreNP(0),dayPL(0);
NP = NetProfit;
if stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간) Then{
Start = True;
entrycnt = 0;
Idx = 0;
PreNP = NP;
}
dayPL = (NP-PreNP)+PositionProfit;
Idx = idx+1;
if stime == 끝시간 or (stime > 끝시간 and stime[1] < 끝시간) Then
Start = false;
if stime == 090000 or (stime > 090000 and stime[1] < 090000) Then # 현지시간_ 09:00 장시작 #
Entrycnt = 0;
Bcond = t100==1 and var20>var10 and t60==1 and c>var480 ;
Scond = t100==-1 and var20<var10 and t60==-1 and c<var480 ;
Condition1 = ExitDate(1) == true and MarketPosition(1) == 1 and
(IsExitName("eB_청산",1) == true or IsExitName("StopLoss",1) == true);
Condition2 = ExitDate(1) == true and MarketPosition(1) == -1 and
(IsExitName("eS_청산",1) == true or IsExitName("StopLoss",1) == true);
if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then
Entrycnt = Entrycnt+1;
if Idx >= 1 and
Start == true and
Bcond == true and
((entrycnt == 0) or (entrycnt >= 1 and MarketPosition == 0 and MarketPosition(1) != 1) or (MarketPosition == -1)) and #동일방향 재진입금지#
(EntryCnt == 0 or MarketPosition == -1 or (EntryCnt > 0 and MarketPosition == 0 and Condition1 == False )) Then {
if dayPL <= PriceScale*30 and EntryCnt < 6 THEN
buy("B1");
Else
ExitShort("eB_청산");
}
if Idx >= 1 and
Start == true and
Scond == true and
((entrycnt == 0) or (entrycnt >= 1 and MarketPosition == 0 and MarketPosition(1) != -1) or (MarketPosition == 1)) and #동일방향 재진입금지#
(EntryCnt == 0 or MarketPosition == 1 or (EntryCnt > 0 and MarketPosition == 0 and Condition2 == False )) Then{
IF dayPL <= PriceScale*30 and EntryCnt < 6 Then
sell("S1");
Else
ExitLong("eS_청산");
}
##################################
##### 중심선 돌파 청산 #####
##################################
if MarketPosition == 1 and 66==-1 and t100==-1 /*var20<var10/*중심선*/ Then
exitlong("eB_중심선");
if MarketPosition == -1 and t66==1 and t100==1 /*var20>var10 /*중심선*/ Then
ExitShort("eS_중심선");
답변 1
예스스탁
예스스탁 답변
2020-11-16 13:34:19
안녕하세요
예스스탁입니다.
수식에 T100, var20, var10,t60,var480이라는 변수가 사용되어 있는데
해당 변수에 대한 선언도 없고 어떤 값을 저장한 부분도 없습니다.
해당 부분은 저희가 내용을 알지 못하므로 추가해드리거나 할 수 없습니다.
즐거운 하루되세요
> 조민철 님이 쓴 글입니다.
> 제목 : 매매시스템 오류 검증
> 항상 감사합니다
아래시스템식 검증 부탁드립니다.
input : 시작시간(090000),끝시간(113000);
var : Start(false),entrycnt(0),Bcond(false),Bcond1(false),Scond(false),Scond1(false),idx(0);
var : NP(0),PreNP(0),dayPL(0);
NP = NetProfit;
if stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간) Then{
Start = True;
entrycnt = 0;
Idx = 0;
PreNP = NP;
}
dayPL = (NP-PreNP)+PositionProfit;
Idx = idx+1;
if stime == 끝시간 or (stime > 끝시간 and stime[1] < 끝시간) Then
Start = false;
if stime == 090000 or (stime > 090000 and stime[1] < 090000) Then # 현지시간_ 09:00 장시작 #
Entrycnt = 0;
Bcond = t100==1 and var20>var10 and t60==1 and c>var480 ;
Scond = t100==-1 and var20<var10 and t60==-1 and c<var480 ;
Condition1 = ExitDate(1) == true and MarketPosition(1) == 1 and
(IsExitName("eB_청산",1) == true or IsExitName("StopLoss",1) == true);
Condition2 = ExitDate(1) == true and MarketPosition(1) == -1 and
(IsExitName("eS_청산",1) == true or IsExitName("StopLoss",1) == true);
if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then
Entrycnt = Entrycnt+1;
if Idx >= 1 and
Start == true and
Bcond == true and
((entrycnt == 0) or (entrycnt >= 1 and MarketPosition == 0 and MarketPosition(1) != 1) or (MarketPosition == -1)) and #동일방향 재진입금지#
(EntryCnt == 0 or MarketPosition == -1 or (EntryCnt > 0 and MarketPosition == 0 and Condition1 == False )) Then {
if dayPL <= PriceScale*30 and EntryCnt < 6 THEN
buy("B1");
Else
ExitShort("eB_청산");
}
if Idx >= 1 and
Start == true and
Scond == true and
((entrycnt == 0) or (entrycnt >= 1 and MarketPosition == 0 and MarketPosition(1) != -1) or (MarketPosition == 1)) and #동일방향 재진입금지#
(EntryCnt == 0 or MarketPosition == 1 or (EntryCnt > 0 and MarketPosition == 0 and Condition2 == False )) Then{
IF dayPL <= PriceScale*30 and EntryCnt < 6 Then
sell("S1");
Else
ExitLong("eS_청산");
}
##################################
##### 중심선 돌파 청산 #####
##################################
if MarketPosition == 1 and 66==-1 and t100==-1 /*var20<var10/*중심선*/ Then
exitlong("eB_중심선");
if MarketPosition == -1 and t66==1 and t100==1 /*var20>var10 /*중심선*/ Then
ExitShort("eS_중심선");