수고많습니다.
이전 질문에 하나더 추가해 문의드립니다.
if CrossUp(R,40) Then
{
B = 1;
if B[1] == -1 and ll < 30 Then
Buy();
}
if CrossDown(R,40) Then
{
B = -1;
ll = R;
}
if B == -1 Then
{
if R < ll Then
ll = R;
}
if CrossDown(R,60) Then
{
S = -1;
if S[1] == 1 and hh > 70 Then
Sell();
}
if CrossUp(R,60) Then
{
S = 1;
HH = R;
}
if S == 1 Then
{
if R > hh Then
hh = R;
}
위의 식에서 매수조건을 만족하더라도 추가로 5이평선을 돌파할 때 매수, 매도조건을 만족하더라도 추가로 5이평선을 이탈할 때 매도하고 싶습니다.
즉, 조건만족 상태가 되더라도 5이평선 돌파/이탈시까지 조건만족 상태로 있다가 5선을 돌파/이탈시 신호가 나오게 하고 싶습니다.
이경우 1. 종가에 진입과 2. 5선 돌파/이탈시 즉시 진입 다 가능하다면 둘 다 부탁드리겠습니다.
답변 1
예스스탁
예스스탁 답변
2024-05-03 17:13:07
안녕하세요
예스스탁입니다.
var : B(0),S(0),mav(0);
mav = ma(C,5);
#40상향돌파하면
if CrossUp(R,40) Then
{
#B는 1
B = 1;
#RSI가 30이하로 내려갔다가 올라온 경우라면
if B[1] == -1 and ll < 30 Then
{
#B는 2
B = 2;
#현재 종가가 이평위이면
if C > mav Then
{
#B는 3이고
B = 3;
#매수
Buy("b1");
}
}
}
Else
{
#RSI가 40을 돌파한 이후
#현재 B가 2이고 종가가 이평보다 커지면
if B == 2 and C > mav Then
{
#B는 3이고
B = 3;
#매수
Buy("b2");
}
}
if CrossDown(R,40) Then
{
B = -1;
ll = R;
}
if B == -1 Then
{
if R < ll Then
ll = R;
}
#RSI가 60을 하향이탈하면
if CrossDown(R,60) Then
{
#S는 -1
S = -1;
#RSI가 70 위로 올라갔다가 내려온 경우라면
if S[1] == 1 and hh > 70 Then
{
#S는 -2
S = -2;
#종가가 이평보다 작으면
if C < mav Then
Sell("s");
}
}
Else
{
#RSI가 60을 하향이탈한 이후
#현재 S가 -2이고 종가가 이평보다 작아지면
if S == -2 and C < mav Then
{
#S는 3이고
S = 3;
#매도
Sell("s2");
}
}
if CrossUp(R,60) Then
{
S = 1;
HH = R;
}
if S == 1 Then
{
if R > hh Then
hh = R;
}
즐거운 하루되세요
> 카르마다 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 수고많습니다.
이전 질문에 하나더 추가해 문의드립니다.
if CrossUp(R,40) Then
{
B = 1;
if B[1] == -1 and ll < 30 Then
Buy();
}
if CrossDown(R,40) Then
{
B = -1;
ll = R;
}
if B == -1 Then
{
if R < ll Then
ll = R;
}
if CrossDown(R,60) Then
{
S = -1;
if S[1] == 1 and hh > 70 Then
Sell();
}
if CrossUp(R,60) Then
{
S = 1;
HH = R;
}
if S == 1 Then
{
if R > hh Then
hh = R;
}
위의 식에서 매수조건을 만족하더라도 추가로 5이평선을 돌파할 때 매수, 매도조건을 만족하더라도 추가로 5이평선을 이탈할 때 매도하고 싶습니다.
즉, 조건만족 상태가 되더라도 5이평선 돌파/이탈시까지 조건만족 상태로 있다가 5선을 돌파/이탈시 신호가 나오게 하고 싶습니다.
이경우 1. 종가에 진입과 2. 5선 돌파/이탈시 즉시 진입 다 가능하다면 둘 다 부탁드리겠습니다.