커뮤니티
수정및 설명 부탁드립니다.
2010-09-17 16:34:52
761
글번호 32411
var:청산기준(False),기간값1(0), 기간값2(0), 최저가(0),평균(0);
기간값1=ma(c,10);
기간값2=ma(c,30);
평균=ma(c,120);
최저가=lowest(c,30);
if CrossUp(c,평균) Then
buy();
if MarketPosition==1 then{
if EntryPrice(0) *1.10 <=c then{
청산기준 = true;
}
}
if 청산기준 == true then{
exitlong("이익청산",AtStop,최저가);
MessageLog("%s",청산기준);
}
if EntryPrice*1.10>c Then
청산기준=False;
위 수식은 매수 포지션 보다 10% 상승 했을때 청산 한는 수식입니다."청산기준"값에 오류가 있는거 같은데 디버깅 을 해 보니 계속 true 값만 나오고 있습니다.
뭐가 잘못된것인가요,설명 부탁드립니다.
답변 1
예스스탁 예스스탁 답변
2010-09-20 08:44:10
안녕하세요? 예스스탁입니다.
잘못된 곳은 없는것 같습니다.
다만, messagelog가 true문장 안에 있기 때문에 true 값만 리턴하는 것이며, messagelog문장을 밖으로 빼서 작성하시면 정상적으로 값이 리턴됩니다.
감사합니다.
> HI_coco 님이 쓴 글입니다.
> 제목 : 수정및 설명 부탁드립니다.
> var:청산기준(False),기간값1(0), 기간값2(0), 최저가(0),평균(0);
기간값1=ma(c,10);
기간값2=ma(c,30);
평균=ma(c,120);
최저가=lowest(c,30);
if CrossUp(c,평균) Then
buy();
if MarketPosition==1 then{
if EntryPrice(0) *1.10 <=c then{
청산기준 = true;
}
}
if 청산기준 == true then{
exitlong("이익청산",AtStop,최저가);
MessageLog("%s",청산기준);
}
if EntryPrice*1.10>c Then
청산기준=False;
위 수식은 매수 포지션 보다 10% 상승 했을때 청산 한는 수식입니다."청산기준"값에 오류가 있는거 같은데 디버깅 을 해 보니 계속 true 값만 나오고 있습니다.
뭐가 잘못된것인가요,설명 부탁드립니다.