커뮤니티

stime 이 문제인가요.. 작동이 안되네요.

프로필 이미지
회원
2008-11-09 15:29:20
713
글번호 17990
답변완료
if sdate!=sdate[1] Then{ if stime >= 93000 and stime<150200 then{ if CrossUp(ma(c,5),ma(c,10)) Then buy("첫매수",AtMarket,1); } } if IsEntryName("첫매수",1) Then var1=1; Else var1=2; if var1==1 then { if Crossup(ma(c,5),ma(c,20)) Then buy("매수2",AtMarket,DEF,1); } if TotalTrades>=2 and var1==2 Then{ if Crossup(ma(c,5),ma(c,20)) Then buy("매수3",AtMarket,DEF,1); } if CrossDown(ma(c,5),ma(c,20)) Then ExitLong("청산", AtMarket,DEF,DEF); 수식을 보완해 가며 작성중인데 처음부터 막히네요, 일단 매수를 3단계로 나누어 봤습니다.. 1.첫매수를 093000 이후에 작동하게끔 하려고 하는데 작동을 하지 않습니다. stime 때문인거 같은데 , stime 조건을 빼면 작동합니다., 어디가 논리적으로 맞지않는 부분인지 찾지 못하겠습니다. 잘못된곳 고쳐주시고 설명좀 부탁드립니다. 2.위 식과 아래의 식은 뼈대는 같습니다. 아래의 식은 날짜가 변경될때마다 첫매수가 작동합니다. 하지만 위의 식은(sitime 조건 삭제시) 날짜 변경시 첫매수가 작동되지않는 경우가 있더군요, 왜 그런거죠, 설명 부탁드리고 수정부탁드립니다. var:cnt(0); cnt=0; if IsEntryName("매수111",1) Then var1=1; Else var1=2; if sdate!=date[1] then buy("매수111", AtMarket,DEF,1); if var1==1 then { if Crossup(ma(c,5),ma(c,20)) Then buy("매수",AtMarket,DEF,DEF); } if TotalTrades>=2 and var1==2 Then{ if Crossup(ma(c,5),ma(c,20)) Then buy("매수a",AtMarket,DEF,DEF); } if CrossDown(ma(c,5),ma(c,20)) Then ExitLong("청산", AtMarket,DEF,DEF); 그리고 수식 공부하는 데 도움이 될만한 책이나 프로그램 지침서 같은거 있으면 추천해주시거나 자료 있음 보내주시면 감사합니다. 예를 들어 c언어 같은게 로직을 짜는데 도움이 되나요...프로그램 언어 같은것은 전혀 접해보지않아서,, 하여튼 고수님의 의견을 듣고 싶습니다. byunghee1976 @ naver.com 자꾸 귀찮게 해서리 죄송하고 항상감사하게 생각합니다. 행복하세요.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2008-11-10 11:01:03

> CJ_coco 님이 쓴 글입니다. > 제목 : stime 이 문제인가요.. 작동이 안되네요. > if sdate!=sdate[1] Then{ if stime >= 93000 and stime<150200 then{ if CrossUp(ma(c,5),ma(c,10)) Then buy("첫매수",AtMarket,1); } } if IsEntryName("첫매수",1) Then var1=1; Else var1=2; if var1==1 then { if Crossup(ma(c,5),ma(c,20)) Then buy("매수2",AtMarket,DEF,1); } if TotalTrades>=2 and var1==2 Then{ if Crossup(ma(c,5),ma(c,20)) Then buy("매수3",AtMarket,DEF,1); } if CrossDown(ma(c,5),ma(c,20)) Then ExitLong("청산", AtMarket,DEF,DEF); 수식을 보완해 가며 작성중인데 처음부터 막히네요, 일단 매수를 3단계로 나누어 봤습니다.. 1.첫매수를 093000 이후에 작동하게끔 하려고 하는데 작동을 하지 않습니다. stime 때문인거 같은데 , stime 조건을 빼면 작동합니다., 어디가 논리적으로 맞지않는 부분인지 찾지 못하겠습니다. 잘못된곳 고쳐주시고 설명좀 부탁드립니다. 2.위 식과 아래의 식은 뼈대는 같습니다. 아래의 식은 날짜가 변경될때마다 첫매수가 작동합니다. 하지만 위의 식은(sitime 조건 삭제시) 날짜 변경시 첫매수가 작동되지않는 경우가 있더군요, 왜 그런거죠, 설명 부탁드리고 수정부탁드립니다. var:cnt(0); cnt=0; if IsEntryName("매수111",1) Then var1=1; Else var1=2; if sdate!=date[1] then buy("매수111", AtMarket,DEF,1); if var1==1 then { if Crossup(ma(c,5),ma(c,20)) Then buy("매수",AtMarket,DEF,DEF); } if TotalTrades>=2 and var1==2 Then{ if Crossup(ma(c,5),ma(c,20)) Then buy("매수a",AtMarket,DEF,DEF); } if CrossDown(ma(c,5),ma(c,20)) Then ExitLong("청산", AtMarket,DEF,DEF); 그리고 수식 공부하는 데 도움이 될만한 책이나 프로그램 지침서 같은거 있으면 추천해주시거나 자료 있음 보내주시면 감사합니다. 예를 들어 c언어 같은게 로직을 짜는데 도움이 되나요...프로그램 언어 같은것은 전혀 접해보지않아서,, 하여튼 고수님의 의견을 듣고 싶습니다. byunghee1976 @ naver.com 자꾸 귀찮게 해서리 죄송하고 항상감사하게 생각합니다. 행복하세요.