커뮤니티

수식 수정 부탁드립니다.

프로필 이미지
은색
2011-06-04 21:13:35
505
글번호 39431
답변완료
아래 수식을 새로운 조건을 추가해서 수정 부탁드립니다. 아래 수식은 기준차트는 옵션차트로 하고, 10시 이후에 보조지표(data2)가 30분전 수치, 그러니까 9시 30분의 수치보다 크고, 이 조건에 더불어 10시 현재의 옵션가격이 9시 30분의 옵션가격의 80%보다 더 크면 30만원을 매수하는 것입니다. 즉, 옵션차트와 보조지표(data2)의 수치를 30분마다 비교해서 현재 수치가 더 크면 30만원을 매수하고, 보조지표의 수치만 크면 30만원의 절반인 15만원만 매수하는 식입니다. <새로운 조건> 여기에 보조지표를 하나 더 추가하고 싶습니다. 그리고 방식은 완전히 위와 같습니다. 즉, data1,data2,data3 의 현재 값이 모두 30분 전 값보다 크면(옵션가격은 30분전 가격의 80%보다 크면 됩니다) 기준금액을 매수하고, data1,data2 의 현재 값만 30분 전 값보다 크면(마찬가지로, 옵션가격은 30분전 가격의 80%보다 크면 됩니다) 기준금액의 50%를 매수하고, data2(data1이 아닙니다)의 현재 값만이 30분 전 값보다 크면 기준금액의 25%를 매수하는 수식작성 부탁드립니다. 감사합니다. <수식> input : 매수금액(300000); var : Entry(0,data1),D2v(0,data1),val1(0,data1),val2(0,data1),val3(0,data1),val4(0,data1); entry = int(매수금액/(C*BigPointValue)); D2v = data2(c);#보조지표 if data1(TimeToMinutes(stime)%30 == 0) Then{ val1 = D2v; val2 = val1[1]; val3 = c; val4 = val3[1]; } if data1(stime >= 100000 and stime < 150000 and TimeToMinutes(stime)%30 == 0) Then{ if Iff(val1 > val2,1,0)+iff(val3 > val4*0.8,1,0) == 2 Then buy("b1",OnClose,def,entry); if Iff(val1 > val2,1,0) == 1 and iff(val3 > val4*0.8,1,0) == 0 Then buy("b2",OnClose,def,entry/2); } SetStopLoss(20); SetStopEndofday(150000);
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2011-06-07 13:02:55

안녕하세요 예스스탁입니다. input : 매수금액(300000); var : Entry1(0,data1),D2v(0,data1),val1(0,data1),val2(0,data1),val3(0,data1),val4(0,data1); var : D3v(0,data1),val5(0,data1),val6(0,data1),entry2(0,data1),entry3(0,data1); entry1 = int(매수금액/(C*BigPointValue)); entry2 = int((매수금액*0.5)/(C*BigPointValue)); entry3 = int((매수금액*0.25)/(C*BigPointValue)); D2v = data2(c);#보조지표 d3v = data3(c);#보조지표 if data1(TimeToMinutes(stime)%30 == 0) Then{ val1 = D2v; val2 = val1[1]; val3 = c; val4 = val3[1]; val5 = c; val6 = val3[1]; } if data1(stime >= 100000 and stime < 150000 and TimeToMinutes(stime)%30 == 0) Then{ if Iff(val1 > val2,1,0) == 1 and iff(val3 > val4*0.8,1,0) == 1 and iff(val5 >val6,1,0) == 1 Then buy("b1",OnClose,def,entry1); if Iff(val1 > val2,1,0) == 1 and iff(val3 > val4*0.8,1,0) == 1 and iff(val5 <val6,1,0) == 0 Then buy("b2",OnClose,def,entry2); if Iff(val1 > val2,1,0) == 1 and iff(val3 > val4*0.8,1,0) == 0 and iff(val5 <val6,1,0) == 0 Then buy("b3",OnClose,def,entry3); } SetStopLoss(20); SetStopEndofday(150000); 즐거운 하루되세요 > 은색 님이 쓴 글입니다. > 제목 : 수식 수정 부탁드립니다. > 아래 수식을 새로운 조건을 추가해서 수정 부탁드립니다. 아래 수식은 기준차트는 옵션차트로 하고, 10시 이후에 보조지표(data2)가 30분전 수치, 그러니까 9시 30분의 수치보다 크고, 이 조건에 더불어 10시 현재의 옵션가격이 9시 30분의 옵션가격의 80%보다 더 크면 30만원을 매수하는 것입니다. 즉, 옵션차트와 보조지표(data2)의 수치를 30분마다 비교해서 현재 수치가 더 크면 30만원을 매수하고, 보조지표의 수치만 크면 30만원의 절반인 15만원만 매수하는 식입니다. <새로운 조건> 여기에 보조지표를 하나 더 추가하고 싶습니다. 그리고 방식은 완전히 위와 같습니다. 즉, data1,data2,data3 의 현재 값이 모두 30분 전 값보다 크면(옵션가격은 30분전 가격의 80%보다 크면 됩니다) 기준금액을 매수하고, data1,data2 의 현재 값만 30분 전 값보다 크면(마찬가지로, 옵션가격은 30분전 가격의 80%보다 크면 됩니다) 기준금액의 50%를 매수하고, data2(data1이 아닙니다)의 현재 값만이 30분 전 값보다 크면 기준금액의 25%를 매수하는 수식작성 부탁드립니다. 감사합니다. <수식> input : 매수금액(300000); var : Entry(0,data1),D2v(0,data1),val1(0,data1),val2(0,data1),val3(0,data1),val4(0,data1); entry = int(매수금액/(C*BigPointValue)); D2v = data2(c);#보조지표 if data1(TimeToMinutes(stime)%30 == 0) Then{ val1 = D2v; val2 = val1[1]; val3 = c; val4 = val3[1]; } if data1(stime >= 100000 and stime < 150000 and TimeToMinutes(stime)%30 == 0) Then{ if Iff(val1 > val2,1,0)+iff(val3 > val4*0.8,1,0) == 2 Then buy("b1",OnClose,def,entry); if Iff(val1 > val2,1,0) == 1 and iff(val3 > val4*0.8,1,0) == 0 Then buy("b2",OnClose,def,entry/2); } SetStopLoss(20); SetStopEndofday(150000);