예스스탁
예스스탁 답변
2021-07-27 10:26:26
안녕하세요
예스스탁입니다.
ExitLong("bx",AtLimit,P*1.01,"",1,1);
P변수는 분할진입/분할청산시 가장최근에 발생한 진입이나 청산의 가격을 저장한 변수입니다.
가장최근 발생한 진입이나 청산의 가격대비 1% 상승하면 보유수량중 1개를 청산한다는 내용입니다.
아래는 해당 함수의 각 매개변수에 대한 도움말 내용입니다.
ExitLong("명칭",신호타입,신호가격,"진입명",수량,수량옵션);
"명칭"
신호명칭, 하나의 전략에서 동일한 명칭으로 중복사용 불가
신호타입
생략 가능, 기본값은 OnClose
- OnClose : 기준 Bar 종가에 주문
- Atmarket : 다음 Bar 시가에 주문
- AtLimit : 매수 포지션 주문(Buy, ExitShort)인 경우에는 지정한 신호가격 이하의 시세발생 시
매도 포지션 주문(Sell, ExitLong)인 경우에는 지정한 신호가격 이상의 시세발생 시
주문이 발생.
- AtStop : 매수 포지션 주문(Buy, ExitShort)인 경우에는 지정한 신호가격 이상의 시세발생 시
매도 포지션 주문(Sell, ExitLong)인 경우에는 지정한 신호가격 이하의 시세발생 시
주문이 발생.
신호가격
AtLimit, AtStop일 때 신호가격 지정.
OnClose, AtMarket의 경우는 필요하지 않으며 수량을 적용할 경우 DEF로 입력하면 된다.
"진입명"
진입명을 지정하면 해당진입이 있을 경우에만 발동한다.
진입명을 지정하지 않을 경우 " "로 표시하면 된다.
수량
주문수량 지정
여기에 주문 수량을 설정하면 트레이딩 설정창의 주문수량은 적용되지 않는다.
수량옵션
청산 시 청산 수량의 옵션
해당옵션을 생략할 경우 옵션의 적용은 0으로 한다.
0 : 현재 진입되어 있는 모든 진입 신호에서 일괄적으로 청산 수량 만큼 청산하게 된다
1 : 현재 진입되어 있는 진입 수량의 총합에서 정의된 청산수량만 청산하게 된다.
2 : 청산함수를 1개의 진입신호 당 여러 번 수행하도록 한다.
(청산함수는 기본적으로 1개의 진입신호에 대해 한번씩만 발생한다. 그러므로 1개의 진입에 대해 여러 번 청산신호를
발생하게 해서 분할로 청산할 경우 분할되는 수 만큼 청산함수가 필요하게 된다. 옵션을 2로 하게 되면 하나의 청산
으로 동일조건으로 여러 번 청산을 수행하도록 식을 구현할 수가 있다)
즐거운 하루되세요
> 강물처름 님이 쓴 글입니다.
> 제목 : 수식문의 드립니다
> 안녕하세요 지난번에 분할매매 문의드린식인데요 맨밑줄
ExitLong("bx",AtLimit,P*1.01,"",1,1); 에서 ,"", 의 의미가 궁금합니다
if MarketPosition == 1 Then
{
if CurrentContracts > CurrentContracts[1] Then
{
P = LatestEntryPrice(0);
E = E+1;
}
if CurrentContracts < CurrentContracts[1] Then
{
P = LatestExitPrice(0);
X = X+1;
}
if E < 11 Then
Buy("bb",AtLimit,P*0.99,1);
if X < 10 Then
ExitLong("bx",AtLimit,P*1.01,"",1,1);
}