커뮤니티
시스템식 문의드립니다.
2015-07-24 14:23:37
114
글번호 88876
안녕하세요.. 다음과 같은 시스템식 부탁드립니다.
해외선물(오일) 거래용 입니다
1.진입후 연속손실 2회 이상이면 진입하지 않다가 매수조건, 매도조건을 카운트하여
n번째 부터 진입하는 수식입니다.
2. 진입가격 기준하여 + - 0.1포인트를 구간으로 정하고 이 구간에서 연속손실이
2회이면 이 구간에서는 더이상 진입 금지하고 다음구간으로 상승하거나 하락하면
진입하는 수식입니다..
수고하세요..
답변 5
예스스탁 예스스탁 답변
2015-07-24 16:55:59
안녕하세요
예스스탁입니다.
1.
input : N(3);
var : Bcond(false),Scond(false);
Bcond = 매수진입조건;
Scond = 매도진입조건;
Condition1 = false;
if MarketPosition == 0 and PositionProfit(1) < 0 and PositionProfit(2) < 0 Then
Condition1 = true;
if MarketPosition != 0 and PositionProfit < 0 and PositionProfit(1) < 0 Then
Condition1 = true;
#매수조건 만족
if Bcond == true and Bcond[1] == false Then{
#무포지션이고 직전거래가 2회연속 손실이 아니면 매수
if MarketPosition == 0 and Condition1 == false Then
buy();
#매도포지션이고 직전거래가 2회연속 손실이 아니면 매수
if MarketPosition == -1 and Condition1 == false Then
buy();
#매도포지션이고 직전거래가 2회연속 손실이면 매도포지션 청산만
if MarketPosition == -1 and Condition1 == true Then
ExitShort();
}
#매도조건 만족
if scond == true and Scond[1] == false Then{
#무포지션이고 직전거래가 2회연속 손실이 아니면 매도
if MarketPosition == 0 and Condition1 == false Then
Sell();
#매수포지션이고 직전거래가 2회연속 손실이 아니면 매도
if MarketPosition == 1 and Condition1 == false Then
sell();
#매수포지션이고 직전거래가 2회연속 손실이면 매수포지션 청산만
if MarketPosition == 1 and Condition1 == true Then
ExitLong();
}
#무포지션이고 직전거래가 2회연속 손실이면
#현재 매수조건 만족했고
#직전 청산이후에 매수/매도 총 3번째 만족했으면 매수
if MarketPosition == 0 and Condition1 == false and
Bcond == true and Bcond[1] == false and
countif((Bcond == true and Bcond[1] == false) or (Scond == true and Scond[1] == false),BarsSinceExit(1)) == N Then{
buy();
}
#무포지션이고 직전거래가 2회연속 손실이면
#현재 매도조건 만족했고
#직전 청산이후에 매수/매도 총 3번째 만족했으면 매도
if MarketPosition == 0 and Condition1 == false and
Scond == true And Scond[1] == false and
countif((Bcond == true and Bcond[1] == false) or (Scond == true and Scond[1] == false),BarsSinceExit(1)) == N Then{
buy();
}
2.
2번내용은 내용을 정확히 이하해지 못했습니다.
좀더 자세한 내용 올려주시기 바랍니다.
즐거운 하루되세요
> bigdeal 님이 쓴 글입니다.
> 제목 : 시스템식 문의드립니다.
> 안녕하세요.. 다음과 같은 시스템식 부탁드립니다.
해외선물(오일) 거래용 입니다
1.진입후 연속손실 2회 이상이면 진입하지 않다가 매수조건, 매도조건을 카운트하여
n번째 부터 진입하는 수식입니다.
2. 진입가격 기준하여 + - 0.1포인트를 구간으로 정하고 이 구간에서 연속손실이
2회이면 이 구간에서는 더이상 진입 금지하고 다음구간으로 상승하거나 하락하면
진입하는 수식입니다..
수고하세요..
bigdeal
2015-07-24 17:18:48
안녕하세요. 빠른답변감사드립니다.
2. 진입가격 기준하여 + - 0.1포인트를 구간으로 정하고 이 구간에서 연속손실이
2회이면 이 구간에서는 더이상 진입 금지하고 다음구간으로 상승하거나 하락하면
진입하는 수식이란
- 예를들어 첫 진입가격이 50 이면 진입가격을 기준하여 49.9 에서 50.1 까지
진입된 포지션이 연속 2회 손실이 나면 이 구간에서는 더이상 진입을 하지 않고
이 구간을 벗어나는 경우 다시 매매를 재개하는 수식입니다.
매번 첫 진입가격을 기준하여 위 아래로 진폭을 만들어 2번이상 손실이 발생하는
구간에서는 매매를 안하는 식입니다.
수고하세요..
bigdeal
2015-07-26 21:25:26
안녕하세요. 빠르 답변감사드립니다.
답변주신내용대로 식을 작성하여 시물레이션해 본 결과값이 좀 이상합니다
처음 신호만 발생하고 이후에는 신호가 나오지 않습니다.
죄송하지만 다시한번 수식을 검토 부탁드리겠습니다.
매수진입조건은 crossup(c,ma(c,5)) 매도진입조건은crossdown(c,ma(c,5))으로
한 결과입니다.
수고하세요
예스스탁 예스스탁 답변
2015-07-27 09:19:11
안녕하세요
예스스탁입니다.
1.
죄송합니다. 식을 수정했습니다.
변수값을 잘못지정했습니다.
input : N(3);
var : Bcond(false),Scond(false);
Bcond = crossup(ma(c,5),ma(c,20)); //매수진입조건
Scond = CrossDown(ma(c,5),ma(c,20)); //매도진입조건
Condition1 = false;
if MarketPosition == 0 and PositionProfit(1) < 0 and PositionProfit(2) < 0 Then
Condition1 = true;
if MarketPosition != 0 and PositionProfit < 0 and PositionProfit(1) < 0 Then
Condition1 = true;
#매수조건 만족
if Bcond == true and Bcond[1] == false Then{
#무포지션이고 직전거래가 2회연속 손실이 아니면 매수
if MarketPosition == 0 and Condition1 == false Then
buy("b1");
#매도포지션이고 직전거래가 2회연속 손실이 아니면 매수
if MarketPosition == -1 and Condition1 == false Then
buy("b2");
#매도포지션이고 직전거래가 2회연속 손실이면 매도포지션 청산만
if MarketPosition == -1 and Condition1 == true Then
ExitShort();
}
#매도조건 만족
if scond == true and Scond[1] == false Then{
#무포지션이고 직전거래가 2회연속 손실이 아니면 매도
if MarketPosition == 0 and Condition1 == false Then
Sell("s1");
#매수포지션이고 직전거래가 2회연속 손실이 아니면 매도
if MarketPosition == 1 and Condition1 == false Then
sell("s2");
#매수포지션이고 직전거래가 2회연속 손실이면 매수포지션 청산만
if MarketPosition == 1 and Condition1 == true Then
ExitLong();
}
#무포지션이고 직전거래가 2회연속 손실이면
#현재 매수조건 만족했고
#직전 청산이후에 매수/매도 총 3번째 만족했으면 매수
if MarketPosition == 0 and Condition1 == true and
Bcond == true and Bcond[1] == false and
countif((Bcond == true and Bcond[1] == false) or (Scond == true and Scond[1] == false),BarsSinceExit(1)) == N Then{
buy("b3");
}
#무포지션이고 직전거래가 2회연속 손실이면
#현재 매도조건 만족했고
#직전 청산이후에 매수/매도 총 3번째 만족했으면 매도
if MarketPosition == 0 and Condition1 == true and
Scond == true And Scond[1] == false and
countif((Bcond == true and Bcond[1] == false) or (Scond == true and Scond[1] == false),BarsSinceExit(1)) == N Then{
buy("s3");
}
2.
2번 내용은 조금 확인할 내용이 있습니다.
02-3453-1060으로 전화주시기 바랍니다.
즐거운 하루되세요
> bigdeal 님이 쓴 글입니다.
> 제목 : Re : Re : 2번 내용입니다
> 안녕하세요. 빠른답변감사드립니다.
2. 진입가격 기준하여 + - 0.1포인트를 구간으로 정하고 이 구간에서 연속손실이
2회이면 이 구간에서는 더이상 진입 금지하고 다음구간으로 상승하거나 하락하면
진입하는 수식이란
- 예를들어 첫 진입가격이 50 이면 진입가격을 기준하여 49.9 에서 50.1 까지
진입된 포지션이 연속 2회 손실이 나면 이 구간에서는 더이상 진입을 하지 않고
이 구간을 벗어나는 경우 다시 매매를 재개하는 수식입니다.
매번 첫 진입가격을 기준하여 위 아래로 진폭을 만들어 2번이상 손실이 발생하는
구간에서는 매매를 안하는 식입니다.
수고하세요..
예스스탁 예스스탁 답변
2015-07-27 13:16:39
안녕하세요
예스스탁입니다.
input : pt(0.1);
var : Bcond(false),Scond(false);
Bcond = crossup(ma(c,5),ma(c,20)); //매수진입조건
Scond = CrossDown(ma(c,5),ma(c,20)); //매도진입조건
#직전거래 2개가 모두 손실이고
#첫번째 청산가격과 두번째 청산가격이
#모두 첫번째 진입가격대비 +-pT이내이면
#Condition1은 TRUE 아니면 FALSE
Condition1 = false;
if MarketPosition == 0 and
PositionProfit(1) < 0 and PositionProfit(2) < 0 and
abs(EntryPrice(2)-ExitPrice(1)) <= Pt And
abs(EntryPrice(2)-ExitPrice(2)) <= Pt Then
Condition1 = true;
if MarketPosition != 0 and
PositionProfit < 0 and PositionProfit(1) < 0 and
abs(EntryPrice(1)-ExitPrice(1)) <= Pt And
abs(EntryPrice(1)-C) <= Pt Then
Condition1 = true;
#매수조건 만족
if Bcond == true and Bcond[1] == false Then{
#무포지션이고 Condition1이 false이면 매수
if MarketPosition == 0 and Condition1 == false Then
buy("b1");
#매도포지션이고 Condition1이 false이면 매수
if MarketPosition == -1 and Condition1 == false Then
buy("b2");
#매도포지션이고 condition1이 true이면 매도포지션 청산만
if MarketPosition == -1 and Condition1 == true Then
ExitShort("sx");
}
#매도조건 만족
if scond == true and Scond[1] == false Then{
#무포지션이고 Condition1이 false이면 매도
if MarketPosition == 0 and Condition1 == false Then
Sell("s1");
#매수포지션이고 Condition1이 false이면 매도
if MarketPosition == 1 and Condition1 == false Then
sell("s2");
#매수포지션이고 condition1이 true 이면 매수포지션 청산만
if MarketPosition == 1 and Condition1 == true Then
ExitLong("bx");
}
#무포지션이고
#현재 매수조건 만족했고
#condition1이 true이면
#현재 종가가 첫진입가격 +-pt 밖이면 매수
if MarketPosition == 0 and
Bcond == true and Bcond[1] == false and
Condition1 == true and
(C >= EntryPrice(2)+Pt Or C <= EntryPrice(2)-Pt) Then{
buy("b3");
}
#무포지션이고
#현재 매도조건 만족했고
#condition1이 true이면
#현재 종가가 첫진입가격 +-pt 밖이면 매도
if MarketPosition == 0 and Condition1 == true and
Scond == true And Scond[1] == false and
(C >= EntryPrice(2)+Pt Or C <= EntryPrice(2)-Pt) then{
buy("s3");
}
즐거운 하루되세요
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : Re : Re : 2번 내용입니다
> 안녕하세요
예스스탁입니다.
1.
죄송합니다. 식을 수정했습니다.
변수값을 잘못지정했습니다.
input : N(3);
var : Bcond(false),Scond(false);
Bcond = crossup(ma(c,5),ma(c,20)); //매수진입조건
Scond = CrossDown(ma(c,5),ma(c,20)); //매도진입조건
Condition1 = false;
if MarketPosition == 0 and PositionProfit(1) < 0 and PositionProfit(2) < 0 Then
Condition1 = true;
if MarketPosition != 0 and PositionProfit < 0 and PositionProfit(1) < 0 Then
Condition1 = true;
#매수조건 만족
if Bcond == true and Bcond[1] == false Then{
#무포지션이고 직전거래가 2회연속 손실이 아니면 매수
if MarketPosition == 0 and Condition1 == false Then
buy("b1");
#매도포지션이고 직전거래가 2회연속 손실이 아니면 매수
if MarketPosition == -1 and Condition1 == false Then
buy("b2");
#매도포지션이고 직전거래가 2회연속 손실이면 매도포지션 청산만
if MarketPosition == -1 and Condition1 == true Then
ExitShort();
}
#매도조건 만족
if scond == true and Scond[1] == false Then{
#무포지션이고 직전거래가 2회연속 손실이 아니면 매도
if MarketPosition == 0 and Condition1 == false Then
Sell("s1");
#매수포지션이고 직전거래가 2회연속 손실이 아니면 매도
if MarketPosition == 1 and Condition1 == false Then
sell("s2");
#매수포지션이고 직전거래가 2회연속 손실이면 매수포지션 청산만
if MarketPosition == 1 and Condition1 == true Then
ExitLong();
}
#무포지션이고 직전거래가 2회연속 손실이면
#현재 매수조건 만족했고
#직전 청산이후에 매수/매도 총 3번째 만족했으면 매수
if MarketPosition == 0 and Condition1 == true and
Bcond == true and Bcond[1] == false and
countif((Bcond == true and Bcond[1] == false) or (Scond == true and Scond[1] == false),BarsSinceExit(1)) == N Then{
buy("b3");
}
#무포지션이고 직전거래가 2회연속 손실이면
#현재 매도조건 만족했고
#직전 청산이후에 매수/매도 총 3번째 만족했으면 매도
if MarketPosition == 0 and Condition1 == true and
Scond == true And Scond[1] == false and
countif((Bcond == true and Bcond[1] == false) or (Scond == true and Scond[1] == false),BarsSinceExit(1)) == N Then{
buy("s3");
}
2.
2번 내용은 조금 확인할 내용이 있습니다.
02-3453-1060으로 전화주시기 바랍니다.
즐거운 하루되세요
> bigdeal 님이 쓴 글입니다.
> 제목 : Re : Re : 2번 내용입니다
> 안녕하세요. 빠른답변감사드립니다.
2. 진입가격 기준하여 + - 0.1포인트를 구간으로 정하고 이 구간에서 연속손실이
2회이면 이 구간에서는 더이상 진입 금지하고 다음구간으로 상승하거나 하락하면
진입하는 수식이란
- 예를들어 첫 진입가격이 50 이면 진입가격을 기준하여 49.9 에서 50.1 까지
진입된 포지션이 연속 2회 손실이 나면 이 구간에서는 더이상 진입을 하지 않고
이 구간을 벗어나는 경우 다시 매매를 재개하는 수식입니다.
매번 첫 진입가격을 기준하여 위 아래로 진폭을 만들어 2번이상 손실이 발생하는
구간에서는 매매를 안하는 식입니다.
수고하세요..
다음글
이전글