커뮤니티

수식 재문의

프로필 이미지
쉬어가자
2012-11-17 19:40:39
476
글번호 56574
답변완료
답변 감사합니다. 아래 답변에 대해 재질문드립니다. 답변 주신 식을 아래의 진입식을 사용한 차트에 적용하니 원하는 고저점 추세선이 제대로 표시되는데, 제가 원래 만든 시스템 식에 적용하니 엉뚱한 곳에 추세선이 그려집니다. 여러가지 테스트 결과 진입방식이 달라서 그런 결과가 나오는 것 같기도(?) 한데 잘 모르겠네요. 만들어 주신 수식에는 종가기준 진입이 적용되었는데, 참고로 제가 만든 시스템식의 진입은 주로 atstop을 적용하고 있습니다. 다시 한번 검토 부탁드립니다. 추가로, 당일 첫진입이 매수이면 원하는 추세선은 진입전 최저가이고, 당일 첫진입이 매도이면 원하는 추세선은 매도 진입 전 최고가입니다. 그리고 그 다음 진입부터는 아래 처음 질문드린대로입니다. +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 안녕하세요 예스스탁입니다. plot함수는 지표식에서만 사용가능하고 시스템식에서는 사용할수 없어 해당 내용은 추세선 함수로 작성하셔야 합니다. 예스트레이더 3.1에는 추세선함수가 제공되지 않으므로 예스트레이더 4.0 버전에서만 가능한 식입니다. var1 = highest(h,BarsSinceEntry+1); var2 = Lowest(L,BarsSinceEntry+1); if MarketPosition(1) == 1 and MarketPosition <= 0 Then{ TL_New(ExitDate(1),ExitTime(1),var1[BarsSinceExit(1)],sdate,stime,var1[BarsSinceExit(1)]); } if MarketPosition(1) == -1 and MarketPosition >= 0 Then{ TL_New(ExitDate(1),ExitTime(1),var2[BarsSinceExit(1)],sdate,stime,var2[BarsSinceExit(1)]); } #매수조건 if crossup(c,ma(c,20)) Then buy(); #매도조건 if CrossDown(c,ma(c,20)) Then sell(); 즐거운 하루되세요 > 쉬어가자 님이 쓴 글입니다. > 제목 : 수식 문의 > 1. 데일리 매매 가정 1번 매수포지션 진입 후 2번 매도포지션 진입(매수청산 및 리버스 매도 진입 가정) 전 기간 중 최고가 ..... 2번 매도포지션 진입 후 3번 매수포지션 진입(매도청산 및 리버스 매수 진입 가정) 전 기간 중 최저가 ..... 이런 식으로 직전 포지션 보유 중 최고가 및 최저가를 표시하는 수식을 부탁드립니다. 감사합니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2012-11-19 14:12:31

안녕하세요 예스스탁입니다. 식을 수정했습니다. var : count(0),cnt(0); for cnt = 0 to 20{ if sdate == EntryDate(1) Then count = count+1; } if MarketPosition == 1 Then{ if count == 1 Then { var1 = DayLow[BarsSinceEntry]; TL_New(EntryDate,EntryTime,var1,sdate,stime,var1); } if count > 1 Then { var1 = Lowest(L,BarsSinceEntry(1))[BarsSinceExit(1)]; TL_New(EntryDate,EntryTime,var1,sdate,stime,var1); } } if MarketPosition == -1 Then{ if count == 1 Then { var1 = dayhigh[BarsSinceEntry]; TL_New(EntryDate,EntryTime,var1,sdate,stime,var1); } if count > 1 Then { var1 = highest(h,BarsSinceEntry(1))[BarsSinceExit(1)]; TL_New(EntryDate,EntryTime,var1,sdate,stime,var1); } } #매수조건 buy("b",AtStop,highest(H,20)); #매도조건 sell("s",AtStop,lowest(L,20)); 즐거운 하루되세요 > 쉬어가자 님이 쓴 글입니다. > 제목 : 수식 재문의 > 답변 감사합니다. 아래 답변에 대해 재질문드립니다. 답변 주신 식을 아래의 진입식을 사용한 차트에 적용하니 원하는 고저점 추세선이 제대로 표시되는데, 제가 원래 만든 시스템 식에 적용하니 엉뚱한 곳에 추세선이 그려집니다. 여러가지 테스트 결과 진입방식이 달라서 그런 결과가 나오는 것 같기도(?) 한데 잘 모르겠네요. 만들어 주신 수식에는 종가기준 진입이 적용되었는데, 참고로 제가 만든 시스템식의 진입은 주로 atstop을 적용하고 있습니다. 다시 한번 검토 부탁드립니다. 추가로, 당일 첫진입이 매수이면 원하는 추세선은 진입전 최저가이고, 당일 첫진입이 매도이면 원하는 추세선은 매도 진입 전 최고가입니다. 그리고 그 다음 진입부터는 아래 처음 질문드린대로입니다. +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 안녕하세요 예스스탁입니다. plot함수는 지표식에서만 사용가능하고 시스템식에서는 사용할수 없어 해당 내용은 추세선 함수로 작성하셔야 합니다. 예스트레이더 3.1에는 추세선함수가 제공되지 않으므로 예스트레이더 4.0 버전에서만 가능한 식입니다. var1 = highest(h,BarsSinceEntry+1); var2 = Lowest(L,BarsSinceEntry+1); if MarketPosition(1) == 1 and MarketPosition <= 0 Then{ TL_New(ExitDate(1),ExitTime(1),var1[BarsSinceExit(1)],sdate,stime,var1[BarsSinceExit(1)]); } if MarketPosition(1) == -1 and MarketPosition >= 0 Then{ TL_New(ExitDate(1),ExitTime(1),var2[BarsSinceExit(1)],sdate,stime,var2[BarsSinceExit(1)]); } #매수조건 if crossup(c,ma(c,20)) Then buy(); #매도조건 if CrossDown(c,ma(c,20)) Then sell(); 즐거운 하루되세요 > 쉬어가자 님이 쓴 글입니다. > 제목 : 수식 문의 > 1. 데일리 매매 가정 1번 매수포지션 진입 후 2번 매도포지션 진입(매수청산 및 리버스 매도 진입 가정) 전 기간 중 최고가 ..... 2번 매도포지션 진입 후 3번 매수포지션 진입(매도청산 및 리버스 매수 진입 가정) 전 기간 중 최저가 ..... 이런 식으로 직전 포지션 보유 중 최고가 및 최저가를 표시하는 수식을 부탁드립니다. 감사합니다.