커뮤니티

간단한 질문.

프로필 이미지
sjpapa
2011-08-01 14:05:13
688
글번호 41514
답변완료
1) input : p(0.3); var1 = dayhigh(1)-daylow(1) ; if dayindex >= 0 then { buy("b",atstop,dayopen+var1*p); sell("s",atstop,DayOpen-var1*p); } SetStopEndofday(145000); 전일 고저대비에 일정비율 돌파시 진입입니다. 그런데 진입신호가 중간 중간 진입 신호가 장시작하자마자 즉 090000 에 진입 즉 시작하자마자 진입으로 시뮬에서 뜹니다. 문제가 어디있는지...추측하기론 전일 var1 값이 유지되어있는 상태에서 갭으로 시작 된거 같은데요.. 전일 var1값이 다음날 090000에 적용된건가요? 그럼 var1을 초기화 090000에 초기화 시킬까요? condition으로 초기화를 시키는 방법과 var1으로 초기화 하는 방법 두개가다 가르쳐 주세요. 2) 데이 매매에서 매매 진입 을 아래와 같이 컨트롤하려하는데 if dayindex >= 0 이라는 조건과 if stime < 150000 이라는 조건의 의미는 같을까요? 3) highest(H,lenth) 와 high(h,lenth)[1] 와 high(h,lenth[1]) 이와같은 문법이 가능한가요? 가능하다면 각 식을 설명 부탁드립니다. 4) higest(h,barsinceentry)와 highest(h,barsinceentry+1)의 차이를 잘 설명 부탁드립니다. 5) a와b중 큰 값을 취하는 함수가 어떻게 되나요, f(a,b)에서 f요. 6) yes language 편집창 열때 항상 전체화면으로 실행되는데요, 랭귀지편집 프로그램 오픈시 전체화면아니게 여는방법이 혹시 있을까요? 7) 스토캐스틱 지표를 시초 갭을 보정해 주려면 어떻게 해야하나요? 8) var : 내부 변수를 선언하고 아직 값은 주지 않은 상태에서 변수를 조건으로 걸어준후 그 아래에 변수 값을 넣어주었다면 위 조건이 걸리나요? ex) var : A(0); if c > A then buy(); if mp == 0 then { a = f(x,y) ; }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2011-08-01 15:15:29

안녕하세요? 예스스탁입니다. 문의하신 내용 답변드립니다. 1) input : p(0.3); var1 = dayhigh(1)-daylow(1) ; if dayindex >= 0 then { buy("b",atstop,dayopen+var1*p); sell("s",atstop,DayOpen-var1*p); } SetStopEndofday(145000); 전일 고저대비에 일정비율 돌파시 진입입니다. 그런데 진입신호가 중간 중간 진입 신호가 장시작하자마자 즉 090000 에 진입 즉 시작하자마자 진입으로 시뮬에서 뜹니다. 문제가 어디있는지...추측하기론 전일 var1 값이 유지되어있는 상태에서 갭으로 시작 된거 같은데요.. 전일 var1값이 다음날 090000에 적용된건가요? 그럼 var1을 초기화 090000에 초기화 시킬까요? condition으로 초기화를 시키는 방법과 var1으로 초기화 하는 방법 두개가다 가르쳐 주세요. => atstop진입이므로 전일 마지막 봉에서 if ~ then의 조건을 만족하지 않도록 제어하는 방법 밖에는 없습니다. 다음식과 같이 제어하셔야 합니다. input : p(0.3); var1 = dayhigh(1)-daylow(1) ; if stime < 150000 then { buy("b",atstop,dayopen+var1*p); sell("s",atstop,DayOpen-var1*p); } SetStopEndofday(145000); 2) 데이 매매에서 매매 진입 을 아래와 같이 컨트롤하려하는데 if dayindex >= 0 이라는 조건과 if stime < 150000 이라는 조건의 의미는 같을까요? => if stime < 150000 와 같이 제어하는 경우는 atstop이나 atlimit타입의 주문에서 전일 마지막 봉에 if ~ then 의 조건을 만족하지 않기 위해 즉, 다음날 첫봉에서 신호가 발생되지 않도록 제어하기 위한 것입니다. if dayindex >= 0 의 식은 쓰거나 쓰지 않거나 결과는 동일하므로 if stime < 150000 의 의미와는 서로 다른 내용입니다. 3) highest(H,lenth) 와 high(h,lenth)[1] 와 high(h,lenth[1]) 이와같은 문법이 가능한가요? 가능하다면 각 식을 설명 부탁드립니다. => 가능하지 않습니다. high와 같은 데이타 변수에는 high[1] 처럼 대괄호만 사용 가능합니다. 4) higest(h,barsinceentry)와 highest(h,barsinceentry+1)의 차이를 잘 설명 부탁드립니다. => barssinceEntry는 진입이후에 경과한 봉의 수를 나타냅니다. 만일 전봉에 진입하였다면 1값을 전전봉에 진입하였다면 2값을 나타내게 되는데, +1을 하게 되면 1-> 2, 2->3 으로 값이 변하게 되는데, 이것의 의미는 진입한 봉을 포함시켜서 고가를 계산할 것인지, 진입 다음봉부터 고가를 계산할 것인지를 나타냅니다. 예를들어 진입한 다음봉이 현재 진행중이라고 가정해보면 higest(h,barsinceentry)의 값은 higest(h,1) 이 되므로 현재봉의 고가만 계산하는 반면, higest(h,barsinceentry+1)의 값은 higest(h,2) 가 되므로 전봉을 포함한 최고가를 계산하게 됩니다. 5) a와b중 큰 값을 취하는 함수가 어떻게 되나요, f(a,b)에서 f요. => max(a,b) 함수를 이용하시면 됩니다. 6) yes language 편집창 열때 항상 전체화면으로 실행되는데요, 랭귀지편집 프로그램 오픈시 전체화면아니게 여는방법이 혹시 있을까요? => YesLanguage편집기 창의 보기>편집창설정 메뉴에서 '시작시편집창최대화'를 해제하시면 됩니다. 7) 스토캐스틱 지표를 시초 갭을 보정해 주려면 어떻게 해야하나요? => 아래 도움말에 갭보정 시토캐스틱 지표가 작성되어 있습니다. https://www.yesstock.com/SystemTrading/Example/board/view.asp?db=board100044&num=91&pageno=1&startpage=1&Site=&L_Code=12&M_Code=4 8) var : 내부 변수를 선언하고 아직 값은 주지 않은 상태에서 변수를 조건으로 걸어준후 그 아래에 변수 값을 넣어주었다면 위 조건이 걸리나요? ex) var : A(0); if c > A then buy(); if mp == 0 then { a = f(x,y) ; } => 식은 위로부터 아래의 순서로 해석해 나갑니다. A변수에 초기값 0 또는 이전봉에서의 저장된 값이 있기 때문에 신호는 발생되겠지만, 식에 따라서 A가 나중에 계산됨에 따라 정확한 표현을 하지 못할 수도 있습니다. 따라서 먼저 계산되어야 하는 내용이 위에 나오도록 작성해 주셔야 합니다. 예를 들어 피봇지표의 경우 5개의 선으로 계산되는데, 제일먼저 피봇지표가 계산되어야 나머지 지표들도 정확한 계산을 할 수 있기 때문에 피봇선이 제일 위에 작성되어 있어야 합니다. 감사합니다.