커뮤니티

수식 수정 부탁드립니다. 아님 새로 작성해주시길...

프로필 이미지
가나다라
2005-04-27 19:57:59
1731
글번호 7243
답변완료
안녕하세요? 하루에 한번만 진입하구요. 만약 손절이 없으면 종가청산하구요. 최고가격대비(setstoptrailing ?)로 이익실현할거구요. 예를 들어 9시 10분에 조건(A와 B를 비교하여) 현재가격이 C>A THEN BUY하고C<A THEN SELL. 손절매는 진입가격대비 +- 0.5 이면 청산하고 오늘은 매매하지 않는다. 만약 이익이 났으면 최고가격에서 0.3포인트 하락하면 청산하고 오늘은 매매하지 않는다. ****************************************************************** var: bcnt(0), scnt(0); if sdate != sdate(1) and stime >= 1000 then{ if C > A then buy(); if C < A then sell(); bcnt=1; scnt=1;} if stime>=1005 and stime<=1455 then { if bcnt == 1 and c <= (entryprice() -0.5) then exitlong(); bcnt=0; if scnt == -1 and C >= (entryprice() +0.5) then exitshort(); scnt=0; setstoptrailing(0.3, MAXPRICE, pointstop, 0);} if marketposition() !=0 then setstopendofday(); ************************************************************** 여기에서 sdate != sdate(1)을 저는 매일매일 새로 시작한다는 것으로 썼는데 문법이 틀리다고 나오네요. 또한 진입하고 나서 매수했으면(진입가격이 100포인트라고 가정) 가격이 봉마다 고가를갱신하여 최고가대비 0.3포인트 하락하면(MAXVALUE-0.3) 매수청산. 계속 고가갱신하면 종가청산. 매도는 그 반대겠죠.100에 매도했는데 99. ....98.... 97.... 그렇게 가다가 97.3이면(MINVALUE+0.30) 매도청산. 조건A는 제가 넣을거니까 신경쓰지 마시구요. 너무 길어서 죄송합니다. 꼭 좀 부탁드리겠습니다. 미리 감사드립니다.
시스템
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2005-04-28 13:42:35

안녕하세요 예스스탁입니다. 문의하신 식은 다음과 같습니다. var: bcnt(0), scnt(0); setstoptrailing(0.3, MAXPRICE, pointstop, 1); setstopendofday(1500) ; if sdate != sdate[1] then{ Bcnt = 0; Scnt = 0; } if stime >= 100000 then{ if C > A and Bcnt < 1 and Scnt < 1 then buy("매수"); if C < A and Bcnt < 1 and Scnt < 1 then sell("매도"); } if stime <= 145500 then { if marketposition() == 1 and c <= (entryprice()-0.5) then exitlong("매수손절"); bcnt=0; if marketposition() == -1 and C >= (entryprice()+0.5) then exitshort("매도손절"); scnt=0; } 최고가격대비하락과 당일청산은 위와 같이 사용하시면 됩니다. 또한 손절시에 당일 더이상 진입이 들어가지 않게 했습니다. 참고하시기 바랍니다. 즐거운 하루되세요 > 가나다라 님이 쓴 글입니다. > 제목 : 수식 수정 부탁드립니다. 아님 새로 작성해주시길... > 안녕하세요? 하루에 한번만 진입하구요. 만약 손절이 없으면 종가청산하구요. 최고가격대비(setstoptrailing ?)로 이익실현할거구요. 예를 들어 9시 10분에 조건(A와 B를 비교하여) 현재가격이 C>A THEN BUY하고C<A THEN SELL. 손절매는 진입가격대비 +- 0.5 이면 청산하고 오늘은 매매하지 않는다. 만약 이익이 났으면 최고가격에서 0.3포인트 하락하면 청산하고 오늘은 매매하지 않는다. ****************************************************************** var: bcnt(0), scnt(0); if sdate != sdate(1) and stime >= 1000 then{ if C > A then buy(); if C < A then sell(); bcnt=1; scnt=1;} if stime>=1005 and stime<=1455 then { if bcnt == 1 and c <= (entryprice() -0.5) then exitlong(); bcnt=0; if scnt == -1 and C >= (entryprice() +0.5) then exitshort(); scnt=0; setstoptrailing(0.3, MAXPRICE, pointstop, 0);} if marketposition() !=0 then setstopendofday(); ************************************************************** 여기에서 sdate != sdate(1)을 저는 매일매일 새로 시작한다는 것으로 썼는데 문법이 틀리다고 나오네요. 또한 진입하고 나서 매수했으면(진입가격이 100포인트라고 가정) 가격이 봉마다 고가를갱신하여 최고가대비 0.3포인트 하락하면(MAXVALUE-0.3) 매수청산. 계속 고가갱신하면 종가청산. 매도는 그 반대겠죠.100에 매도했는데 99. ....98.... 97.... 그렇게 가다가 97.3이면(MINVALUE+0.30) 매도청산. 조건A는 제가 넣을거니까 신경쓰지 마시구요. 너무 길어서 죄송합니다. 꼭 좀 부탁드리겠습니다. 미리 감사드립니다.
프로필 이미지

