예스스탁
예스스탁 답변
2020-05-12 09:08:19
안녕하세요
예스스탁입니다.
Inputs: N(5), 손절틱(50), 익절틱(100);
var : SH(0,data2),SL(0,data2);
var : cond(false,data1);
if data2(SwingHigh(1,H,N,N,N*2+1)) != -1 Then
{
SH = data2(H[N]);
}
if data2(SwingLow(1,L,N,N,N*2+1)) != -1 Then
{
SL = data2(L[N]);
}
#스윙하이 보다 높은값에서 롱진입
if 진입조건 and
SH < C[0] and //롱1
MarketPosition == 0
Then buy("추세롱1",AtStop,C[0]);
if MarketPosition == 1 Then
{
if data2(SwingHigh(1,H,N,N,N*2+1)) != -1 Then
cond = true;
if cond == true and EntryPrice + 익절틱*PriceScale > SH Then
exitlong("bx");
}
Else
cond = false;
즐거운 하루되세요
> 노인 님이 쓴 글입니다.
> 제목 : 시장가 청산로직 추가
> Inputs: N(5), 손절틱(50), 익절틱(100);
var : SH(0),SL(0);
if SwingHigh(1,data2(H),N,N,N*2+1) != -1 Then
{
SH = data2(H[N]);
}
if SwingLow(1,data2(L),N,N,N*2+1) != -1 Then
{
SL = data2(L[N]);
}
#스윙하이 보다 높은값에서 롱진입
if
진입조건
SH < C[0] and //롱1
MarketPosition == 0
Then buy("추세롱1",AtStop,C[0]);
SetStopLoss(PriceScale*손절틱,PointStop);
SetStopProfittarget(PriceScale*익절틱,PointStop);
위 시스템수식은 차트2(상위분봉차트)에서 스윙하이값을 구하고,
차트1(하위분봉차트)에서 스윙하이보다 높은 값에서 롱진입을 하는 수식입니다.
위 수식에서는 정해진 익절틱, 손절틱에 도달할경우 청산하는 방식인데,
한가지 청산방식을 더하고 싶습니다.
<추가하고 싶은 시장가 청산로직>
롱 포지션을 가지고 있는 상태에서 차트2(상위분봉차트)에서 새로운 스윙하이값이 나오고
기존 롱진입의 '진입가격 + 익절틱*Pricescale' 의 값이 새로운 스윙하이 보다 클경우,
기존 롱진입을 시장가 청산하는 로직을 추가하고 싶습니다.