커뮤니티

maxhigh

프로필 이미지
강변거사
2010-10-03 08:12:43
1165
글번호 32625
답변완료
하이투자증권 교제 에스트레이딩시스템기법(2) page 29-에 나오는 GC/DC 샹들리에청산전략식에서 input:ATRPERIOD(10),ATRs(1.5); var;MaxHigh(0),MinLow(0); If MarketPosition()==0 Then { if crossup(ma(c,5),ma(c,20) Then { buy(); Maxhigh=-999999999; if crossDOWN(ma(c,5),ma(c,20) Then { SEL(); MinLow=999999999; } } if MarketPosition ()=1 Then { if H>Maxhigh Then MaxHigh=H; exitLong("매수추적",Atstop,Maxhigh-Atr(Atrperiod)*ATRS); if MarketPosition ()=-1 Then { if L>Minlow Then Minlow=L; exitshort("매도추적",Atstop,MinLow+Atr(Atrperiod)*ATRS); } 위식에서 검정할때 Marketposition에 오류가 계속 뜹니다 왜 그럴까요? maxhigh 가 무슨뜻이며 maxhigh=-999999999 은 무슨의미입니까? MinLow, MinLow=999999999
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2010-10-04 10:11:16

안녕하세요 예스스탁입니다. input:ATRPERIOD(10),ATRs(1.5); var:MaxHigh(0),MinLow(0); If MarketPosition()==0 Then { if crossup(ma(c,5),ma(c,20)) Then { buy(); Maxhigh=-999999999; } if crossDOWN(ma(c,5),ma(c,20)) Then { Sell(); MinLow=999999999; } } if MarketPosition ==1 Then { if H>Maxhigh Then MaxHigh=H; exitLong("매수추적",Atstop,Maxhigh-Atr(Atrperiod)*ATRS); } if MarketPosition ==-1 Then { if L>Minlow Then Minlow=L; exitshort("매도추적",Atstop,MinLow+Atr(Atrperiod)*ATRS); } 식에 문법적인 오류가 있어 수정해 드렸습니다. maxhigh와 maxmin에 각각 -9999999,9999999등의 숫자는 큰 의미가 있는 것은 아닙니다. 진입이후에 최고가와 최저가를 계산하기 전에 초기값으로 maxhigh는 아주 낮은 가격을 maxmin은 아주 높은 값을 먼저 지정하고 이후 발생하는 고가와 저가가 이값을 갱신하면 그 값을 진입이후의 최고가와 최저가로 만들기 위한 값입니다. 위식은 간단히 줄이시면 아래와 같이 작성한 것과 같습니다. input:ATRPERIOD(10),ATRs(1.5); If MarketPosition()==0 Then { if crossup(ma(c,5),ma(c,20)) Then { buy(); } if crossDOWN(ma(c,5),ma(c,20)) Then { Sell(); } } if MarketPosition ==1 Then { exitLong("매수추적",Atstop,highest(H,BarsSinceEntry)-Atr(Atrperiod)*ATRS); } if MarketPosition ==-1 Then { exitshort("매도추적",Atstop,lowest(L,BarsSinceEntry)+Atr(Atrperiod)*ATRS); } 즐거운 하루되세요 > 강변거사 님이 쓴 글입니다. > 제목 : maxhigh > 하이투자증권 교제 에스트레이딩시스템기법(2) page 29-에 나오는 GC/DC 샹들리에청산전략식에서 input:ATRPERIOD(10),ATRs(1.5); var;MaxHigh(0),MinLow(0); If MarketPosition()==0 Then { if crossup(ma(c,5),ma(c,20) Then { buy(); Maxhigh=-999999999; if crossDOWN(ma(c,5),ma(c,20) Then { SEL(); MinLow=999999999; } } if MarketPosition ()=1 Then { if H>Maxhigh Then MaxHigh=H; exitLong("매수추적",Atstop,Maxhigh-Atr(Atrperiod)*ATRS); if MarketPosition ()=-1 Then { if L>Minlow Then Minlow=L; exitshort("매도추적",Atstop,MinLow+Atr(Atrperiod)*ATRS); } 위식에서 검정할때 Marketposition에 오류가 계속 뜹니다 왜 그럴까요? maxhigh 가 무슨뜻이며 maxhigh=-999999999 은 무슨의미입니까? MinLow, MinLow=999999999