커뮤니티
사용자함수 수정 부탁합니다.
2007-02-26 20:20:39
1204
글번호 12021
아래식은 선물만기일에는 진입을 금지하는 사용자함수인데, "if 만기일진입금지() then "를 만족해야만 시스템식을 수행하도록 했는데 전혀 매매가 발생하지 않습니다. 도와 주세요.
var:value1(0), value2(0), value3(0), value4(0), value5(0),value6(0),value7(0), value8(0),value9(0);
VALUE1=IFF( (DATE != 20060309 AND DATE != 20060608) AND (DATE != 20060914 AND DATE != 20061214) ,1,0);
VALUE2=IFF( (DATE != 20050310 AND DATE != 20050609) AND (DATE != 20050908 AND DATE != 20051208) ,1,0);
VALUE3=IFF( (DATE != 20040311 AND DATE != 20040610) AND (DATE != 20040909 AND DATE != 20041209) ,1,0);
VALUE4=IFF( (DATE != 20030313 AND DATE != 20030612) AND (DATE != 20030915 AND DATE != 20031211) ,1,0);
VALUE5=IFF( (DATE != 20020314 AND DATE != 20020614) AND (DATE != 20020912 AND DATE != 20021212) ,1,0);
VALUE6=IFF( (DATE != 20010308 AND DATE != 20010614) AND (DATE != 20010913 AND DATE != 20011213) ,1,0);
VALUE7=IFF( (DATE != 20000309 AND DATE != 20000608) AND (DATE != 20000914 AND DATE != 20001214) ,1,0);
VALUE8=IFF( (DATE != 19990311 AND DATE != 19990610) AND (DATE != 19990909 AND DATE != 19991209) ,1,0);
VALUE9=VALUE1+VALUE2+VALUE3+VALUE4+VALUE5+VALUE6+VALUE7+VALUE8;
만기일진입금지=IFF(VALUE9==8,1,0);
답변 1
예스스탁 예스스탁 답변
2007-02-27 17:24:11
안녕하세요
예스스탁입니다.
만기일진입금지=IFF(VALUE9==8,1,0);
만기일진입금지에는 1 혹은 0값이 저장됩니다.
그런데 조건문에
if 만기일진입금지() then 라고만 작성하면
만기일진입금지변수값이 1값이거나 0값이거나 상관없이 진입합게 됩니다.
if 만기일진입금지() == 1 then 혹은 if 만기일진입금지() == 0 then
과 같이 사용하셔야 합니다.
또한
사용자함수 식안에서
VALUE1=IFF( (DATE != 20060309 AND DATE != 20060608) AND (DATE != 20060914 AND DATE != 20061214) ,1,0);
주어진 날짜가 모두 만족할때만 1값을 나오게 합니다.
or로 변경하셔야 할거 같습니다.
var:value1(0), value2(0), value3(0), value4(0), value5(0),value6(0),value7(0), value8(0),value9(0);
VALUE1=IFF( (DATE != 20060309 or DATE != 20060608) or (DATE != 20060914 or DATE != 20061214) ,1,0);
VALUE2=IFF( (DATE != 20050310 or DATE != 20050609) or (DATE != 20050908 or DATE != 20051208) ,1,0);
VALUE3=IFF( (DATE != 20040311 or DATE != 20040610) or (DATE != 20040909 or DATE != 20041209) ,1,0);
VALUE4=IFF( (DATE != 20030313 or DATE != 20030612) or (DATE != 20030915 or DATE != 20031211) ,1,0);
VALUE5=IFF( (DATE != 20020314 or DATE != 20020614) or (DATE != 20020912 or DATE != 20021212) ,1,0);
VALUE6=IFF( (DATE != 20010308 or DATE != 20010614) or (DATE != 20010913 or DATE != 20011213) ,1,0);
VALUE7=IFF( (DATE != 20000309 or DATE != 20000608) or (DATE != 20000914 or DATE != 20001214) ,1,0);
VALUE8=IFF( (DATE != 19990311 or DATE != 19990610) or (DATE != 19990909 or DATE != 19991209) ,1,0);
즐거운 하루되세요
> CJ_coco 님이 쓴 글입니다.
> 제목 : 사용자함수 수정 부탁합니다.
>
아래식은 선물만기일에는 진입을 금지하는 사용자함수인데, "if 만기일진입금지() then "를 만족해야만 시스템식을 수행하도록 했는데 전혀 매매가 발생하지 않습니다. 도와 주세요.
var:value1(0), value2(0), value3(0), value4(0), value5(0),value6(0),value7(0), value8(0),value9(0);
VALUE1=IFF( (DATE != 20060309 AND DATE != 20060608) AND (DATE != 20060914 AND DATE != 20061214) ,1,0);
VALUE2=IFF( (DATE != 20050310 AND DATE != 20050609) AND (DATE != 20050908 AND DATE != 20051208) ,1,0);
VALUE3=IFF( (DATE != 20040311 AND DATE != 20040610) AND (DATE != 20040909 AND DATE != 20041209) ,1,0);
VALUE4=IFF( (DATE != 20030313 AND DATE != 20030612) AND (DATE != 20030915 AND DATE != 20031211) ,1,0);
VALUE5=IFF( (DATE != 20020314 AND DATE != 20020614) AND (DATE != 20020912 AND DATE != 20021212) ,1,0);
VALUE6=IFF( (DATE != 20010308 AND DATE != 20010614) AND (DATE != 20010913 AND DATE != 20011213) ,1,0);
VALUE7=IFF( (DATE != 20000309 AND DATE != 20000608) AND (DATE != 20000914 AND DATE != 20001214) ,1,0);
VALUE8=IFF( (DATE != 19990311 AND DATE != 19990610) AND (DATE != 19990909 AND DATE != 19991209) ,1,0);
VALUE9=VALUE1+VALUE2+VALUE3+VALUE4+VALUE5+VALUE6+VALUE7+VALUE8;
만기일진입금지=IFF(VALUE9==8,1,0);