커뮤니티

감사합니다. 수식의 오류를 고쳐 주세요.

프로필 이미지
금보
2009-08-28 08:49:36
622
글번호 24439
답변완료
안녕하세요? 만들어 주신 수식 감사합니다. >안녕하세요 >예스스탁이니다. >올리신 식에는 이동평균이 6개 입니다. >어떤이평이 어떤 이평을 데드 골드 날때 신호가 발생해야 하는지 모르겠습니다. (((만들어 주신 수식이 저가 만들고자한 수식이 맞습니다.))) input : period1(5),Period2(10),Period3(20),Period4(60),Period5(120),Period6(240); if crossup(ma(c, period1),ma(c,period2)) or crossup(ma(c,period3),ma(c,period4))or crossup(ma(c,period5),ma(c,period6)) Then buy(); if CrossDown(ma(c, period1),ma(c,period2)) or crossdown(ma(C,period3),ma(c,period4)) or crossdown(ma(c,period5),ma(c,period6)) Then Sell(); 골드 하는식으로 변경했습니다. 즐거운 하루되세요 위의 주신 수식을 <확장하여> 이동평균선을 12개로하여 아래와 같이 만들어서 검증을 하여보니 오류라고합니다. 문제점을 고쳐 주시기 부탁드립니다. 감사합니다. <<<확장한 수식>>> input : period1(5),Period2(10),Period3(20),Period4(60),Period5(120),Period6(240) period7(250),Period8(260),Period9(270),Period10(280),Period11(290),Period12(300); value1 = ma(C, Period1); value2 = ma(C, Period2); value3 = ma(C, Period3); value4 = ma(C, Period4); value5 = ma(C, Period5); value6 = ma(C, Period6); value7 = ma(C, Period7); value8 = ma(C, Period8); value9 = ma(C, Period9); value10 = ma(C, Period10); value11 = ma(C, Period11); value12 = ma(C, Period12); # 매수/매도청산 if crossup(ma(c, period1),ma(c,period2)) or crossup(ma(c,period3),ma(c,period4)) or crossup(ma(c,period5),ma(c,period6)) or crossup(ma(c,period7),ma(c,period8)) or crossup(ma(c,period9),ma(c,period10)) or crossup(ma(c,period11),ma(c,period12)) Then { buy(); } # 매도/매수청산 if CrossDown(ma(c, period1),ma(c,period2)) or crossdown(ma(C,period3),ma(c,period4)) or crossdown(ma(c,period5),ma(c,period6)) or CrossDown(ma(c,period7),ma(c,period8)) or crossdown(ma(C,period9),ma(c,period10)) or crossdown(ma(c,period11),ma(c,period12)) Then { Sell(); } 위의 수식의 오류를 고쳐 주시기를 부탁드립니다. 감사합니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2009-08-28 09:29:35

안녕하세요 예스스탁입니다. input 변수를 여러개 사용하실 때 선언과 선언사이에 ,를 넣어 주셔야 합니다 Period6 뒤에 , 가 빠졌었습니다. 또한 이평값을 변수로 사용하실 때는 아래와 같으 crossup이나 crossdown함수안에 변수를 넣우주시면 됩니다 input : period1(5),Period2(10),Period3(20),Period4(60),Period5(120),Period6(240), period7(250),Period8(260),Period9(270),Period10(280),Period11(290),Period12(300); value1 = ma(C, Period1); value2 = ma(C, Period2); value3 = ma(C, Period3); value4 = ma(C, Period4); value5 = ma(C, Period5); value6 = ma(C, Period6); value7 = ma(C, Period7); value8 = ma(C, Period8); value9 = ma(C, Period9); value10 = ma(C, Period10); value11 = ma(C, Period11); value12 = ma(C, Period12); # 매수/매도청산 if crossup(value1,value2) or crossup(value3,value4) or crossup(value5,value6) or crossup(value7,value8) or crossup(value9,value10) or crossup(value11,value12) Then { buy(); } # 매도/매수청산 if CrossDown(value1,value2) or CrossDown(value3,value4) or CrossDown(value5,value6) or CrossDown(value7,value8) or CrossDown(value9,value10) or CrossDown(value11,value12) Then { sell(); } 즐거운 하루되세요 > 금보 님이 쓴 글입니다. > 제목 : 감사합니다. 수식의 오류를 고쳐 주세요. > 안녕하세요? 만들어 주신 수식 감사합니다. >안녕하세요 >예스스탁이니다. >올리신 식에는 이동평균이 6개 입니다. >어떤이평이 어떤 이평을 데드 골드 날때 신호가 발생해야 하는지 모르겠습니다. (((만들어 주신 수식이 저가 만들고자한 수식이 맞습니다.))) input : period1(5),Period2(10),Period3(20),Period4(60),Period5(120),Period6(240); if crossup(ma(c, period1),ma(c,period2)) or crossup(ma(c,period3),ma(c,period4))or crossup(ma(c,period5),ma(c,period6)) Then buy(); if CrossDown(ma(c, period1),ma(c,period2)) or crossdown(ma(C,period3),ma(c,period4)) or crossdown(ma(c,period5),ma(c,period6)) Then Sell(); 골드 하는식으로 변경했습니다. 즐거운 하루되세요 위의 주신 수식을 <확장하여> 이동평균선을 12개로하여 아래와 같이 만들어서 검증을 하여보니 오류라고합니다. 문제점을 고쳐 주시기 부탁드립니다. 감사합니다. <<<확장한 수식>>> input : period1(5),Period2(10),Period3(20),Period4(60),Period5(120),Period6(240) period7(250),Period8(260),Period9(270),Period10(280),Period11(290),Period12(300); value1 = ma(C, Period1); value2 = ma(C, Period2); value3 = ma(C, Period3); value4 = ma(C, Period4); value5 = ma(C, Period5); value6 = ma(C, Period6); value7 = ma(C, Period7); value8 = ma(C, Period8); value9 = ma(C, Period9); value10 = ma(C, Period10); value11 = ma(C, Period11); value12 = ma(C, Period12); # 매수/매도청산 if crossup(ma(c, period1),ma(c,period2)) or crossup(ma(c,period3),ma(c,period4)) or crossup(ma(c,period5),ma(c,period6)) or crossup(ma(c,period7),ma(c,period8)) or crossup(ma(c,period9),ma(c,period10)) or crossup(ma(c,period11),ma(c,period12)) Then { buy(); } # 매도/매수청산 if CrossDown(ma(c, period1),ma(c,period2)) or crossdown(ma(C,period3),ma(c,period4)) or crossdown(ma(c,period5),ma(c,period6)) or CrossDown(ma(c,period7),ma(c,period8)) or crossdown(ma(C,period9),ma(c,period10)) or crossdown(ma(c,period11),ma(c,period12)) Then { Sell(); } 위의 수식의 오류를 고쳐 주시기를 부탁드립니다. 감사합니다.