커뮤니티
yt3.1로 변환부탁드립니다.
2011-02-06 22:46:03
715
글번호 35483
수고하십니다.
이제 yt 입문했어 나름 공부하고 있는 중입니다.
시스메틱 카페에 "수식지왕" [sk3 이동평군정역배열]의 수식을 보고 습작을 하고 있는 중인데,
검증을 하니
"연산자 앞뒤의 두 데이타의 형태가 같아야 한다"는 오류메세지가 뜨는데, 아마 yt3에서 yt3.1차이 이면서
변수 선언에서 [정배열], [역배열], [이평수렴], (수렴조건), (청산조건)등 변수의 형태가 잘못되었다는 것은 대충 알겠는데
이들을 논리형(false)로 바꾸니 또 다른 문제가 나오네요
3.1버전에 맞게 변환을 해 주심 감사하겠습니다.
.
input : shortPeriod(5),midPeriod(10),longPeriod(20),Percent(1),수렴조건(2),청산조건(1);
var : 단기이평(0),중기이평(0),장기이평(0),정배열(0),역배열(0),최대(0),최소(0),이평수렴(0);
단기이평 = ma(C, shortPeriod);
중기이평 = ma(C, midPeriod);
장기이평 = ma(C, longPeriod);
정배열 = 단기이평 > 중기이평 and 중기이평 > 장기이평; //①
역배열 = 단기이평 < 중기이평 and 중기이평 < 장기이평;
최대 = max(단기이평,중기이평,장기이평); //③
최소 = min(단기이평,중기이평,장기이평);
이평수렴 = 최대[1]/최소[1] <= (1+Percent/100);
if CrossUp(단기이평, 중기이평) and 정배열 and //②
((수렴조건 == 1 and AccumN(이평수렴,5) > 0) or //④
(수렴조건 == 2 and 이평수렴) or
(수렴조건 == 3 and AccumN(이평수렴,3) == 3))
then
Buy();
if (청산조건 == 1 and !정배열) or //⑤
(청산조건 == 2 and 역배열)
then
ExitLong();
if CrossDown(단기이평, 중기이평) and 역배열 and //②
((수렴조건 == 1 and AccumN(이평수렴,5) > 0) or //④
(수렴조건 == 2 and 이평수렴) or
(수렴조건 == 3 and AccumN(이평수렴,3) == 3))
then
Sell();
if (청산조건 == 1 and !역배열) or //⑥
(청산조건 == 2 and 정배열) then
ExitShort();
답변 1
예스스탁 예스스탁 답변
2011-02-07 13:10:59
안녕하세요
예스스탁입니다.
input : shortPeriod(5),midPeriod(10),longPeriod(20),Percent(1),수렴조건(2),청산조건(1);
var : 단기이평(0),중기이평(0),장기이평(0),정배열(false),역배열(false),최대(0),최소(0),이평수렴(false);
단기이평 = ma(C, shortPeriod);
중기이평 = ma(C, midPeriod);
장기이평 = ma(C, longPeriod);
정배열 = 단기이평 > 중기이평 and 중기이평 > 장기이평; //①
역배열 = 단기이평 < 중기이평 and 중기이평 < 장기이평;
최대 = max(단기이평,중기이평,장기이평); //③
최소 = min(단기이평,중기이평,장기이평);
이평수렴 = 최대[1]/최소[1] <= (1+Percent/100);
if CrossUp(단기이평, 중기이평) and 정배열 and //②
((수렴조건 == 1 and countif(이평수렴,5) > 0) or //④
(수렴조건 == 2 and 이평수렴) or
(수렴조건 == 3 and countif(이평수렴,3) == 3))
then
Buy();
if (청산조건 == 1 and !정배열) or //⑤
(청산조건 == 2 and 역배열)
then
ExitLong();
if CrossDown(단기이평, 중기이평) and 역배열 and //②
((수렴조건 == 1 and countif(이평수렴,5) > 0) or //④
(수렴조건 == 2 and 이평수렴) or
(수렴조건 == 3 and countif(이평수렴,3) == 3))
then
Sell();
if (청산조건 == 1 and !역배열) or //⑥
(청산조건 == 2 and 정배열) then
ExitShort();
즐거운 하루되세요
> 자아준 님이 쓴 글입니다.
> 제목 : yt3.1로 변환부탁드립니다.
> 수고하십니다.
이제 yt 입문했어 나름 공부하고 있는 중입니다.
시스메틱 카페에 "수식지왕" [sk3 이동평군정역배열]의 수식을 보고 습작을 하고 있는 중인데,
검증을 하니
"연산자 앞뒤의 두 데이타의 형태가 같아야 한다"는 오류메세지가 뜨는데, 아마 yt3에서 yt3.1차이 이면서
변수 선언에서 [정배열], [역배열], [이평수렴], (수렴조건), (청산조건)등 변수의 형태가 잘못되었다는 것은 대충 알겠는데
이들을 논리형(false)로 바꾸니 또 다른 문제가 나오네요
3.1버전에 맞게 변환을 해 주심 감사하겠습니다.
.
input : shortPeriod(5),midPeriod(10),longPeriod(20),Percent(1),수렴조건(2),청산조건(1);
var : 단기이평(0),중기이평(0),장기이평(0),정배열(0),역배열(0),최대(0),최소(0),이평수렴(0);
단기이평 = ma(C, shortPeriod);
중기이평 = ma(C, midPeriod);
장기이평 = ma(C, longPeriod);
정배열 = 단기이평 > 중기이평 and 중기이평 > 장기이평; //①
역배열 = 단기이평 < 중기이평 and 중기이평 < 장기이평;
최대 = max(단기이평,중기이평,장기이평); //③
최소 = min(단기이평,중기이평,장기이평);
이평수렴 = 최대[1]/최소[1] <= (1+Percent/100);
if CrossUp(단기이평, 중기이평) and 정배열 and //②
((수렴조건 == 1 and AccumN(이평수렴,5) > 0) or //④
(수렴조건 == 2 and 이평수렴) or
(수렴조건 == 3 and AccumN(이평수렴,3) == 3))
then
Buy();
if (청산조건 == 1 and !정배열) or //⑤
(청산조건 == 2 and 역배열)
then
ExitLong();
if CrossDown(단기이평, 중기이평) and 역배열 and //②
((수렴조건 == 1 and AccumN(이평수렴,5) > 0) or //④
(수렴조건 == 2 and 이평수렴) or
(수렴조건 == 3 and AccumN(이평수렴,3) == 3))
then
Sell();
if (청산조건 == 1 and !역배열) or //⑥
(청산조건 == 2 and 정배열) then
ExitShort();
다음글
이전글