예스스탁
예스스탁 답변
2021-04-15 14:40:03
안녕하세요
예스스탁입니다.
1
if Y == -1 and C < O and (C+O) <= var27 Then
ExitLong("콜정산");
현재 수정하신 수식중에 매수청산쪽에 몸통의 중심값이 (C+O)로 잘못지정되어 있습니다.
(C+O)/2로 변경하셔야 합니다.
2
매수진입 : 60-240골드구간이고 양봉이고 20선이 상향반전일때
매수청산 : 1. 현재 5-20 골드구간이고 진입이후 5-20 데드구간이 발생한적이 없고 5선 하향반전이 3번째 발생할 때
2. 20선 하락중이고 음봉이고 몸통의 중간값이 20선 이하일떄
매도진입 : 60-240데드구간이고 음봉이고 20선이 하향반전일때
매수청산 : 1. 현재 5-20 데드구간이고 진입이후 5-20 골드구간이 발생한적이 없고 5선 상향반전이 3번째 발생할 때
2. 20선 상승중이고 양봉이고 몸통의 중간값이 20선 이상일떄
현재 해당 수식은 위 내용으로 신호가 발생합니다.
어떤 내용을 삭제 혹은 추가해 드려야할지 알수 없습니다.
해당 부분은 내용확인하시고 의도와 다른부분이 있으시면 수식 내용을 수정하셔야 합니다.
5파변곡조건에 5-20 골드/데드 조건이 필요없으시면
U == 1 and CountIf(U == -1,BarsSinceEntry) == 0 and
U == -1 and CountIf(U == 1,BarsSinceEntry) == 0 and
해당 청산식에서 위 조건은 삭제하시기 바랍니다.
3
var : Period1(3),Period2(10),Period3(30),Period4(120),U(0),K(0),W(0),N(0),X(0),Y(0),Z(0);
var26 = ema(Ema(Ema(c,period1),period1),period1); //5선
var27 = ema(Ema(Ema(c,period2),period2),period2); //20선
Var28 = ema(Ema(Ema(c,period3),period3),period3); //60선
Var29 = ema(Ema(Ema(c,period4),period4),period4); //240선
//5-20 cross
if CrossUp(Var26,Var27) Then
U = 1;
if CrossDown(Var26,Var27) Then
U = -1;
//20-60 cross
if CrossUp(Var27,Var28) Then
K = 1;
if CrossDown(Var27,Var28) Then
K = -1;
//60-240 cross
if CrossUp(Var28,Var29) Then
W = 1;
if CrossDown(Var28,Var29) Then
W = -1;
//5-60 cross
if CrossUp(Var26,Var28) Then
N = 1;
if CrossDown(Var26,Var28) Then
N = -1;
//5선 상승하락
if Var26 > var26[1] Then
X = 1;
if Var26 < var26[1] Then
X = -1;
//20선 상승하락
if Var27 > var27[1] Then
Y = 1;
if Var27 < var27[1] Then
Y = -1;
//60선 상승하락
if Var28 > var28[1] Then
Z = 1;
if Var28 < var28[1] Then
Z = -1;
If MarketPosition <= 0 and
W == 1 and C > O and Y == 1 and Y != Y[1] Then
Buy("콜");
if MarketPosition == 1 Then
{
if U == 1 and CountIf(U == -1,BarsSinceEntry) == 0 and
X == -1 and X != X[1] and CountIf(X == -1 and X != X[1],BarsSinceEntry) == 3 Then
ExitLong("콜청산1");
if Y == -1 and C < O and (C+O)/2 <= var27 Then
ExitLong("콜정산2");
}
if MarketPosition >= 0 and
W == -1 and C < O and Y == -1 and Y != Y[1] Then
Sell("풋");
if MarketPosition == -1 Then
{
if U == -1 and CountIf(U == 1,BarsSinceEntry) == 0 and
X == 1 and X != X[1] and CountIf(X == 1 and X != X[1],BarsSinceEntry) == 3 Then
ExitShort("풋청산1");
if Y == 1 and C > O and (C+O)/2 >= Var27 Then
ExitShort("풋정산2");
}
SetStopEndofday(153000);
즐거운 하루되세요
> 중추신경 님이 쓴 글입니다.
> 제목 : 수식 검증 바랍니다
> 알려주신 수식으로 작성하고, Var만 숫자를 바꿔서 적용하고
60-240 Cross에서 20선이 변곡시 진입해서, 60선이 5파 변곡에서 청산을 5선이 5파변곡에서 청산으로 수정을 했습니다.
1. 신호가 중간중간 나타나기 않네요..검증 부탁합니다
2. 매수 사인을 추가로 하고 싶으면 청산에 넣었던것처럼 중괄로로 하고 똑같이 묶어주면 되는걸까요?
var : Period1(3),Period2(10),Period3(30),Period4(120),U(0),K(0),W(0),N(0),X(0),Y(0),Z(0);
var26 = ema(Ema(Ema(c,period1),period1),period1); //5선
var27 = ema(Ema(Ema(c,period2),period2),period2); //20선
Var28 = ema(Ema(Ema(c,period3),period3),period3); //60선
Var29 = ema(Ema(Ema(c,period4),period4),period4); //240선
if CrossUp(Var26,Var27) Then
U = 1; //5-20 cross
if CrossDown(Var26,Var27) Then
U = -1;
if CrossUp(Var27,Var28) Then
K = 1; //20-60 cross
if CrossDown(Var27,Var28) Then
K = -1;
if CrossUp(Var28,Var29) Then
W = 1; //60-240 cross
if CrossDown(Var28,Var29) Then
W = -1;
if CrossUp(Var26,Var28) Then
N = 1; //5-60 cross
if CrossDown(Var26,Var28) Then
N = -1;
if Var26 > var26[1] Then
X = 1;
if Var26 < var26[1] Then
X = -1;
if Var27 > var27[1] Then // U : 5-20 Cross X : 5선
Y = 1; // K : 20-60 Cross Y : 20선
if Var27 < var27[1] Then // W : 60-240 cross Z : 60선
Y = -1; // N : 5-60 cross
if Var28 > var28[1] Then
Z = 1;
if Var28 < var28[1] Then
Z = -1;
If MarketPosition <= 0 and
W == 1 and C > O and Y == 1 and Y != Y[1] Then
Buy("콜");
if MarketPosition == 1 Then
{
if U == 1 and CountIf(U == -1,BarsSinceEntry) == 0 and
X == -1 and X != X[1] and CountIf(X == -1 and X != X[1],BarsSinceEntry) == 3 Then
ExitLong("콜청산");
if Y == -1 and C < O and (C+O) <= var27 Then
ExitLong("콜정산");
}
if MarketPosition >= 0 and
W == -1 and C < O and Y == -1 and Y != Y[1] Then
Sell("풋");
if MarketPosition == -1 Then
{
if U == -1 and CountIf(U == 1,BarsSinceEntry) == 0 and
X == 1 and X != X[1] and CountIf(X == 1 and X != X[1],BarsSinceEntry) == 3 Then
ExitShort("풋청산");
if Y == 1 and C > O and (C+O)/2 >= Var27 Then
ExitShort("풋정산");
}
SetStopEndofday(153000);
안녕하세요
예스스탁입니다.
var : X(0),Y(0),Z(0);
var1 = ma(C,20);
var2 = ma(C,60);
Var3 = ma(C,240);
if CrossUp(Var2,Var3) Then
X = 1;
if CrossDown(Var2,Var3) Then
X = -1;
if Var1 > var1[1] Then
Y = 1;
if Var1 < var1[1] Then
Y = -1;
if Var2 > var2[1] Then
Z = 1;
if Var2 < var2[1] Then
Z = -1;
if MarketPosition <= 0 and X == 1 and C > O and Y == 1 and Y != Y[1] Then
Buy();
if MarketPosition == 1 Then
{
if X == 1 and CountIf(X== -1,BarsSinceEntry) == 0 and
Z == -1 and Z != Z[1] and CountIf(Z == -1 and Z != Z[1],BarsSinceEntry) == 3 Then
ExitLong();
if var1 < Var2 and Y == -1 and Y != Y[1] Then
ExitLong();
}
if MarketPosition >= 0 and X == -1 and C < O and Y == -1 and Y != Y[1] Then
Sell();
if MarketPosition == -1 Then
{
if X == -1 and CountIf(X== 1,BarsSinceEntry) == 0 and
Z == 1 and Z != Z[1] and CountIf(Z == 1 and Z != Z[1],BarsSinceEntry) == 3 Then
ExitShort();
if var1 > Var2 and Y == 1 and Y != Y[1] Then
ExitShort();
}
SetStopEndofday(153000);
즐거운 하루되세요
> 중추신경 님이 쓴 글입니다.
> 제목 : 시스템식 문의
> 매수조건 : 장시작이후, 장마감이전
60선과 240선이 정배열이 된 직후로부터
20선의 기울기가 음에서 양으로 바뀌는 양봉에서 진입
(60과 240이 정배열이 됐더라도 20선이 변곡없이 그대로 양으로 상승이라면
진입하지 않고, 기다렸다가 반드시 기울기가 음에서 양으로 바뀌면 진입)
매수청산 : 장마감 or
60과 240선이 정배열된 이후 60선이 5파에서 기울기가 음으로 바뀌는 음봉
(즉, 정배열이후 60선의 기울기가 음으로 바뀌는 3번째 지점)
or 60선 아래에서 20선이 기울기가 양에서 음으로 바뀌는 음봉에서
(반드시, 60선 아래에서 20선이 60선과 Cross가 난이후
20선이 양에서 음으로 바뀌는 음봉에서)
매도 조건이 매수와 반대입니다.
중요포인트는 60과 240이 Cross난 이후, 20선의 기울이가 변곡이 나오는구간입니다
그리고 파동을 count 할수 있을지가 의문이네요..
매수시점이 다시보면 20선이 240선을 Crossup해서 꺽이고 난뒤 240선 위에서 다시 변곡이 나오는 3파동째가 진입구간입니다
항상 감사드립니다