커뮤니티
시스템식문의
2012-02-03 16:21:13
454
글번호 47357
테스트 삼아서 작성해본건데
현물에서 사용하기위해 몇가지 테스트중인데
오류가 나서.. 실행이 않되는데 오류좀 잡아주세요
Input : enPeriod(20), enPercent(2);
Input : BolPeriod(20), BolDv(2);
Input : N(5), nStopLoss(5);
var1 = EnvelopeUp(enPeriod, enPercent);#엔벤로프상단
#var2 = ma(C, enPeriod);#엔벤로프중단
var3 = EnvelopeDown(enPeriod, enPercent);#엔벤로프하단
var4 = BollBandUp(BolPeriod,BolDv);#볼린져밴드상단
#var5 = ma(C,BolPeriod);#볼린져밴드 중단
var6 = BollBandDown(BolPeriod,BolDv);#볼린져밴드하단
Condition1 = BarsSinceExit(1) <= N and IsExitName("StopLoss",1) ==true;
Condition2 = (var1 >= var4 * 0.98 And Var1 <= Var4 * 1.02) Or
(var4 >= var1 * 0.98 And Var4 <= Var1 * 1.02);
Condition3 = (var3 >= var6 * 0.98 And Var3 <= Var6 * 1.02) Or
(var6 >= var3 * 0.98 And Var6 <= Var3 * 1.02);
Condition4 = CrossDown(c,var1) Or CrossUp(c,var1);
Condition5 = CrossUp(c,var1*1.02);
Condition6 = CrossDown(c,var4) Or CrossUp(c,var4);
Condition7 = CrossUp(c,var4*1.02);
if (MarketPosition == 0 And Condition2 = True And <== 요부분 에러( 매수상태가 아니면 매수를 하라고 체크하기위함)
(Condition1 == false and Condition4 == True ) Or
(Condition1 == true and Condition5 == True ) Or
(Condition1 == false and Condition6 == True ) Or
(Condition1 == true and Condition7 == True )
) Then
buy();
if MarketPosition == 1 And Condition3 = True And <= 오류나고있음 매수상태일때 매도를 하라고 체크하기위함
(crossup(c,var3) Or CrossDown(c,var3) Or crossup(c,var6) Or CrossDown(c,var6))Then
exitlong();
SetStopLoss(nStopLoss,PercentStop);
답변 1
예스스탁 예스스탁 답변
2012-02-03 19:37:30
안녕하세요? 예스스탁입니다.
"=" 을 두개 넣어주시면 됩니다. "=="
즐거운 날 되십시오
> 파란자전거 님이 쓴 글입니다.
> 제목 : 시스템식문의
> 테스트 삼아서 작성해본건데
현물에서 사용하기위해 몇가지 테스트중인데
오류가 나서.. 실행이 않되는데 오류좀 잡아주세요
Input : enPeriod(20), enPercent(2);
Input : BolPeriod(20), BolDv(2);
Input : N(5), nStopLoss(5);
var1 = EnvelopeUp(enPeriod, enPercent);#엔벤로프상단
#var2 = ma(C, enPeriod);#엔벤로프중단
var3 = EnvelopeDown(enPeriod, enPercent);#엔벤로프하단
var4 = BollBandUp(BolPeriod,BolDv);#볼린져밴드상단
#var5 = ma(C,BolPeriod);#볼린져밴드 중단
var6 = BollBandDown(BolPeriod,BolDv);#볼린져밴드하단
Condition1 = BarsSinceExit(1) <= N and IsExitName("StopLoss",1) ==true;
Condition2 = (var1 >= var4 * 0.98 And Var1 <= Var4 * 1.02) Or
(var4 >= var1 * 0.98 And Var4 <= Var1 * 1.02);
Condition3 = (var3 >= var6 * 0.98 And Var3 <= Var6 * 1.02) Or
(var6 >= var3 * 0.98 And Var6 <= Var3 * 1.02);
Condition4 = CrossDown(c,var1) Or CrossUp(c,var1);
Condition5 = CrossUp(c,var1*1.02);
Condition6 = CrossDown(c,var4) Or CrossUp(c,var4);
Condition7 = CrossUp(c,var4*1.02);
if (MarketPosition == 0 And Condition2 = True And <== 요부분 에러( 매수상태가 아니면 매수를 하라고 체크하기위함)
(Condition1 == false and Condition4 == True ) Or
(Condition1 == true and Condition5 == True ) Or
(Condition1 == false and Condition6 == True ) Or
(Condition1 == true and Condition7 == True )
) Then
buy();
if MarketPosition == 1 And Condition3 = True And <= 오류나고있음 매수상태일때 매도를 하라고 체크하기위함
(crossup(c,var3) Or CrossDown(c,var3) Or crossup(c,var6) Or CrossDown(c,var6))Then
exitlong();
SetStopLoss(nStopLoss,PercentStop);
이전글