예스스탁 예스스탁 답변

2005-04-28 17:23:32

안녕하세요 예스스탁입니다. 말씀하신 부분을 추가했습니다. input : drop(0.3),up(0.5); var: bcnt(0), scnt(0),Bidx(0),Sidx(0),A(0); setstopendofday(1500); if sdate != sdate[1] then{ Bcnt = 0; Scnt = 0; } if stime >= 100000 then{ if C > A and Bcnt < 1 and Scnt < 1 then{ buy("매수"); Bidx= index(); } if C < A and Bcnt < 1 and Scnt < 1 then{ sell("매도"); Sidx = index(); } } if entryprice()+up < highest(C,index()-Bidx) and C <= highest(C,index()-Bidx)-drop then exitlong(); if entryprice()-up > lowest(C,index()-Sidx) and C >= lowest(C,index()-Bidx)+drop then exitshort(); if stime <= 145500 then { if marketposition() == 1 and c <= (entryprice()-0.5) then exitlong("매수손절"); bcnt=0; if marketposition() == -1 and C >= (entryprice()+0.5) then exitshort("매도손절"); scnt=0; } #################설명 if entryprice()+up < highest(C,index()-Bidx) and C <= highest(C,index()-Bidx)-drop then exitlong(); 매수시점부터 현재까지의 종가는 진입가보다 0.5포인트 이상 상승 했어야 하고 (상승을 계속한다면 계속 포지션을 가져갑니다. 0.5포인트 이상 상승후에 그 이후 최고가 대비 0.3포인트 하락하면 청산합니다.) 현재 가격이 매수이후에 종가의 최고가에서 0.3포인트 하락하면 매수청산입니다. 매도청산은 반대입니다. 즐거운 하루되세요~~ > 가나다라 님이 쓴 글입니다. > 제목 : 수식 수정 부탁드립니다. 아님 새로 작성해주시길... > 안녕하세요? 하루에 한번만 진입하구요. 만약 손절이 없으면 종가청산하구요. 최고가격대비(setstoptrailing ?)로 이익실현할거구요. 예를 들어 9시 10분에 조건(A와 B를 비교하여) 현재가격이 C>A THEN BUY하고C<A THEN SELL. 손절매는 진입가격대비 +- 0.5 이면 청산하고 오늘은 매매하지 않는다. 만약 이익이 났으면 최고가격에서 0.3포인트 하락하면 청산하고 오늘은 매매하지 않는다. ****************************************************************** var: bcnt(0), scnt(0); if sdate != sdate(1) and stime >= 1000 then{ if C > A then buy(); if C < A then sell(); bcnt=1; scnt=1;} if stime>=1005 and stime<=1455 then { if bcnt == 1 and c <= (entryprice() -0.5) then exitlong(); bcnt=0; if scnt == -1 and C >= (entryprice() +0.5) then exitshort(); scnt=0; setstoptrailing(0.3, MAXPRICE, pointstop, 0);} if marketposition() !=0 then setstopendofday(); ************************************************************** 여기에서 sdate != sdate(1)을 저는 매일매일 새로 시작한다는 것으로 썼는데 문법이 틀리다고 나오네요. 또한 진입하고 나서 매수했으면(진입가격이 100포인트라고 가정) 가격이 봉마다 고가를갱신하여 최고가대비 0.3포인트 하락하면(MAXVALUE-0.3) 매수청산. 계속 고가갱신하면 종가청산. 매도는 그 반대겠죠.100에 매도했는데 99. ....98.... 97.... 그렇게 가다가 97.3이면(MINVALUE+0.30) 매도청산. 조건A는 제가 넣을거니까 신경쓰지 마시구요. 너무 길어서 죄송합니다. 꼭 좀 부탁드리겠습니다. 미리 감사드립니다.