커뮤니티
질문드립니다.
2010-09-06 06:07:36
860
글번호 32142
안녕하세요. 예스스탁의 발전을 기원하는 시스템트레이딩 입문자입니다.
질문1.
당일 분봉 데이거래입니다.
9시장시작 macd가 0선위에서 시작한적이 있고 그이후 0선아래에서
crossdown(c,ma(c,120)이면 1개 분할매도.
crossdown(c,ma(c,60)이면 1개더 분할매도.
crossdown(c,ma(c,30)이면 1개더 분할매도.
총3개 순차 분할매도.
매도진입후 최저가에서 0.3p반등하고
가.최저가에서 0.3p반등한후 ma(c,5)>ma(c,60)이면 1개청산
나.최저가에서 0.3p반등한후 macd가 0선 돌파이면 1개청산
다.최저가에서 0.3p반등한후 Disparity(Period)가 100을 돌파하면 1개청산
그런데 청산은 매도처럼 순차적으로 발생하는게 아닌 랜덤하게 발생합니다.
랜덤하게 발생할때 분할청산하는 수식법을 부탁드립니다.
답변 1
예스스탁 예스스탁 답변
2010-09-06 14:53:39
안녕하세요
예스스탁입니다.
input : Period(20);
var1 = macd(12,26);
if date != date[1] Then
Condition1 = false;
if var1 > 0 Then
Condition1 = true;
if Condition1 == true and var1 < 0 Then{
if MarketPosition == 0 and CrossDown(c,ma(c,120)) Then
Sell("s1",OnClose,def,1);
if MarketPosition == 1 and countif(CurrentEntries < CurrentEntries[1],BarsSinceEntry) < 1 Then{
if CurrentEntries == 1 and CrossDown(c,ma(c,60)) Then
buy("s2",OnClose,def,1);
if CurrentEntries == 2 and CrossDown(c,ma(c,30)) Then
buy("s3",OnClose,def,1);
}
}
if MarketPosition == 1 Then{
if C >= lowest(L,BarsSinceEntry)+0.3 Then
if ma(C,5) > ma(C,60) Then
exitlong("bx1",OnClose,def,"",1,1);
if crossup(var1,0) Then
exitlong("bx2",OnClose,def,"",1,1);
if crossup(Disparity(Period),100) Then
exitlong("bx3",OnClose,def,"",1,1);
}
즐거운 하루되세요
> 엘비치 님이 쓴 글입니다.
> 제목 : 질문드립니다.
> 안녕하세요. 예스스탁의 발전을 기원하는 시스템트레이딩 입문자입니다.
질문1.
당일 분봉 데이거래입니다.
9시장시작 macd가 0선위에서 시작한적이 있고 그이후 0선아래에서
crossdown(c,ma(c,120)이면 1개 분할매도.
crossdown(c,ma(c,60)이면 1개더 분할매도.
crossdown(c,ma(c,30)이면 1개더 분할매도.
총3개 순차 분할매도.
매도진입후 최저가에서 0.3p반등하고
가.최저가에서 0.3p반등한후 ma(c,5)>ma(c,60)이면 1개청산
나.최저가에서 0.3p반등한후 macd가 0선 돌파이면 1개청산
다.최저가에서 0.3p반등한후 Disparity(Period)가 100을 돌파하면 1개청산
그런데 청산은 매도처럼 순차적으로 발생하는게 아닌 랜덤하게 발생합니다.
랜덤하게 발생할때 분할청산하는 수식법을 부탁드립니다.