커뮤니티

설명 부탁드립니다.

프로필 이미지
잘웃자
2020-09-14 20:24:33
773
글번호 142363
답변완료
안녕하세요 예스랭귀지를 공부하다 궁금한점이 있어서 문의 드립니다. 아래 시스템식에서 Buy, ExitLong 을 보게되면, Buy("Cross Over Buy",AtStop,LEntryPrice,Initial); ExitLong("LongTStop",AtStop,Lowest(Low,TrailBar)); 조건 혹은 체결될때까지 여러번 불리게 되어 있는데요. 이렇게 buy 나 exitlong 이 여러번 불리기 되면, 내부적으로 어떤 의미이며, 어떻게 동작하는지 설명 부탁드리겠습니다. 가령 앞에 Buy 주문이 여러번 불리면 같은 주문으로 뒤에 들어 오는 주문은 무시가 되는건지요 ? 아니면 동작 방식이 따로 있는지 설명 부탁드리겠습니다. 감사합니다. ============================================================= Input: FastLen(9), SlowLen(18), ChLen(12), TrailBar(8), Initial(300), ReBars(15), Reentry(10); Vars: FastMA(0), SlowMA(0), LEntryPrice(0), SEntryPrice(0), LCount(-999), SCount(-999), ReEntryCount(0), CurrentPosition(0); FastMA = ma( Close , FastLen ); SlowMA = ma( Close , SlowLen ); #{ Order Placement for Long Positions } If CrossUp(FastMA,SlowMA) then Begin LEntryPrice = Highest( High , TrailBar )[1] * 1.02; LCount = index; End; MessageLog("BarIndex : %.f, MarketPosition: %.f", BarIndex, MarketPosition); If MarketPosition <> 1 AND index < LCount + ChLen and LCount > 0 then { Buy("Cross Over Buy",AtStop,LEntryPrice,Initial); MessageLog("Buy==========="); } #{ Trailing Stop while in Position } If MarketPosition == 1 then begin LCount = -999; ExitLong("LongTStop",AtStop,Lowest(Low,TrailBar)); MessageLog("ExitLong==========="); End;
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2020-09-15 14:59:28

안녕하세요 예스스탁입니다. 1 진입신호는 시스템 트레이딩 설정창의 피라미딩탭에서 피라미딩을 설정하지 않은 이상 동일포지션 진입신호가 추가로 발동하지 않습니다. 피라미딩은 기본설정이 허용안함으로 한번 진입이 발생하면 청산전에는 추가로 동일방향 진입은 발생하지 않습니다. 파리미딩에서 추가진입이 가능하게 설정하면 추가적으로 조건만족시에 반복적으로 진입신호가 발생하게 됩니다. 2 청산신호는 진입신호에 의해 진입되어 있을때만 발생합니다. exitlong은 매수포지션 청산함수로 차트에 buy로 진입이 된 후에만 조건만족시 발생합니다. 즐거운 하루되세요 > 잘웃자 님이 쓴 글입니다. > 제목 : 설명 부탁드립니다. > 안녕하세요 예스랭귀지를 공부하다 궁금한점이 있어서 문의 드립니다. 아래 시스템식에서 Buy, ExitLong 을 보게되면, Buy("Cross Over Buy",AtStop,LEntryPrice,Initial); ExitLong("LongTStop",AtStop,Lowest(Low,TrailBar)); 조건 혹은 체결될때까지 여러번 불리게 되어 있는데요. 이렇게 buy 나 exitlong 이 여러번 불리기 되면, 내부적으로 어떤 의미이며, 어떻게 동작하는지 설명 부탁드리겠습니다. 가령 앞에 Buy 주문이 여러번 불리면 같은 주문으로 뒤에 들어 오는 주문은 무시가 되는건지요 ? 아니면 동작 방식이 따로 있는지 설명 부탁드리겠습니다. 감사합니다. ============================================================= Input: FastLen(9), SlowLen(18), ChLen(12), TrailBar(8), Initial(300), ReBars(15), Reentry(10); Vars: FastMA(0), SlowMA(0), LEntryPrice(0), SEntryPrice(0), LCount(-999), SCount(-999), ReEntryCount(0), CurrentPosition(0); FastMA = ma( Close , FastLen ); SlowMA = ma( Close , SlowLen ); #{ Order Placement for Long Positions } If CrossUp(FastMA,SlowMA) then Begin LEntryPrice = Highest( High , TrailBar )[1] * 1.02; LCount = index; End; MessageLog("BarIndex : %.f, MarketPosition: %.f", BarIndex, MarketPosition); If MarketPosition <> 1 AND index < LCount + ChLen and LCount > 0 then { Buy("Cross Over Buy",AtStop,LEntryPrice,Initial); MessageLog("Buy==========="); } #{ Trailing Stop while in Position } If MarketPosition == 1 then begin LCount = -999; ExitLong("LongTStop",AtStop,Lowest(Low,TrailBar)); MessageLog("ExitLong==========="); End;