커뮤니티

매매조건을 전체식에 적용하는 수식 질문드립니다

프로필 이미지
세종대왕
2011-09-19 05:04:47
531
글번호 42755
답변완료
다음식에서 각 식(10개이상)마다 반복해서 들어가는 식 -(value2 > 15000 and value3 > 100 or value2 > 10000 and value2 < 15000 and value3 > 80 or value2 < 10000 and value3 < 50) and (# 호가잔량합이 15000초과면 체결건수합이 100개보다 많아야 되고, 호가잔량합이 10000-15000이면 체결건수합은 80개보다 많아야 되고, 호가잔량합이 10000개미만이면 채결건수합은 50개보다 많아야함) 을 한번만 쓰고 모든식에 적용되도록하는 방법이 있나요? 부탁드립니다 Input : Period(5),P1(5),P2(20),... Var : value1(0),value2(0),value3(0),... value1 = ma(bids,period)-ma(asks,period); value2 = ma(bids,period)+ma(asks,period); value3 = ma(upticks,period)+ma(downticks,period); var1 = ma(c,P1); var2 = ma(c,P2); #1 if crossup(macdVal, macdSig) and (value2 > 15000 and value3 > 100 or value2 > 10000 and value2 < 15000 and value3 > 80 or value2 < 10000 and value3 < 50) and value1 > value1[1] then buy(); #2 if crossdown(macdVal, macdSig) and (value2 > 15000 and value3 > 100 or value2 > 10000 and value2 < 15000 and value3 > 80 or value2 < 10000 and value3 < 50) and value1 < value1[1] then sell(); #3 if crossup(var1, var2) and (value2 > 15000 and value3 > 100 or value2 > 10000 and value2 < 15000 and value3 > 80 or value2 < 10000 and value3 < 50) and value2 > value2[1] then buy(); #4 if crossdown(var1, var2) and (value2 > 15000 and value3 > 100 or value2 > 10000 and value2 < 15000 and value3 > 80 or value2 < 10000 and value3 < 50) and value2 < value2[1] then sell(); ...
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2011-09-19 14:03:33

안녕하세요 예스스탁입니다. 올리신 식이 검증이 되지 않고 조건식 내용이 불명확해 아래와 같이 간단한 예시를 남겨드립니다. 아래와 같이 작성하시면 조건A if문은 조건1,조건2,조건3,조건4,조건5 if문에 모두 적용됩니다. 아래와 같이 식을 구성하시기 바랍니다. if 조건A then { if 조건1 then buy(); if 조건2 then buy(); if 조건2 then buy(); if 조건4 then sell(); if 조건5 then sell(); ..... } 조건A에 (value2 > 15000 and value3 > 100) or (value2 > 10000 and value2 < 15000 and value3 > 80) or (value2 < 10000 and value3 < 50) 을 넣으시고 나머지식은 하부 if문으로 구성하시면 됩니다. 즐거운 하루되세요 > 줄다리기 님이 쓴 글입니다. > 제목 : 매매조건을 전체식에 적용하는 수식 질문드립니다 > 다음식에서 각 식(10개이상)마다 반복해서 들어가는 식 -(value2 > 15000 and value3 > 100 or value2 > 10000 and value2 < 15000 and value3 > 80 or value2 < 10000 and value3 < 50) and (# 호가잔량합이 15000초과면 체결건수합이 100개보다 많아야 되고, 호가잔량합이 10000-15000이면 체결건수합은 80개보다 많아야 되고, 호가잔량합이 10000개미만이면 채결건수합은 50개보다 많아야함) 을 한번만 쓰고 모든식에 적용되도록하는 방법이 있나요? 부탁드립니다 Input : Period(5),P1(5),P2(20),... Var : value1(0),value2(0),value3(0),... value1 = ma(bids,period)-ma(asks,period); value2 = ma(bids,period)+ma(asks,period); value3 = ma(upticks,period)+ma(downticks,period); var1 = ma(c,P1); var2 = ma(c,P2); #1 if crossup(macdVal, macdSig) and (value2 > 15000 and value3 > 100 or value2 > 10000 and value2 < 15000 and value3 > 80 or value2 < 10000 and value3 < 50) and value1 > value1[1] then buy(); #2 if crossdown(macdVal, macdSig) and (value2 > 15000 and value3 > 100 or value2 > 10000 and value2 < 15000 and value3 > 80 or value2 < 10000 and value3 < 50) and value1 < value1[1] then sell(); #3 if crossup(var1, var2) and (value2 > 15000 and value3 > 100 or value2 > 10000 and value2 < 15000 and value3 > 80 or value2 < 10000 and value3 < 50) and value2 > value2[1] then buy(); #4 if crossdown(var1, var2) and (value2 > 15000 and value3 > 100 or value2 > 10000 and value2 < 15000 and value3 > 80 or value2 < 10000 and value3 < 50) and value2 < value2[1] then sell(); ...