커뮤니티

아. 왜 안되는걸까요?

프로필 이미지
올드송
2024-11-17 16:38:36
700
글번호 185327
답변완료
If 상승꺽임 Then { 꺽임상태 = "상승꺽임"; } If 하락꺽임 Then { 꺽임상태 = "하락꺽임"; } 연속4하락꺽임 = ( 꺽임상태 == "하락꺽임" && 꺽임상태[1] == "하락꺽임" && 꺽임상태[2] == "하락꺽임" && 꺽임상태[3] == "하락꺽임"); var : CrossUpID(0),CrossDownID(0); If 연속4하락꺽임 Then Begin CrossUpID = Text_New_Self (sDate, sTime, ST, "4"); Text_SetStyle(CrossUpID, 2, 2); Text_SetColor(CrossUpID, Blue); Text_SetSize(CrossUpID,20); End; If 하락꺽임 Then Begin CrossDownID = Text_New_Self (sDate, sTime, ST, "◇"); Text_SetStyle(CrossDownID, 2, 2); Text_SetColor(CrossDownID, Red); Text_SetSize(CrossDownID,20); End; 코드의 일부분 입니다. 상승꺽임, 하락꺽임은 잘 표시되는데 연속4하락꺽임은 안됩니다. 상승꺽임과 하락꺽임을 꺽임상태에 저장해 신호의 패턴을 규정하고 그걸 이용한 매매를 만들어 볼까 했는데.. 신호패턴 저장 방법에 문제가 있나봅니다. 머리속으로는 문제가 없는데 안되니까 답답하네요.. 삽질1 // 꺽임 상태 업데이트 If 상승꺽임 Then Begin 꺽임상태 = "상승꺽임"; End Else If 하락꺽임 Then Begin 꺽임상태 = "하락꺽임"; End Else Begin 꺽임상태 = "없음"; // 이전 꺽임 상태 유지하지 않고 '없음'으로 설정 End; // 연속4하락꺽임 카운터 업데이트 If 꺽임상태 == "하락꺽임" Then Begin 하락꺽임카운터 = 하락꺽임카운터 + 1; End Else If 꺽임상태 == "상승꺽임" Then Begin 하락꺽임카운터 = 0; End Else Begin 하락꺽임카운터 = 하락꺽임카운터; End; // 연속4하락꺽임 조건 설정 연속4하락꺽임 = (하락꺽임카운터 >= 4); // 크로스 업/다운 감지 및 표시 Var: CrossUpID(0), CrossDownID(0); // 연속4하락꺽임 발생 시 "4" 표시 If 연속4하락꺽임 Then Begin CrossUpID = Text_New_Self(sDate, sTime, ST, "4"); Text_SetStyle(CrossUpID, 2, 2); Text_SetColor(CrossUpID, Blue); Text_SetSize(CrossUpID, 20); End; 이런식으로 하면 하락꺽임 이 되긴 합니다만.. 패턴을 지정하기도 힘들고... 이전 코드가 왜 안되는지 알아야 겠어요 너무 답답해요.
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-11-18 11:15:06

안녕하세요 예스스탁입니다. 변수나 데이터 뒤에 [1],[2],[3]은 한봉전,두봉전 값입니다. 연속4하락꺽임 = ( 꺽임상태 == "하락꺽임" && 꺽임상태[1] == "하락꺽임" && 꺽임상태[2] == "하락꺽임" && 꺽임상태[3] == "하락꺽임"); 작성하신 위 내용은 최근 4개봉의 꺽임상태에 저장된 값이 모두 하락꺽임이라는 내용입니다. 최근 하락꺽임이 발생하고 4개봉이상 경과했다는 내용이면 위 내용이 맞습니다. 만약 가장 최근 4번의 꺽임 상태를 저장하고자 하시면 아래와 같이 작성해 사용하셔야 합니다. If 상승꺽임 Then { 꺽임상태 = "상승꺽임"; 꺽임상태1 = 꺽임상태[1]; 꺽임상태2 = 꺽임상태1[1]; 꺽임상태3 = 꺽임상태2[1]; } If 하락꺽임 Then { 꺽임상태 = "하락꺽임"; 꺽임상태1 = 꺽임상태[1]; 꺽임상태2 = 꺽임상태1[1]; 꺽임상태3 = 꺽임상태2[1]; } 연속4하락꺽임 = ( 꺽임상태 == "하락꺽임" && 꺽임상태1 == "하락꺽임" && 꺽임상태2 == "하락꺽임" && 꺽임상태3 == "하락꺽임"); 만약 상승꺽임과 하락꺽임이 서로 번갈아 발생하는 내용이면 동일 꺽임이 연속 발생하지 않으므로 위 내용은 의미가 없습니다. 즐거운 하루되세요 > 올드송 님이 쓴 글입니다. > 제목 : 아. 왜 안되는걸까요? > If 상승꺽임 Then { 꺽임상태 = "상승꺽임"; } If 하락꺽임 Then { 꺽임상태 = "하락꺽임"; } 연속4하락꺽임 = ( 꺽임상태 == "하락꺽임" && 꺽임상태[1] == "하락꺽임" && 꺽임상태[2] == "하락꺽임" && 꺽임상태[3] == "하락꺽임"); var : CrossUpID(0),CrossDownID(0); If 연속4하락꺽임 Then Begin CrossUpID = Text_New_Self (sDate, sTime, ST, "4"); Text_SetStyle(CrossUpID, 2, 2); Text_SetColor(CrossUpID, Blue); Text_SetSize(CrossUpID,20); End; If 하락꺽임 Then Begin CrossDownID = Text_New_Self (sDate, sTime, ST, "◇"); Text_SetStyle(CrossDownID, 2, 2); Text_SetColor(CrossDownID, Red); Text_SetSize(CrossDownID,20); End; 코드의 일부분 입니다. 상승꺽임, 하락꺽임은 잘 표시되는데 연속4하락꺽임은 안됩니다. 상승꺽임과 하락꺽임을 꺽임상태에 저장해 신호의 패턴을 규정하고 그걸 이용한 매매를 만들어 볼까 했는데.. 신호패턴 저장 방법에 문제가 있나봅니다. 머리속으로는 문제가 없는데 안되니까 답답하네요.. 삽질1 // 꺽임 상태 업데이트 If 상승꺽임 Then Begin 꺽임상태 = "상승꺽임"; End Else If 하락꺽임 Then Begin 꺽임상태 = "하락꺽임"; End Else Begin 꺽임상태 = "없음"; // 이전 꺽임 상태 유지하지 않고 '없음'으로 설정 End; // 연속4하락꺽임 카운터 업데이트 If 꺽임상태 == "하락꺽임" Then Begin 하락꺽임카운터 = 하락꺽임카운터 + 1; End Else If 꺽임상태 == "상승꺽임" Then Begin 하락꺽임카운터 = 0; End Else Begin 하락꺽임카운터 = 하락꺽임카운터; End; // 연속4하락꺽임 조건 설정 연속4하락꺽임 = (하락꺽임카운터 >= 4); // 크로스 업/다운 감지 및 표시 Var: CrossUpID(0), CrossDownID(0); // 연속4하락꺽임 발생 시 "4" 표시 If 연속4하락꺽임 Then Begin CrossUpID = Text_New_Self(sDate, sTime, ST, "4"); Text_SetStyle(CrossUpID, 2, 2); Text_SetColor(CrossUpID, Blue); Text_SetSize(CrossUpID, 20); End; 이런식으로 하면 하락꺽임 이 되긴 합니다만.. 패턴을 지정하기도 힘들고... 이전 코드가 왜 안되는지 알아야 겠어요 너무 답답해요.