커뮤니티

질문드립니다.

프로필 이미지
엘비치
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개청산 그런데 청산은 매도처럼 순차적으로 발생하는게 아닌 랜덤하게 발생합니다. 랜덤하게 발생할때 분할청산하는 수식법을 부탁드립니다.