커뮤니티

수식수정

프로필 이미지
ksks
2024-08-13 13:13:26
1138
글번호 182495
답변완료
아래 수식에 의한 신호가 서로 달리 나오는 문제가 있어 올립니다. 변환전 수식에서는 신호가 나오는데 후 수식에는 안나오고, 변환후 수식에 검색되는 종목에는 전 수식의 신호가 안나옵니다. 혹시 아래 두 수식의 괄호에 문제가 있는지 검토해주세요. 괄호가 복잡해서 따라가기 어렵네요. ======================================================================= *예스랭기지로 변환 전 수식 A=BBandsUp(17,2); B=BBandsUp(40,2); M=EnvelopeUp(20,6); (c>ma(h,5) and Crossup(A,M)) or (c>ma(h,5) and B>M and Crossup(A,B)) or (A>B and B>M and Crossup(C,A)) or (Crossup(C,A)) and Crossup(C,B) and Crossup(C,M)) =============================================================== *예스랭기지로 변환 후 수식 var : AA(0),BB(0),MM(0), R(0); AA=BollBandUp(17,2); BB=BollBandUp(40,2); MM=EnvelopeUp(20,6); R = RSI(20); var1 = Disparity(120); if (((c>ma(h,5) and Crossup(AA,MM)) or (c>ma(h,5) and BB>MM and Crossup(AA,BB)) or (AA>BB and BB>MM and Crossup(C,AA)) or (Crossup(C,AA))and Crossup(C,BB) and Crossup(C,MM))) and var1 <= 120 and C>=C[1]*1.05 and R>60 and V>V[1]*2 Then Find(1); 이상입니다.
종목검색
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-08-13 13:34:11

안녕하세요 예스스탁입니다. 조건문 내용을 보시면 문장 마지막에 )에 맞는 짝이 없습니다. 기존식에는 문장 가장 앞에 (를 넣었는데 마지막 or 뒤에 (를 넣어 수정해 드립니다. 아래 내용으로 맞지 않으면 ()를 짝을 맞게 수정해 보시기 바랍니다. 수정하시기 편하게 해당 조건은 condition로 빼서 처리해 드립니다. var : AA(0),BB(0),MM(0), R(0); AA=BollBandUp(17,2); BB=BollBandUp(40,2); MM=EnvelopeUp(20,6); R = RSI(20); var1 = Disparity(120); Condition1 = (c>ma(h,5) and Crossup(AA,MM)) or (c>ma(h,5) and BB>MM and Crossup(AA,BB)) or (AA>BB and BB>MM and Crossup(C,AA)) or (Crossup(C,AA) and Crossup(C,BB) and Crossup(C,MM)); if Condition1 == true and var1 <= 120 and C>=C[1]*1.05 and R>60 and V>V[1]*2 Then Find(1); 즐거운 하루되세요 > ksks 님이 쓴 글입니다. > 제목 : 수식수정 > 아래 수식에 의한 신호가 서로 달리 나오는 문제가 있어 올립니다. 변환전 수식에서는 신호가 나오는데 후 수식에는 안나오고, 변환후 수식에 검색되는 종목에는 전 수식의 신호가 안나옵니다. 혹시 아래 두 수식의 괄호에 문제가 있는지 검토해주세요. 괄호가 복잡해서 따라가기 어렵네요. ======================================================================= *예스랭기지로 변환 전 수식 A=BBandsUp(17,2); B=BBandsUp(40,2); M=EnvelopeUp(20,6); (c>ma(h,5) and Crossup(A,M)) or (c>ma(h,5) and B>M and Crossup(A,B)) or (A>B and B>M and Crossup(C,A)) or (Crossup(C,A)) and Crossup(C,B) and Crossup(C,M)) =============================================================== *예스랭기지로 변환 후 수식 var : AA(0),BB(0),MM(0), R(0); AA=BollBandUp(17,2); BB=BollBandUp(40,2); MM=EnvelopeUp(20,6); R = RSI(20); var1 = Disparity(120); if (((c>ma(h,5) and Crossup(AA,MM)) or (c>ma(h,5) and BB>MM and Crossup(AA,BB)) or (AA>BB and BB>MM and Crossup(C,AA)) or (Crossup(C,AA))and Crossup(C,BB) and Crossup(C,MM))) and var1 <= 120 and C>=C[1]*1.05 and R>60 and V>V[1]*2 Then Find(1); 이상입니다.