커뮤니티
문의드립니다..
2013-01-04 04:16:35
295
글번호 57796
어제 답변주신게 조금 부족합니다.
아. 이렇게도 해보고 저렇게도 해보는데.. 잘안되네요..
이격도로 범위선정을 하려고합니다.
분봉에서의 이격도 계산법은 다른건가요?
이격도 99.05~100.05에서는 진입하지 않는다..
condition 사용하는 경우와 직접입력하는 방식으로
두가지 수식 부탁드립니다.
하기처럼 적용시 condition1에 상관없이 거래가이루어 집니다.
IF CONDITION1=True AND CrossUp(C,UPPER)
그리고 이문장에서 condition1과 crossup 순서가 바뀌게되면 첨부파일과같은 error가 발생합니다. 왜그런 것인가요??
수고하세요.
Input : Period(10),Dup(101),Ddn(99);
var : DParity(0) ;
DParity = (Disparity(Period));
condition1 = 99.05 < DPARITY OR Dparity < 100.05 ;
IF CONDITION1=True AND CrossUp(C,UPPER) Then
BUY();
IF CONDITION1=TRUE AND CrossDown(C,LOWER)THEN
SELL();
답변 1
예스스탁 예스스탁 답변
2013-01-04 09:45:19
안녕하세요
예스스탁입니다.
1.
식상 UPPER와 LOWER는 외부변수나 내부변수로
선언되지 않은 단어입니다.
2,
예스랭귀지에서 =은 할당연산자입니다.
오른쪽의 값을 왼쪽 변수에 저장합니다.
같다를 나타내실때는 ==을 사용하셔야 합니다.
3.
이격도가 100.05이상이거나 99.05 미만일때
condition1에 true가 할당되고 해당값 사이에 있을때는
false를 저장하고자 하시면 아래와 같이 변경하셔야 합니다.
condition1 = 99.05 > DPARITY or Dparity > 100.05 ;
4, 수정한 식입니다.
Input : Period(10),Dup(101),Ddn(99);
var : DParity(0) ;
DParity = (Disparity(Period));
condition1 = 99.05 > DPARITY or Dparity > 100.05 ;
IF CONDITION1==True and CrossUp(C,Dup) Then
BUY();
IF CONDITION1==TRUE AND CrossDown(C,Ddn)THEN
SELL();
즐거운 하루되세요
> Redstorm 님이 쓴 글입니다.
> 제목 : 문의드립니다..
> 어제 답변주신게 조금 부족합니다.
아. 이렇게도 해보고 저렇게도 해보는데.. 잘안되네요..
이격도로 범위선정을 하려고합니다.
분봉에서의 이격도 계산법은 다른건가요?
이격도 99.05~100.05에서는 진입하지 않는다..
condition 사용하는 경우와 직접입력하는 방식으로
두가지 수식 부탁드립니다.
하기처럼 적용시 condition1에 상관없이 거래가이루어 집니다.
IF CONDITION1=True AND CrossUp(C,UPPER)
그리고 이문장에서 condition1과 crossup 순서가 바뀌게되면 첨부파일과같은 error가 발생합니다. 왜그런 것인가요??
수고하세요.
Input : Period(10),Dup(101),Ddn(99);
var : DParity(0) ;
DParity = (Disparity(Period));
condition1 = 99.05 < DPARITY OR Dparity < 100.05 ;
IF CONDITION1=True AND CrossUp(C,UPPER) Then
BUY();
IF CONDITION1=TRUE AND CrossDown(C,LOWER)THEN
SELL();
다음글
이전글