안녕하세요?
상방 = c > 200이평
하방 = C < 200이평
매도신호 = 장대음봉(평균*0.6 이상의 길이) 또는 긴꼬리 음봉(H-L 은 평균*0.6 이상, 꼬리 비율은 전체 H-L 의 60% 이상)
매수신호 = 장대양봉 또는 긴꼬리 양봉.
if 상방 then 매수신호가 나올 때마다 지표값 = 1;
else if 하방 then 매도신호가 나올 때마다 지표값 = -1;
else 지표값 = 0;
이제부터가 문제인데, 역추세 중에는, 매수신호가 나온다고 바로 지표값이 1이 되는게 아니고, 직전의 2번에 걸친 매수신호보다 저렴한 위치에서 나올 경우에만 지표값 = 1 이 됩니다.
하방 중 매도 신호가 나올 때에도 대칭으로 마찬가지.
그러니까:
if 상방 then 직전 2번의 매도신호가 나왔을 때의 C값들을 기억했다가 현재의 매도신호가 제일 유리할 때(즉, 그 때의 C값이 제일 높을 때) 지표값 = -1;
그 후에도, 상방이 유지하는 동안에는,매도 신호가 나오면, 그 때의 C값이 직전의 2번에 걸친 매도 신호가 나왔을 때의 값들보다 유리해야 지표값 = -1;
else if 하방 then 직전 2번의 매수신호가 나왔을 때의 c 값보다 현재의 매수신호가 제일 유리할 때(즉, 그때의 C값이 제일 낮을 때) , 지표값 = 1;
그 후에도 하방 == true인 동안에 매수신호가 나오면 그 때의 c값이 직전과 직직전의 매수 신호가 나왔을 때보다 c값이 낮아야 지표값 = 1;
(위와 대칭.)
else 지표값 = 0;
감사합니다.
답변 1
예스스탁
예스스탁 답변
2025-09-29 15:17:22.0
안녕하세요
예스스탁입니다.
var : 상방(False),하방(False),매도신호(False),매수신호(false);
var : b1(Nan),b2(Nan),s1(Nan),s2(NaN),t(0);
var1 = ma(C,200);
상방 = c > var1;
하방 = C < var1;
매도신호 = (C < O and abs(C-O) > ma(abs(C-O),20)*0.6) or
(C < O and H-L > ma(H-L,20)*0.60 and abs(C-O) <= (H-L)*0.4);
매수신호 = (C > O and abs(C-O) > ma(abs(C-O),20)*0.6) or
(C > O and H-L > ma(H-L,20)*0.60 and abs(C-O) <= (H-L)*0.4);
if 상방 Then
{
if 매수신호 Then
{
b1 = c;
b2 = c;
t = 1;
}
if 매수신호 and C > max(b1,b2) Then
{
s1 = c;
s2 = c;
t = -1;
}
}
if 하방 Then
{
if 매도신호 Then
{
s1 = c;
s2 = c;
t = -1;
}
if 매수신호 and C < min(b1,b2) Then
{
b1 = c;
b2 = c;
t = 1;
}
}
Plot1(t);
즐거운 명절 되시기 바랍니다.
> 에구머니 님이 쓴 글입니다.
> 제목 : 수식 문의
> 안녕하세요?
상방 = c > 200이평
하방 = C < 200이평
매도신호 = 장대음봉(평균*0.6 이상의 길이) 또는 긴꼬리 음봉(H-L 은 평균*0.6 이상, 꼬리 비율은 전체 H-L 의 60% 이상)
매수신호 = 장대양봉 또는 긴꼬리 양봉.
if 상방 then 매수신호가 나올 때마다 지표값 = 1;
else if 하방 then 매도신호가 나올 때마다 지표값 = -1;
else 지표값 = 0;
이제부터가 문제인데, 역추세 중에는, 매수신호가 나온다고 바로 지표값이 1이 되는게 아니고, 직전의 2번에 걸친 매수신호보다 저렴한 위치에서 나올 경우에만 지표값 = 1 이 됩니다.
하방 중 매도 신호가 나올 때에도 대칭으로 마찬가지.
그러니까:
if 상방 then 직전 2번의 매도신호가 나왔을 때의 C값들을 기억했다가 현재의 매도신호가 제일 유리할 때(즉, 그 때의 C값이 제일 높을 때) 지표값 = -1;
그 후에도, 상방이 유지하는 동안에는,매도 신호가 나오면, 그 때의 C값이 직전의 2번에 걸친 매도 신호가 나왔을 때의 값들보다 유리해야 지표값 = -1;
else if 하방 then 직전 2번의 매수신호가 나왔을 때의 c 값보다 현재의 매수신호가 제일 유리할 때(즉, 그때의 C값이 제일 낮을 때) , 지표값 = 1;
그 후에도 하방 == true인 동안에 매수신호가 나오면 그 때의 c값이 직전과 직직전의 매수 신호가 나왔을 때보다 c값이 낮아야 지표값 = 1;
(위와 대칭.)
else 지표값 = 0;
감사합니다.