커뮤니티

문의 드립니다.

프로필 이미지
무결점
2017-11-08 14:04:39
123
글번호 114002
답변완료
Inputs : PL(0.001); SetStopProfittarget(PL,PointStop); If MarketPosition==0 and O < C Then Buy(); 위 수식은 포지션 진입후에 목표수익에 도달하면 바로 청산이 되는 식인데요. Inputs : PL(0.001); If MarketPosition==0 and O < C Then { Buy(); Var1 = C; } If MarketPosition==1 and C >= Var1+PL Then ExitLong(); 이렇게 수식을 풀어서 쓰면 맨 위의 수식처럼 목표수익에 도달하면 바로 청산이 안되고 이건 종가봉까지 확인하고 조건 만족하면 청산이 됩니다. 맨 위의 수식처럼 목표수익에 도달하면 바로 청산이 되는 식을 SetStopProfittarget 함수를 이용하지 않고 저렇게 풀어서 식으로 구현이 가능할까요?
시스템
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2017-11-08 17:21:38

안녕하세요 예스스탁입니다. 풀어서 작성하시면 아래와 같이 작성하시면 됩니다. If MarketPosition==0 and O < C Then { Buy(); ExitLong("bx1",atlimit,C+PL); } if MarketPosition == 1 Then ExitLong("bx2",atlimit,EntryPrice+PL); 즐거운 하루되세요 > 무결점 님이 쓴 글입니다. > 제목 : 문의 드립니다. > Inputs : PL(0.001); SetStopProfittarget(PL,PointStop); If MarketPosition==0 and O < C Then Buy(); 위 수식은 포지션 진입후에 목표수익에 도달하면 바로 청산이 되는 식인데요. Inputs : PL(0.001); If MarketPosition==0 and O < C Then { Buy(); Var1 = C; } If MarketPosition==1 and C >= Var1+PL Then ExitLong(); 이렇게 수식을 풀어서 쓰면 맨 위의 수식처럼 목표수익에 도달하면 바로 청산이 안되고 이건 종가봉까지 확인하고 조건 만족하면 청산이 됩니다. 맨 위의 수식처럼 목표수익에 도달하면 바로 청산이 되는 식을 SetStopProfittarget 함수를 이용하지 않고 저렇게 풀어서 식으로 구현이 가능할까요?
프로필 이미지

무결점

2017-11-09 11:24:11

답변 잘 봤습니다. 그런데 제가 질문을 잘 못 드린거 같습니다. 제가 원하는 것은 예스랭귀지에 내장되어 있는 주문 함수로 목표 수익에 도달하면 바로 청산되는걸 구현하려는게 아니라, 변수에 값을 저장한 상태에서 목표한 가격에 오면 종가에 액션을 하는게 아닌 그 즉시 액션을 할수 있는 기능을 말합니다. 예를 들어서 If O < C Then Var1 = C; 이렇게 시가보다 종가가 크면 Var1 에 종가값을 저장한 후에 If 현재가 >= Var1+0.001 Then Condition1 = True; 이렇게 현재가가 Var1+0.001 이상이면 바로 Condition1 을 트루값으로 변경하는 것인데요. 헌데 저 현재가에 어떤 함수를 넣어야 될지 모르겠습니다. C 를 넣으면 조건 만족후에 봉 종가에 액션을 하기 때문입니다. 주문 함수는 SetStopProfittarget 함수나 ExitLong 함수로 목표한 가격에 오면 바로 액션을 할수 있게 되어 있잖아요. 주문 함수를 쓰지 않고 그냥 Var1 변수에 값을 저장한 후에, 현재가 >= Var1+0.001 위 조건이 만족하면 종가에 액션을 하는게 아니라 그 즉시 바로 액션을 할수 있는 기능을 말합니다. 현재가에 C 말고 어떤것을 넣어야 할까요? 이게 예스랭귀지로 구현이 가능할까요? > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 문의 드립니다. > 안녕하세요 예스스탁입니다. 풀어서 작성하시면 아래와 같이 작성하시면 됩니다. If MarketPosition==0 and O < C Then { Buy(); ExitLong("bx1",atlimit,C+PL); } if MarketPosition == 1 Then ExitLong("bx2",atlimit,EntryPrice+PL); 즐거운 하루되세요 > 무결점 님이 쓴 글입니다. > 제목 : 문의 드립니다. > Inputs : PL(0.001); SetStopProfittarget(PL,PointStop); If MarketPosition==0 and O < C Then Buy(); 위 수식은 포지션 진입후에 목표수익에 도달하면 바로 청산이 되는 식인데요. Inputs : PL(0.001); If MarketPosition==0 and O < C Then { Buy(); Var1 = C; } If MarketPosition==1 and C >= Var1+PL Then ExitLong(); 이렇게 수식을 풀어서 쓰면 맨 위의 수식처럼 목표수익에 도달하면 바로 청산이 안되고 이건 종가봉까지 확인하고 조건 만족하면 청산이 됩니다. 맨 위의 수식처럼 목표수익에 도달하면 바로 청산이 되는 식을 SetStopProfittarget 함수를 이용하지 않고 저렇게 풀어서 식으로 구현이 가능할까요?