예스스탁
예스스탁 답변
2016-04-04 13:16:08
안녕하세요
예스스탁입니다.
1.
var1 = highest(H,20);
var2 = lowest(L,20);
var3 = atr(20);
var4 = ma(C,25);
var5 = ma(C,350);
if var4 > var5 then{
if MarketPosition <= 0 and crossup(C,var1) Then
buy("b",OnClose,def,1);
if MarketPosition == 1 and MaxEntries == 1 Then
buy("bb",AtStop,EntryPrice+var3*(1/2),1);
if MarketPosition == 1 and BarsSinceEntry == 80 Then
ExitLong("bx");
}
if var4 < var5 then{
if MarketPosition >= 0 and CrossDown(C,var2) Then
sell("s",OnClose,def,1);
if MarketPosition == -1 and MaxEntries == 1 Then
sell("ss",AtStop,EntryPrice-var3*(1/2),1);
if MarketPosition == -1 and BarsSinceEntry == 80 Then
ExitShort("sx");
}
2
var1 = highest(H,20);
var2 = lowest(L,20);
var3 = atr(20);
var4 = ma(C,25);
var5 = ma(C,350);
if var4 > var5 then{
if MarketPosition <= 0 and crossup(C,var1) Then
buy("b",OnClose,def,1);
if MarketPosition == 1 then{
if MaxEntries == 1 Then{
buy("bb",AtStop,EntryPrice+var3*(1/2),1);
ExitLong("bx1",AtStop,EntryPrice-var3*2);
}
if MaxEntries == 2 Then{
ExitLong("bx2",AtStop,EntryPrice-var3*2+var3*(1/2));
}
ExitLong("Bx3",AtStop,lowest(L,10));
}
}
if var4 < var5 then{
if MarketPosition >= 0 and CrossDown(C,var2) Then
sell("s",OnClose,def,1);
if MarketPosition == -1 then{
if MaxEntries == 1 Then{
sell("ss",AtStop,EntryPrice-var3*(1/2),1);
ExitShort("sx1",AtStop,EntryPrice+var3*2);
}
if MaxEntries == 2 Then{
ExitShort("sx2",AtStop,EntryPrice+var3*2-var3*(1/2));
}
ExitShort("sx3",AtStop,Highest(H,10));
}
}
3
var1 = highest(H,20);
var2 = lowest(L,20);
var3 = atr(20);
var4 = ma(C,25);
var5 = ma(C,350);
if var4 > var5 then{
if MarketPosition <= 0 and crossup(C,var1) Then
buy("b",OnClose,def,1);
if MarketPosition == 1 then{
if MaxEntries == 1 Then{
buy("bb",AtStop,EntryPrice+var3*(1/2),1);
ExitLong("bx1",AtStop,EntryPrice-var3*2);
}
if MaxEntries == 2 Then{
ExitLong("bx2",AtStop,EntryPrice-var3*2+var3*(1/2));
}
ExitLong("Bx3",AtStop,Highest(C,BarsSinceEntry)-var3*3);
}
}
if var4 < var5 then{
if MarketPosition >= 0 and CrossDown(C,var2) Then
sell("s",OnClose,def,1);
if MarketPosition == -1 then{
if MaxEntries == 1 Then{
sell("ss",AtStop,EntryPrice-var3*(1/2),1);
ExitShort("sx1",AtStop,EntryPrice+var3*2);
}
if MaxEntries == 2 Then{
ExitShort("sx2",AtStop,EntryPrice+var3*2-var3*(1/2));
}
ExitShort("sx3",AtStop,Lowest(c,BarsSinceEntry)+var3*3);
}
}
즐거운 하루되세요
> 마틸다 님이 쓴 글입니다.
> 제목 : 시스템 문의 드립니다
> 돈키언 추세 시스템 수식으로 부탁드립니다.
1. 시간기준 돈키언 청산 시스템
종가가 최근 20일 신고(저)가일때 매수(매도) 1계약 진입
이후 가격 수준이 1/2*(20)ATR 올라갈때(내려갈 때) 한번 1계약 추가.
80일 후 포지션 청산
25일 이동평균선이 350일 이동평균선을 상향 교차할 때는 매수만, 25일 이동평균선이 350일 이동평균선을 하향 교차할 때는 매도만
2. 돈키언 추세 시스템
종가가 최근 20일 신고(저)가일때 매수(매도) 1계약 진입
이후 가격 수준이 1/2*(20)ATR 올라갈때(내려갈 때) 한번 1계약 추가.
1차 진입이후 가격 수준이 2*(20)ATR 내려갔을 때(올라갔을 때) 손절
2차 진입시 손절가를 이전 손절가+-1/2*(20)ATR 상향(하향)조정
가격 수준이 10일 신저(고)가일 때 청산
25일 이동평균선이 350일 이동평균선을 상향 교차할 때는 매수만, 25일 이동평균선이 350일 이동평균선을 하향 교차할 때는 매도만
3. 돈키언 추세 시스템+ 샹들리에 청산 시스템
종가가 최근 20일 신고(저)가일때 매수(매도) 1계약 진입
이후 가격 수준이 1/2*(20)ATR 올라갈때(내려갈 때) 한번 1계약 추가.
1차 진입이후 가격 수준이 2*(20)ATR 내려갔을 때(올라갈을 때) 손절
2차 진입시 손절가를 이전 손절가+-1/2*(20)ATR 상향(하향)조정
진입시점 이후 최고가(종가)대비 가격 수준이 3*(20)ATR 만큼 떨어졌을 때(올라갔을 때) 청산
25일 이동평균선이 350일 이동평균선을 상향 교차할 때는 매수만, 25일 이동평균선이 350일 이동평균선을 하향 교차할 때는 매도만
감사합니다.